JP7386137B2 - Information processing system, information processing program, information processing method, and information processing device - Google Patents
Information processing system, information processing program, information processing method, and information processing device Download PDFInfo
- Publication number
- JP7386137B2 JP7386137B2 JP2020116256A JP2020116256A JP7386137B2 JP 7386137 B2 JP7386137 B2 JP 7386137B2 JP 2020116256 A JP2020116256 A JP 2020116256A JP 2020116256 A JP2020116256 A JP 2020116256A JP 7386137 B2 JP7386137 B2 JP 7386137B2
- Authority
- JP
- Japan
- Prior art keywords
- vibration
- variable
- model
- information
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 64
- 238000003672 processing method Methods 0.000 title claims description 5
- 230000006870 function Effects 0.000 claims description 202
- 238000003860 storage Methods 0.000 claims description 53
- 238000000034 method Methods 0.000 claims description 50
- 230000008859 change Effects 0.000 claims description 39
- 230000002123 temporal effect Effects 0.000 claims description 18
- 238000004891 communication Methods 0.000 description 57
- 238000012545 processing Methods 0.000 description 39
- 230000008569 process Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 36
- 238000006049 ring expansion reaction Methods 0.000 description 23
- 230000004048 modification Effects 0.000 description 22
- 238000012986 modification Methods 0.000 description 22
- 238000001514 detection method Methods 0.000 description 16
- 230000007423 decrease Effects 0.000 description 14
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical group C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 12
- 230000004044 response Effects 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 2
- 239000011151 fibre-reinforced plastic Substances 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 210000001015 abdomen Anatomy 0.000 description 1
- 210000003489 abdominal muscle Anatomy 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 210000002414 leg Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000011347 resin Substances 0.000 description 1
- 229920005989 resin Polymers 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Description
本発明は、振動子の振動を制御する情報処理システム、情報処理プログラム、情報処理方法、および、情報処理装置に関する。 The present invention relates to an information processing system, an information processing program, an information processing method, and an information processing apparatus that control vibration of a vibrator.
従来、装置が備える振動子の振動を制御することが行われている(例えば、特許文献1参照)。 Conventionally, the vibration of a vibrator included in an apparatus has been controlled (for example, see Patent Document 1).
多様な振動パターンで振動子を振動させる場合、振動子を備える装置は、多数の振動パターンを記憶しておかなければならず、振動子の制御に用いられるデータ量が増加するおそれがあった。 When vibrating a vibrator with various vibration patterns, a device including the vibrator must store a large number of vibration patterns, which may increase the amount of data used to control the vibrator.
それ故、本発明の目的は、振動子の制御に用いられるデータ量を少なくすることが可能な情報処理システム、情報処理プログラム、情報処理方法、および、情報処理装置を提供することである。 Therefore, an object of the present invention is to provide an information processing system, an information processing program, an information processing method, and an information processing apparatus that can reduce the amount of data used to control a vibrator.
上記の課題を解決すべく、本発明は、以下の(1)~(13)の構成を採用した。 In order to solve the above problems, the present invention employs the following configurations (1) to (13).
(1)
本発明の一例は、振動子を備える情報処理システムである。情報処理システムは、関数記憶部と、変数決定部と、生成部と、振動制御部とを備える。関数記憶部は、振動の周波数に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数を示す周波数変数と、当該期間に関する期間変数とを変数とする周波数モデル関数を記憶する。変数決定部は、周波数変数の値と、期間変数の値とを決定する。生成部は、決定された周波数変数の値と、決定された期間変数の値とを周波数モデル関数に適用することによって得られる周波数の時間変化によって規定される振動パターンを示す振動情報を生成する。振動制御部は、振動情報に基づいて振動子の振動を制御する。
(1)
An example of the present invention is an information processing system including a vibrator. The information processing system includes a function storage section, a variable determination section, a generation section, and a vibration control section. The function storage unit stores a frequency model function that represents a model of a temporal change in frequency of vibration, and has as variables a frequency variable that represents a frequency of a certain period in the model, and a period variable related to the period. The variable determination unit determines the value of the frequency variable and the value of the period variable. The generation unit generates vibration information indicating a vibration pattern defined by a temporal change in frequency obtained by applying the determined value of the frequency variable and the determined value of the period variable to a frequency model function. The vibration control unit controls the vibration of the vibrator based on the vibration information.
上記(1)の構成によれば、周波数モデル関数を記憶しておき、周波数モデル関数に基づいて振動情報を生成することによって、振動子の制御に用いられるデータ量を少なくすることができる。 According to configuration (1) above, by storing the frequency model function and generating vibration information based on the frequency model function, it is possible to reduce the amount of data used to control the vibrator.
(2)
関数記憶部は、互いに異なる周波数の時間変化のモデルを示す複数種類の周波数モデル関数を記憶してもよい。変数決定部は、複数種類の周波数モデル関数のうち1つを指定する関数指定情報をさらに決定してもよい。生成部は、決定された周波数変数の値と、決定された期間変数の値とを、決定された関数指定情報により指定される周波数モデル関数に適用することによって得られる周波数の時間変化によって規定される振動パターンを示す振動情報を生成してもよい。
(2)
The function storage unit may store a plurality of types of frequency model functions representing models of temporal changes in frequencies that are different from each other. The variable determination unit may further determine function designation information that designates one of the plurality of types of frequency model functions. The generation unit is defined by a time change in frequency obtained by applying the determined value of the frequency variable and the determined value of the period variable to the frequency model function specified by the determined function specification information. Vibration information indicating a vibration pattern may be generated.
上記(2)の構成によれば、複数の周波数モデル関数を用いることによって、振動子の制御に用いられるデータ量を抑えつつ、多様な振動パターンで振動子を振動させることができる。 According to the configuration (2) above, by using a plurality of frequency model functions, the vibrator can be vibrated in various vibration patterns while suppressing the amount of data used to control the vibrator.
(3)
期間変数は、周波数モデル関数が示す時間変化のモデルの開始時点から振動が開始されるまでの時間を示す開始変数を含んでもよい。
(3)
The period variable may include a start variable that indicates the time from the start of the time-varying model represented by the frequency model function until the vibration begins.
上記(3)の構成によれば、振動パターンにおいて振動が開始される時点を調節することができる。上記(3)の構成を後述する(7)の構成と組み合わせる場合には、複数の振動パターンにおける振動の開始時点の間隔を容易に調整することができる。 According to the configuration (3) above, it is possible to adjust the point in time when vibration starts in the vibration pattern. When the configuration (3) above is combined with the configuration (7) described later, it is possible to easily adjust the intervals between vibration start points in a plurality of vibration patterns.
(4)
周波数モデル関数は、期間変数の値が当該周波数モデル関数に適用されることによって振動パターンの時間長さが決定される関数であってもよい。
(4)
The frequency model function may be a function in which the time length of the vibration pattern is determined by applying the value of a period variable to the frequency model function.
上記(4)の構成によれば、記憶装置の容量によらず、時間が長い振動パターンを生成することができる。 According to the configuration (4) above, a long vibration pattern can be generated regardless of the capacity of the storage device.
(5)
関数記憶部は、振動の振幅に関する時間変化のモデルを示し、振動の振幅を示す振幅変数を変数とする振幅モデル関数をさらに記憶してもよい。変数決定部は、振幅変数の値をさらに決定してもよい。生成部は、決定された周波数変数の値と、決定された期間変数の値とを周波数モデル関数に適用することによって得られる周波数の時間変化と、決定された振幅変数の値を振幅モデル関数に適用することによって得られる振幅の時間変化とによって規定される振動パターンを示す振動情報を生成してもよい。
(5)
The function storage unit may further store an amplitude model function that represents a model of temporal change regarding the amplitude of vibration, and has an amplitude variable representing the amplitude of vibration as a variable. The variable determination unit may further determine the value of the amplitude variable. The generation unit generates a time change in frequency obtained by applying the determined frequency variable value and the determined period variable value to the frequency model function, and the determined amplitude variable value to the amplitude model function. Vibration information indicating a vibration pattern defined by a temporal change in amplitude obtained by applying the vibration information may be generated.
上記(5)の構成によれば、周波数に加えて、振幅が異なる振動パターンを関数によって規定することができ、より多様な振動パターンで振動子を振動させることができる。 According to the configuration (5) above, vibration patterns having different amplitudes in addition to frequencies can be defined by functions, and the vibrator can be vibrated with more diverse vibration patterns.
(6)
振幅変数は、振動の振幅に関する時間変化のモデルにおける終了時点の振幅を示す終了振幅変数を含んでもよい。
(6)
The amplitude variables may include an ending amplitude variable that indicates the amplitude at the end of the time-varying model for the amplitude of the vibration.
上記(6)の構成によれば、2つの連続する振動パターンにおいて振動が連続するように振動パターンを規定することができ、生成可能な振動パターンのバリエーションを増やすことができる。 According to the configuration (6) above, the vibration patterns can be defined so that the vibrations are continuous in two consecutive vibration patterns, and the variations of vibration patterns that can be generated can be increased.
(7)
変数決定部は、周波数変数の値と期間変数の値との組を複数組決定してもよい。
生成部は、決定された複数組の周波数変数の値と期間変数の値との組に基づく複数の振動パターンのうち、振動が生じる期間が互いに重複しない複数の振動パターンを統合することによって得られる1つの振動パターンを示す振動情報を生成してもよい。
(7)
The variable determination unit may determine a plurality of sets of frequency variable values and period variable values.
The generation unit obtains vibration patterns by integrating a plurality of vibration patterns whose periods of vibration do not overlap each other, among a plurality of vibration patterns based on the plurality of determined sets of frequency variable values and period variable values. Vibration information indicating one vibration pattern may be generated.
上記(7)の構成によれば、振動パターンを統合する計算処理を容易に行うことができる。 According to the configuration (7) above, calculation processing for integrating vibration patterns can be easily performed.
(8)
振動子は、2以上である第1所定数の振動情報にそれぞれ対応する各振動波形を合成した波形で振動可能であってもよい。変数決定部は、周波数変数の値と期間変数の値との組を、第1所定数より大きい第2所定数決定してもよい。生成部は、決定された組に基づく第2所定数の振動パターンのうち2以上の振動パターンを統合して1つの振動パターンとすることによって、合わせて第1所定数の振動パターンを示す第1所定数の振動情報を生成してもよい。
(8)
The vibrator may be able to vibrate with a waveform that is a combination of vibration waveforms respectively corresponding to the first predetermined number of vibration information, which is two or more. The variable determining unit may determine a second predetermined number of sets of the frequency variable value and the period variable value, which is larger than the first predetermined number. The generation unit is configured to integrate two or more vibration patterns of the second predetermined number of vibration patterns based on the determined set into one vibration pattern, thereby generating a first vibration pattern that collectively shows the first predetermined number of vibration patterns. A predetermined number of vibration information may be generated.
上記(8)の構成によれば、変数決定部により決定された変数の組に応じて規定される振動パターンの数によらず、振動子が対応可能な数(すなわち、第1所定数)の振動情報を生成することができる。 According to the configuration (8) above, regardless of the number of vibration patterns defined according to the set of variables determined by the variable determination section, the number of vibration patterns that can be handled by the vibrator (i.e., the first predetermined number) is Vibration information can be generated.
(9)
周波数モデル関数は、繰り返し変数をさらに変数としてもよい。変数決定部は、繰り返し変数の値をさらに決定してもよい。生成部は、決定された周波数変数の値と、決定された期間変数の値とを当該周波数モデル関数に適用することによって得られる周波数の時間変化によって規定される振動パターンを、決定された繰り返し変数が示す回数だけ繰り返すことによって得られる繰り返し振動パターンを示す振動情報を生成してもよい。
(9)
The frequency model function may further include a repeating variable. The variable determining unit may further determine the value of the repeating variable. The generation unit generates a vibration pattern defined by a time change in frequency obtained by applying the value of the determined frequency variable and the value of the determined period variable to the frequency model function using the determined repetition variable. Vibration information indicating a repeated vibration pattern obtained by repeating the number of times indicated by may be generated.
上記(9)の構成によれば、ある態様の振動が繰り返されるような振動パターンをより少ないデータ量で生成することができる。 According to the configuration (9) above, a vibration pattern in which a certain type of vibration is repeated can be generated with a smaller amount of data.
(10)
情報処理システムは、振動子を備える第1装置と、当該第1装置と通信を行う第2装置とを含んでもよい。第2装置は、関数記憶部と、変数決定部と、生成部と、振動情報を第1装置へ送信する送信部とを備えてもよい。第1装置は、第2装置から振動情報を受信する受信部と、受信部によって受信された振動情報に基づいて振動子の振動を制御する振動制御部とを備えてもよい。
(10)
The information processing system may include a first device including a vibrator and a second device communicating with the first device. The second device may include a function storage section, a variable determination section, a generation section, and a transmission section that transmits vibration information to the first device. The first device may include a receiving section that receives vibration information from the second device, and a vibration control section that controls vibration of the vibrator based on the vibration information received by the receiving section.
上記(10)の構成によれば、第2装置における、振動子の制御に用いられるデータ量を少なくすることができる。 According to the configuration (10) above, the amount of data used to control the vibrator in the second device can be reduced.
(11)
情報処理システムは、振動子を備える第1装置と、当該第1装置と無線通信を行う第2装置とを含んでもよい。第2装置は、変数決定部と、決定された周波数変数の値および期間変数の値を第1装置へ送信する送信部とを備えてもよい。第1装置は、受信部と、生成部と、振動制御部とを備えてもよい。受信部は、第2装置から周波数変数の値および期間変数の値を受信する。生成部は、受信部によって受信された周波数変数の値および期間変数の値に基づいて振動情報を生成する。
(11)
The information processing system may include a first device including a vibrator, and a second device that wirelessly communicates with the first device. The second device may include a variable determining unit and a transmitting unit that transmits the determined values of the frequency variable and the determined period variable to the first device. The first device may include a receiving section, a generating section, and a vibration control section. The receiving unit receives the value of the frequency variable and the value of the period variable from the second device. The generation unit generates vibration information based on the value of the frequency variable and the value of the period variable received by the reception unit.
上記(11)の構成によれば、変数を示す情報が第2装置から第1装置へ送信されるので、装置間の通信量および通信の頻度の少なくとも一方を低減することができる。 According to configuration (11) above, since the information indicating the variable is transmitted from the second device to the first device, it is possible to reduce at least one of the amount of communication between the devices and the frequency of communication.
(12)
第1装置および第2装置は、第1モードと第2モードとを含む複数のモードで動作することが可能であってもよい。第1モードにおいて、第2装置の送信部は、変数決定部によって決定された周波数変数の値および期間変数の値を第1装置へ送信し、第1装置は、受信部によって受信された周波数変数の値および期間変数の値に基づいて生成部によって生成される振動情報に基づいて振動子の振動を制御する。第2モードにおいて、第2装置は、所定の振動パターンを示す振動情報を第1装置へ送信し、第1装置は、第2装置から送信されてくる振動情報に基づいて振動子の振動を制御する。
(12)
The first device and the second device may be capable of operating in multiple modes, including a first mode and a second mode. In the first mode, the transmitting unit of the second device transmits the value of the frequency variable and the value of the period variable determined by the variable determining unit to the first device, and the first device transmits the value of the frequency variable determined by the variable determining unit The vibration of the vibrator is controlled based on the vibration information generated by the generation unit based on the value of and the value of the period variable. In the second mode, the second device transmits vibration information indicating a predetermined vibration pattern to the first device, and the first device controls the vibration of the vibrator based on the vibration information transmitted from the second device. do.
上記(12)の構成によれば、関数を用いることによって、振動子の制御に用いられるデータ量を少なくすることができるとともに、関数から生成することができない振動パターンによっても振動子を振動させることができる。 According to the configuration (12) above, by using the function, the amount of data used to control the vibrator can be reduced, and the vibrator can also be vibrated with a vibration pattern that cannot be generated from the function. I can do it.
(13)
第1装置は、返信部をさらに備えてもよい。返信部は、周波数変数の値および期間変数の値が第2装置から受信されたことに応じて、当該第2装置へ返信を行う。送信部は、周波数変数の値および期間変数の値の送信に対する第1装置からの返信が送信から所定時間以内にない場合、当該周波数変数の値および当該期間変数の値を当該第1装置へ再送信してもよい。
(13)
The first device may further include a reply unit. The reply unit sends a reply to the second device in response to receiving the value of the frequency variable and the value of the period variable from the second device. If there is no reply from the first device to the transmission of the value of the frequency variable and the value of the period variable within a predetermined period of time after transmission, the transmitting unit transmits the value of the frequency variable and the value of the period variable to the first device. You can also send it.
上記(13)の構成によれば、第1装置と第2装置との間で無線通信を行う場合において、振動子を振動させることができる可能性を向上することができる。 According to the configuration (13) above, when performing wireless communication between the first device and the second device, it is possible to improve the possibility of vibrating the vibrator.
本発明の他の一例は、上記(1)~(13)における情報処理システムが備える各部のうちいくつか(例えば、変数決定部および生成部)における処理を、情報処理装置のコンピュータに実行させる情報処理プログラムであってもよい。また、本発明の他の一例は、上記(1)~(13)における情報処理システムにおいて実行される情報処理方法であってもよい。また、本発明の他の一例は、上記(1)~(13)における関数記憶部と、生成部と、振動制御部とを備える情報処理装置であって、当該情報処理装置とは異なる他の装置から、周波数変数の値と、期間変数の値とを受信する受信部を備える情報処理装置であってもよい。また、本発明の他の一例は、周波数変数の値と期間変数の値とを上記情報処理装置へ送信する他の情報処理装置であってもよい。 Another example of the present invention provides information that causes a computer of an information processing device to execute processing in some of the units (for example, a variable determination unit and a generation unit) included in the information processing system in (1) to (13) above. It may also be a processing program. Further, another example of the present invention may be an information processing method executed in the information processing system according to (1) to (13) above. Further, another example of the present invention is an information processing device including the function storage unit, the generation unit, and the vibration control unit according to (1) to (13) above, which is an information processing device that is different from the information processing device. The information processing device may include a receiving unit that receives the value of the frequency variable and the value of the period variable from the device. Further, another example of the present invention may be another information processing device that transmits the value of a frequency variable and the value of a period variable to the information processing device.
本発明によれば、振動子の制御に用いられるデータ量を少なくすることができる。 According to the present invention, the amount of data used to control the vibrator can be reduced.
[1.ゲームシステムの構成]
以下、本実施形態の一例に係るゲームシステムについて説明する。図1は、ゲームシステムに含まれる各装置の一例を示す図である。図1に示すように、ゲームシステム1は、本体装置2と、左コントローラ3および右コントローラ4と、リング型拡張装置5とを含む。
[1. Game system configuration]
A game system according to an example of this embodiment will be described below. FIG. 1 is a diagram showing an example of each device included in the game system. As shown in FIG. 1, the
本体装置2は、情報処理装置の一例であり、本実施形態ではゲーム機本体として機能する。本体装置2には、左コントローラ3および右コントローラ4がそれぞれ着脱可能である(図1および図3参照)。つまり、ユーザは、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として使用することができる(図2参照)。また、ユーザは、本体装置2と左コントローラ3および右コントローラ4とを別体として使用することもできる(図3参照)。なお、以下においては、本体装置2と各コントローラ3および4とをまとめて、「ゲーム装置」と呼ぶことがある。
The
リング型拡張装置5は、右コントローラ4に用いられる拡張装置の一例である。リング型拡張装置5は、右コントローラ4をリング型拡張装置5に装着した状態で使用される。このように、本実施形態においては、ユーザは、右コントローラ4をリング型拡張装置5に装着した状態で使用することもできる(図10参照)。なお、リング型拡張装置5は、右コントローラ4に限らず、左コントローラ3を自身に装着することが可能であってもよい。
The ring
[1-1.ゲーム装置の構成]
図2は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図2に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
[1-1. Game device configuration]
FIG. 2 is a diagram showing an example of a state in which the
図3は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図2および図3に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
FIG. 3 is a diagram showing an example of a state in which the
図4は、本体装置2の一例を示す六面図である。図4に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
FIG. 4 is a six-sided view showing an example of the
図4に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。なお、本体装置2は画像を外部モニタに出力することもできる。
As shown in FIG. 4, the
本体装置2は、ハウジング11の内部においてスピーカを備えている。図4に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカの出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
The
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
The
図4に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
As shown in FIG. 4, the
図5は、右コントローラ4の一例を示す六面図である。図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向(すなわち、図5に示すy軸方向)に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
FIG. 5 is a six-sided view showing an example of the
右コントローラ4は、方向入力部としてアナログスティック52を備える。図5に示すように、アナログスティック52は、ハウジング51の主面に設けられる。ユーザは、アナログスティック52を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。また、右コントローラ4は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック52を押下する入力が可能である。
The
また、右コントローラ4は、各種操作ボタンを備える。右コントローラ4は、ハウジング51の主面上に4つの操作ボタン53~56(具体的には、Aボタン53、Bボタン54、Xボタン55、およびYボタン56)を備える。さらに、右コントローラ4は、+(プラス)ボタン57およびホームボタン58を備える。また、右コントローラ4は、ハウジング51の側面の右上に第1Rボタン60およびZRボタン61を備える。また、右コントローラ4は、ハウジング51の側面の、本体装置2に装着される際に装着される側の面に第2Lボタン65および第2Rボタン66を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
The
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
The
図5に示すように、右コントローラ4は、通知用LED67を備える。通知用LED67は、ユーザに対して所定の情報を通知するための通知部である。通知用LED67は、上記スライダ62に設けられ、具体的には、スライダ62の装着面(すなわち、図5に示すx軸正方向側を向く面)に設けられる。本実施形態においては、右コントローラ4は、通知用LED67として、4つのLEDを備える。上記所定の情報は、例えば、本体装置2によって右コントローラ4に対して付された番号や、右コントローラ4の電池残量に関する情報である。
As shown in FIG. 5, the
なお、左コントローラ3は、右コントローラ4と同様、アナログスティックおよび複数の操作ボタンを備える。また、左コントローラ3は、右コントローラ4と同様、本体装置2と有線通信を行うための端子を備える。
Note that, like the
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図4に示す構成の他、図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
FIG. 6 is a block diagram showing an example of the internal configuration of the
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
The
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
The
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
The
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
The
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
The
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
Further, the
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図6で示しているため図7では省略している。
FIG. 7 is a block diagram showing an example of the internal configuration of the
右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。図7に示すように、通信制御部111は、端子64を含む各構成要素に接続される。本実施形態においては、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部111は、右コントローラ4が本体装置2に対して行う通信方法を制御する。すなわち、右コントローラ4が本体装置2に装着されている場合、通信制御部111は、端子64を介して本体装置2と通信を行う。また、右コントローラ4が本体装置2から外されている場合、通信制御部111は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と通信制御部111との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
The
また、右コントローラ4は、例えばフラッシュメモリ等のメモリ112を備える。通信制御部111は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ112に記憶されるファームウェアを実行することによって各種の処理を実行する。
The
右コントローラ4は、各ボタン113(具体的には、ボタン53~58、60、61、65、および66)を備える。また、右コントローラ4は、アナログスティック(図7では「スティック」と記載する)52を備える。各ボタン113およびアナログスティック52は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部111へ出力する。
The
通信制御部111は、各入力部(具体的には、各ボタン113、および、アナログスティック52)から、入力に関する情報(具体的には、操作に関する情報)を取得する。通信制御部111は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
The communication control unit 111 acquires information regarding input (specifically, information regarding operation) from each input unit (specifically, each
上記操作データが本体装置2へ送信されることによって、本体装置2は、右コントローラ4に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン113およびアナログスティック52に対する操作を、操作データに基づいて判別することができる。
By transmitting the above operation data to the
右コントローラ4は、振動によってユーザに通知を行うための振動子117を備える。本実施形態においては、振動子117は、本体装置2からの指令によって制御される。すなわち、通信制御部111は、本体装置2からの上記指令を受け取ると、当該指令に従って振動子117を駆動させる。ここで、右コントローラ4は、コーデック部116を備える。通信制御部111は、上記指令を受け取ると、指令に応じた制御信号をコーデック部116へ出力する。コーデック部116は、通信制御部111からの制御信号から振動子117を駆動させるための駆動信号を生成して振動子117へ与える。これによって振動子117が動作する。
The
振動子117は、より具体的にはリニア振動モータである。リニア振動モータは、回転運動をする通常のモータと異なり、入力される電圧に応じて所定方向に駆動されるため、入力される電圧の波形に応じた振幅および周波数で振動をさせることができる。本実施形態において、本体装置2から右コントローラ4に送信される振動制御信号は、単位時間ごとに周波数と振幅とを表すデジタル信号であってよい。別の実施形態においては、本体装置2から波形そのものを示す情報を送信するようにしてもよいが、振幅および周波数だけを送信することで通信データ量を削減することができる。また、さらにデータ量を削減するため、そのときの振幅および周波数の数値に替えて、前回の値からの差分だけを送信するようにしてもよい。この場合、コーデック部116は、通信制御部111から取得される振幅および周波数の値を示すデジタル信号をアナログの電圧の波形に変換し、当該波形に合わせて電圧を入力することで振動子117を駆動させる。したがって、本体装置2は、単位時間ごとに送信する振幅および周波数を変えることによって、そのときに振動子117を振動させる振幅および周波数を制御することができる。なお、本体装置2から右コントローラ4に送信される振幅および周波数は、1つに限らず、2つ以上送信するようにしてもよい。その場合、コーデック部116は、受信された複数の振幅および周波数それぞれが示す波形を合成することで、振動子117を制御する電圧の波形を生成することができる。
More specifically, the
右コントローラ4は、電力供給部118を備える。本実施形態において、電力供給部118は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、右コントローラ4の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
The
なお、図示しないが、左コントローラ3は、図7に示す右コントローラ4の各構成と同様の構成を備える。
Although not shown, the
[1-2.リング型拡張装置の構成]
図8は、リング型拡張装置の一例を示す図である。なお、図8は、右コントローラ4が装着された状態のリング型拡張装置5を示している。本実施形態においては、リング型拡張装置5は、右コントローラ4を装着可能な拡張装置である。詳細は後述するが、本実施形態においては、ユーザは、リング型拡張装置5に力を加えて変形させるという新規な操作を行う。ユーザは、例えばエクササイズを行う感覚でリング型拡張装置5を用いたフィットネス動作を行うことによって、リング型拡張装置5に対する操作を行うことができる。
[1-2. Configuration of ring type expansion device]
FIG. 8 is a diagram showing an example of a ring-type expansion device. Note that FIG. 8 shows the ring-
図8に示すように、リング型拡張装置5は、環状部201と、本体部202とを備える。環状部201は、環状の形状を有する。なお、本実施形態においては、環状部201は、後述する弾性部材および台座部によって環状に形成される。本実施形態においては、環状部201は円環状である。なお、他の実施形態においては、環状部201の形状は任意であり、例えば楕円環状であってもよい。
As shown in FIG. 8, the ring-
本体部202は、環状部201に設けられる。本体部202は、図示しないレール部を有する。レール部は、右コントローラ4を装着可能な装着部の一例である。本実施形態においては、レール部は、右コントローラ4のスライダ62(図5参照)に対してスライド可能に係合する。スライダ62がレール部材に対して所定の直線方向(すなわち、スライド方向)に挿入されることで、レール部材に対してスライダ62が当該直線方向にスライド移動が可能な状態でレール部材がスライダ62と係合する。なお、レール部は、コントローラのスライダに対してスライド可能に係合することが可能である点で、本体装置2が有するレール部と同様である。そのため、レール部は、本体装置2が有するレール部と同様の構成であってもよい。
The
本実施形態においては、右コントローラ4は、係止部63を有する(図5参照)。係止部63は、スライダ62から側方(すなわち、図5に示すz軸正方向)に突出して設けられる。係止部63は、スライダ62の内部の方向へ移動可能であるとともに、上記側方へ突出した状態となる向きに(例えばバネによって)付勢されている。また、レール部には、切欠きが設けられる。スライダ62がレール部の奥まで挿入された状態において、係止部63は切欠きに係止する。レール部にスライダ62が係合した状態で係止部63が切欠きに係止することによって、本体部202に右コントローラ4が装着される。
In this embodiment, the
なお、右コントローラ4は、押下可能な解除ボタン69を備える(図5参照)。上記係止部63は、解除ボタン69が押下されることに応じて、スライダ62の内部の方向へ移動し、スライダ62に対して突出しない(あるいは、ほとんど突出しない)状態となる。したがって、リング型拡張装置5の本体部202に右コントローラ4が装着された状態において、解除ボタン69が押下されると、係止部63は切欠きに係止しなくなる(あるいは、ほとんど係止しなくなる)。以上より、リング型拡張装置5の本体部202に右コントローラ4が装着される状態において、ユーザは、解除ボタン69を押下することによって右コントローラ4をリング型拡張装置5から容易に取り外すことができる。
Note that the
図8に示すように、リング型拡張装置5は、グリップカバー203および204を有する。グリップカバー203および204は、ユーザが把持するための部品である。本実施形態においては、グリップカバー203および204を設けることによって、ユーザはリング型拡張装置5を把持しやすくなっている。本実施形態においては、環状部201の左端付近の部分に左グリップカバー203が設けられ、環状部201の右端付近の部分に右グリップカバー204が設けられる。
As shown in FIG. 8, the ring-
図9は、リング型拡張装置5が備える構成要素の電気的な接続関係を示すブロック図である。図9に示すように、リング型拡張装置5は、歪み検出部211を備える。歪み検出部211は、環状部201が変形したことを検出する検出部の一例である。本実施形態においては、歪み検出部211は、歪みゲージを含む。歪み検出部211は、後述する弾性部材の変形に応じた台座部の歪みを示す信号(換言すれば、弾性部材の変形の大きさおよび変形の向きを示す信号)を出力する。
FIG. 9 is a block diagram showing the electrical connection relationship of the components included in the
ここで、本実施形態においては、環状部201は、弾性変形可能な弾性部と、台座部とを有する。台座部は、当該台座部と弾性部材とによって環が形成されるように当該弾性部材の両端部を保持する。なお、台座部は、本体部202の内部に設けられるので、図8において図示されていない。台座部は、弾性部材よりも剛性が高い材質で構成される。例えば、弾性部材は、樹脂(具体的には、FRP(Fiber Reinforced Plastics))で構成され、台座部は、金属で構成される。上記歪みゲージは、台座部に設けられ、当該台座部の歪みを検出する。環状部201が定常状態から変形した場合、変形によって台座部に歪みが生じるので、歪みゲージによって台座部の歪みが検出される。検出された歪みに基づいて、環状部201が変形する向き(すなわち、2つのグリップカバー203および204が近づく向き、または、離れる向き)と、変形量とを算出することができる。
In this embodiment, the
なお、他の実施形態においては、歪み検出部211は、歪みゲージに代えて、環状部201が定常状態から変形したことを検出可能な任意のセンサを含んでもよい。例えば、検出部211は、環状部201が変形した場合に加わる圧力を検出する感圧センサを含んでもよいし、環状部201が曲げられた量を検出する曲げセンサを含んでもよい。
Note that in other embodiments, the strain detection unit 211 may include any sensor capable of detecting that the
リング型拡張装置5は、信号変換部212を備える。本実施形態においては、信号変換部212は、アンプと、ADコンバータとを含む。信号変換部212は、歪み検出部211に電気的に接続され、歪み検出部211の出力信号をアンプによって増幅し、ADコンバータによってAD変換を行う。信号変換部212は、歪み検出部211によって検出された歪み値を示すデジタル信号を出力する。なお、他の実施形態においては、信号変換部212はADコンバータを含まず、後述する制御部213がADコンバータを含んでいてもよい。
The
リング型拡張装置5は、制御部213を備える。制御部213は、プロセッサとメモリとを備える処理回路であり、例えばMCU(Micro Controller Unit)である。制御部213は、信号変換部212に電気的に接続され、信号変換部212の出力信号が制御部213に入力される。また、リング型拡張装置5は、端子214を備える。端子214は、制御部213に電気的に接続される。リング型拡張装置5に右コントローラ4が装着されている場合、制御部213は、信号変換部212の出力信号が示す歪み値を示す情報(換言すれば、後述するリング操作データ)を、端子214を介して右コントローラ4へ送信する。
The
リング型拡張装置5は、電力変換部215を備える。電力変換部215は、上記各部211~214に電気的に接続される。電力変換部215は、端子214を介して外部(すなわち、右コントローラ4)から供給される電力を、上記各部211~214に供給する。電力変換部215は、供給される電力について電圧等の調整を行って上記各部211~214に供給してもよい。
The
なお、リング型拡張装置5が他の装置へ送信する「歪み検出部の検出結果に関するデータ」は、当該検出結果(本実施形態においては、台座部の歪みを示す、歪み検出部211の出力信号)そのものを示すデータであってもよいし、当該検出結果に対して何らかの処理(例えば、データ形式の変換、および/または、歪み値に対する計算処理等)が行われることによって得られるデータであってもよい。例えば、制御部213は、上記検出結果である歪み値に基づいて弾性部材の変形量を算出する処理を行ってもよく、このとき、「歪み検出部の検出結果に関するデータ」は、当該変形量を示すデータであってもよい。
Note that "data related to the detection results of the distortion detection section" that the ring-shaped
なお、他の実施形態においては、リング型拡張装置5は、電池を備え、当該電池の電力によって動作してもよい。また、リング型拡張装置5が備える電池は、右コントローラ4から供給される電力によって充電可能な充電池であってもよい。
Note that in other embodiments, the ring-shaped
図10は、リング型拡張装置5をユーザが使用する様子の一例を示す図である。図10に示すように、ユーザは、ゲーム装置(すなわち、本体装置2ならびに各コントローラ3および4)に加えて、リング型拡張装置5を用いてゲームを行うことができる。
FIG. 10 is a diagram showing an example of how a user uses the ring-
例えば図10に示すように、ユーザは、右コントローラ4が装着されたリング型拡張装置5を両手で把持する。このとき、ユーザは、リング型拡張装置5に対する操作(例えば、リング型拡張装置5を変形させる操作、および、リング型拡張装置5を動かす操作)によって、ゲームを行うことができる。
For example, as shown in FIG. 10, the user grasps the ring-shaped
なお、図10においては、ユーザがグリップカバー203および204を把持してリング型拡張装置5を押し込むことで変形させる動作を行う様子を例示している。この動作によって、ユーザは、両腕を鍛えるフィットネス動作をゲーム操作として行うことができる。なお、ユーザはリング型拡張装置5に対する種々の動作でゲーム操作を行うことができる。例えば、ユーザは、一方のグリップカバーを両手で把持し、他方のグリップカバーを腹部に当てた状態で、リング型拡張装置5を変形させる動作を行うこともできる。この動作によって、ユーザは、腕と腹筋を鍛えるフィットネス動作をゲーム操作として行うことができる。また、ユーザは、両足の内股にグリップカバー203および204を当ててリング型拡張装置5を足で挟んだ状態で、リング型拡張装置5を変形させる動作を行うこともできる。この動作によって、ユーザは、足の筋肉を鍛えるフィットネス動作をゲーム操作として行うことができる。このように、本実施形態によれば、円環状であるリング型拡張装置5を用いることによって、ユーザは多くの種類のフィットネス動作を行うことができる。
Note that FIG. 10 illustrates an example in which the user grips the grip covers 203 and 204 and pushes the ring-shaped
[2.振動制御処理の概要]
次に、右コントローラ4の振動子117の振動を制御する処理について説明する。本実施形態においては、振動子117は、上述したように本体装置2からの指令によって制御される他、リング型拡張装置5からの指令(後述する振動情報)によっても制御される。以下、図11~図16を参照して、リング型拡張装置5が振動子117の振動を制御する処理について説明する。
[2. Overview of vibration control processing]
Next, a process for controlling the vibration of the
図11は、振動子117の振動制御に関するリング型拡張装置5および右コントローラ4の機能的構成を示すブロック図である。本実施形態においては、リング型拡張装置5が振動子117を振動させる処理については本体装置2は関連しない。ここで、本実施形態においては、右コントローラ4およびそれが装着されたリング型拡張装置5は、本体装置2とは独立して処理を実行する独立動作モードで動作することが可能である。独立動作モードにおいては、右コントローラ4は本体装置2と通信を行わずに動作する。本実施形態においては、リング型拡張装置5が振動子117を振動させる処理は、上記独立動作モードにおいて実行される。ただし、他の実施形態においては、リング型拡張装置5が振動子117を振動させる処理は、独立動作モードとは異なるモードにおいて実行されてもよく、右コントローラ4と本体装置2とが通信を行うモードにおいて実行されてもよい。
FIG. 11 is a block diagram showing the functional configuration of the
図11に示すように、リング型拡張装置5は、関数記憶部301と、変数決定部302と、生成部303とを備える。本実施形態においては、関数記憶部301は、制御部213のメモリによって実現される。変数決定部302および生成部303は制御部213によって実現される。また、図11に示すように、右コントローラ4は、上述の振動子117に加えて、振動制御部304を備える。本実施形態においては、振動制御部304は、通信制御部111およびコーデック部116によって実現される。
As shown in FIG. 11, the
関数記憶部301は、振動子117の振動パターンのモデル(以下、「振動モデル」と呼ぶ)を示す関数を記憶する。ここで、振動パターンとは、ある期間における、具体的な振幅値および/または周波数値の推移を指す便宜上の概念である(図15および図17参照)。また、振動モデルは、当該振動モデルに対して振幅および周波数の具体的な値が設定されることによって上記の振動パターンが規定されるものである。振動モデルは、期間、振幅、および/または、周波数の具体的な値は異なるが振幅および/または周波数の推移の傾向が共通する振動パターンを一般化したものを示す(図12および図13参照)。
The
図12は、本実施形態において用いられる第1の振動モデルの一例を示す図である。図12に示す第1の振動モデルは、開始時点から時間t1が経過するまでの期間は、振動を発生させず、時間t1が経過した時点から時間t2が経過するまでの期間は、振幅a1で、かつ、周波数f1で振動を行う振動パターンのモデルを示している。第1の振動モデルにおいて、振幅a1、時間t1、時間t2、および、周波数f1は、変数である。第1の振動モデルは、振動の振幅および周波数が上記のように推移する傾向を示すものであり、上記4つの変数に具体的な値を設定することによって、具体的な振動パターンが決定されることとなる。 FIG. 12 is a diagram showing an example of the first vibration model used in this embodiment. The first vibration model shown in FIG. 12 does not generate vibration during the period from the start point until time t1 has elapsed, and the amplitude a1 during the period from the time t1 elapsed until time t2 has elapsed. , and shows a model of a vibration pattern that vibrates at a frequency f1. In the first vibration model, amplitude a1, time t1, time t2, and frequency f1 are variables. The first vibration model shows a tendency for the amplitude and frequency of vibration to change as described above, and a specific vibration pattern is determined by setting specific values for the above four variables. That will happen.
第1の振動モデルは、周波数を示す変数と、振幅を示す変数とを含む。したがって、第1の振動モデルは、下記の式(1)および(2)のように、周波数の時間変化の関数F(t)と、振幅の時間変化の関数A(t)とによって表すことができる。
F(t)=0(0≦t<t1),F(t)=f1(t1≦t<t2)…(1)
A(t)=0(0≦t<t1),A(t)=a1(t1≦t<t2)…(2)
なお、本実施形態においては、振動が発生していない(すなわち、振幅が0である)状態における振動の周波数を「0」と表す。本実施形態においては、上記F(t)のように、振動モデルを示す関数であって、周波数の時間変化の関数を、周波数モデル関数と呼ぶ。周波数モデル関数は、振動モデルにおけるある期間の周波数を示す変数(以下、周波数変数と呼ぶ。ここでは、変数f1)と当該期間に関する変数(以下、期間変数と呼ぶ。ここでは、変数t1およびt2)とを変数とする関数である。なお、周波数変数は、関数の出力となる変数(すなわち、上記F(t))を決定する変数であって、関数の出力となる変数自体ではない。また、期間に関する変数とは、期間を特定可能な変数であり、例えば、期間の開始時点、終了時点、または、長さを示す変数を含む意味である。本実施形態においては、期間変数である変数t1およびt2は時間の長さを示す変数であったが、期間変数は、振動モデルにおけるある時点(すなわち、開始時点からの経過時間)を示す変数であってもよい。
The first vibration model includes a variable indicating frequency and a variable indicating amplitude. Therefore, the first vibration model can be expressed by a function F(t) of frequency change over time and a function A(t) of amplitude change over time, as shown in equations (1) and (2) below. can.
F(t)=0(0≦t<t1), F(t)=f1(t1≦t<t2)…(1)
A(t)=0(0≦t<t1), A(t)=a1(t1≦t<t2)…(2)
In this embodiment, the frequency of vibration in a state where no vibration occurs (that is, the amplitude is 0) is expressed as "0". In the present embodiment, a function representing a vibration model and a function of time change in frequency, such as F(t) above, is referred to as a frequency model function. The frequency model function includes a variable indicating the frequency of a certain period in the vibration model (hereinafter referred to as a frequency variable. Here, variable f1) and a variable related to the period (hereinafter referred to as a period variable. Here, variables t1 and t2). It is a function whose variables are . Note that the frequency variable is a variable that determines the variable that becomes the output of the function (ie, the above F(t)), and is not the variable itself that becomes the output of the function. Further, a variable related to a period is a variable that can specify a period, and includes, for example, a variable indicating the start point, end point, or length of a period. In this embodiment, the variables t1 and t2, which are period variables, are variables that indicate the length of time, but the period variables are variables that indicate a certain point in the vibration model (i.e., the elapsed time from the start point). There may be.
また、本実施形態においては、上記A(t)のように、振動モデルを示す関数であって、振幅の時間変化の関数を、振幅モデル関数と呼ぶ。振幅モデル関数は、振動モデルにおけるある時点の振幅を示す変数(以下、振幅変数と呼ぶ。ここでは、変数a1)と、上記期間変数とを変数とする関数である。なお、本実施形態においては、振幅モデル関数は、振幅変数と、振幅変数が示す振幅に対応する期間に関する期間変数(ここでは、変数t1およびt2)とを変数とする。ただし、他の実施形態においては、振幅モデル関数は、期間変数を変数としないものであってもよい。例えば、振幅モデル関数は、振動パターンにおける全期間における振幅を示す振幅変数のみを変数とする関数であってもよい。 Further, in this embodiment, a function representing a vibration model, such as A(t) described above, and a function of a time change in amplitude is called an amplitude model function. The amplitude model function is a function whose variables are a variable indicating the amplitude at a certain point in the vibration model (hereinafter referred to as an amplitude variable. Here, variable a1) and the period variable. In this embodiment, the amplitude model function uses an amplitude variable and a period variable (here, variables t1 and t2) regarding a period corresponding to the amplitude indicated by the amplitude variable as variables. However, in other embodiments, the amplitude model function may not include the period variable. For example, the amplitude model function may be a function in which only an amplitude variable indicating the amplitude during the entire period of the vibration pattern is used as a variable.
図13は、本実施形態において用いられる第2の振動モデルの一例を示す図である。図13に示す第2の振動モデルは、下記(a)~(c)のように振幅および周波数が推移する振動パターンのモデルを示している。
(a)開始時点から時間t4が経過するまでの期間は、振動を発生させない。
(b)時間t4が経過した時点から時間t5が経過するまでの期間は、一定の振幅a2で、かつ、周波数f2で振動を行う。
(c)時間t5が経過した時点から時間t6が経過するまでの期間は、振幅がa2から0まで減少し(具体的には、単位時間当たりの減少量が一定である減少態様で減少し)、かつ、周波数f2で振動を行う。
なお、時間t4,t5,およびt6と、周波数f2と、振幅a1とは、それぞれ変数である。第2の振動モデルは第1の振動モデルと同様、振動の振幅および周波数の推移する傾向を示すものであり、上記の変数に具体的な値を設定することによって、具体的な振動パターンが決定される。上記の第2の振動モデルについても第1の振動モデルと同様、周波数モデル関数と振幅モデル関数とによって示される。なお、第2の振動モデルによれば、例えば、変数t6を0にすることによって、第1の振動モデルと同様に、振幅が一定となる振動パターン(例えば、図17に示すパターンB-D)を規定することも可能であるし、変数t5を0にすることによって、振幅が減少していく振動パターン(例えば、図17に示すパターンA)を規定することも可能である。
FIG. 13 is a diagram showing an example of the second vibration model used in this embodiment. The second vibration model shown in FIG. 13 shows a model of a vibration pattern in which the amplitude and frequency change as shown in (a) to (c) below.
(a) No vibration is generated during the period from the start point until time t4 has elapsed.
(b) During the period from the time t4 elapses until the time t5 elapses, vibration is performed at a constant amplitude a2 and frequency f2.
(c) During the period from the time t5 passes until the time t6 passes, the amplitude decreases from a2 to 0 (specifically, the amplitude decreases in a decreasing manner in which the amount of decrease per unit time is constant) , and vibrates at frequency f2.
Note that the times t4, t5, and t6, the frequency f2, and the amplitude a1 are variables, respectively. Like the first vibration model, the second vibration model shows the tendency of vibration amplitude and frequency to change, and by setting specific values for the above variables, a specific vibration pattern is determined. be done. Like the first vibration model, the second vibration model described above is also represented by a frequency model function and an amplitude model function. Note that according to the second vibration model, for example, by setting the variable t6 to 0, a vibration pattern in which the amplitude is constant (for example, pattern BD shown in FIG. 17) is created like the first vibration model. It is also possible to define a vibration pattern in which the amplitude decreases (for example, pattern A shown in FIG. 17) by setting the variable t5 to 0.
本実施形態においては、関数記憶部301は、振動モデルを示す関数として、周波数モデル関数と振幅モデル関数とを記憶する。具体的には、本実施形態においては、上記第1および第2の振動モデルが用いられるものとし、関数記憶部301は、第1の振動モデルを示す周波数モデル関数および振幅モデル関数と、第2の振動モデルを示す周波数モデル関数および振幅モデル関数とを記憶する。
In this embodiment, the
上記のように、本実施形態においては、ゲームシステム1は、振動子117を振動させる振動パターンのモデル(すなわち、振動モデル)を記憶する。ここで、仮に、振動子117を振動させる振動波形自体を示すデータを記憶しておくこととすると、複数種類の振動パターンで振動子117を振動させる場合、ゲームシステム1は、振動パターン毎にデータを記憶しておかなければならず、振動パターンの種類の増加に応じてデータ量が増大してしまう。これに対して、本実施形態においては、ゲームシステム1は、振動モデルを記憶しておき、振動モデルを用いて振動波形を生成する(詳細は後述する)。これによれば、振動波形のデータを記憶しておく場合に比べて、ゲームシステム1におけるデータ量を低減することができる。
As described above, in this embodiment, the
なお、他の実施形態においては、振動モデルは、周波数モデル関数と振幅モデル関数とのうちいずれか一方で示されるものであってもよい。例えば、他の実施形態においては、第1の振動モデルにおける振幅a1が固定値であるとした振動モデルが用いられてもよい。この振動モデルは、振幅変数を含まないので、周波数モデル関数のみによって示されることができる。したがって、このような振動モデルについては、関数記憶部301は周波数モデル関数のみを記憶すればよい。また、関数記憶部301は、周波数変数を含まない振動モデルについては、振幅モデル関数のみを記憶すればよい。
Note that in other embodiments, the vibration model may be expressed as either a frequency model function or an amplitude model function. For example, in other embodiments, a vibration model in which the amplitude a1 in the first vibration model is a fixed value may be used. Since this vibration model does not include amplitude variables, it can only be described by a frequency model function. Therefore, for such a vibration model, the
また、ゲームシステム1において記憶される振動モデル(具体的には、周波数モデル関数および振幅モデル関数)の数は任意であり、関数記憶部301は、1つの振動モデルのみを記憶してもよいし、3つ以上の振動モデルを記憶してもよい。
Further, the number of vibration models (specifically, frequency model functions and amplitude model functions) stored in the
本実施形態においては、周波数モデル関数および振幅モデル関数は、期間変数が当該周波数モデル関数に適用されることによって振動パターンの時間長さが決定される関数である。例えば、第1の振動モデルについては、期間変数t1およびt2を決定することによって、振動パターンの時間長さは(t1+t2)に決定される。また、第2の振動モデルについては、期間変数t4~t6を決定することによって、振動パターンの時間長さは(t4+t5+t6)に決定される。ここで、振動子117を振動させる振動波形自体を示すデータを記憶しておく方法によれば、振動波形の時間が長くなるほどデータ量が大きくなるので、記憶装置の容量によっては、時間が長い振動波形を記憶することができなくなる可能性がある。これに対して、本実施形態においては、振動パターンの時間が長くなっても振動モデル(すなわち、周波数モデル関数および振幅モデル関数)のデータ量は実質的に変わらないので、ゲームシステム1は、記憶装置の容量によらず、時間が長い振動パターンを生成することができる。
In this embodiment, the frequency model function and the amplitude model function are functions in which the time length of the vibration pattern is determined by applying a period variable to the frequency model function. For example, for the first vibration model, by determining the period variables t1 and t2, the time length of the vibration pattern is determined to be (t1+t2). Furthermore, for the second vibration model, by determining the period variables t4 to t6, the time length of the vibration pattern is determined to be (t4+t5+t6). Here, according to the method of storing data indicating the vibration waveform itself that vibrates the
なお、他の実施形態においては、周波数モデル関数および振幅モデル関数により示される振動モデルは、振動パターンの時間長さが固定(すなわち、期間変数によって変化しない)であってもよい。例えば、図12に示す振動モデルにおいて、振動パターンの時間長さ(t1+t2)が所定値に固定されてもよい。なお、このとき、期間変数t1およびt2は、(t1+t2)が一定となる条件下で設定可能となる。 Note that in other embodiments, the vibration model represented by the frequency model function and the amplitude model function may have a vibration pattern whose time length is fixed (that is, does not change depending on the period variable). For example, in the vibration model shown in FIG. 12, the time length (t1+t2) of the vibration pattern may be fixed to a predetermined value. Note that at this time, the period variables t1 and t2 can be set under the condition that (t1+t2) is constant.
図11に示す変数決定部302は、振動モデルにおける変数の値を決定する。本実施形態においては、変数決定部302は、所定の振動条件が満たされたことに応じて、満たされた条件に応じた変数の値を決定する。振動条件は、振動子117に振動を行わせる条件である。ここで、本実施形態においては、リング型拡張装置5は、リング型拡張装置5に対する押し込み操作または引っ張り操作を検出し、操作回数をカウントする。なお、押し込み操作は、リング型拡張装置5の2つのグリップカバー203および204が互いに近づく方向に環状部201を変形させる操作である。また、引っ張り操作は、2つのグリップカバー203および204が互いに離れる方向に環状部201を変形させる操作である。第1の振動条件は、上記操作回数が所定の区切り回数(例えば、100,200,300,400回)となったことである。また、第2の振動条件は、上記操作回数が上限回数(例えば、500回)となったことである。本実施形態においては、変数決定部302は、第1の振動条件、または、第2の振動条件が満たされたことに応じて、満たされた条件に応じた値を決定する。これによって、振動条件が満たされたことに応じて、満たされた条件に応じた振動パターンで振動子117が振動する(詳細は後述する)。
The
なお、振動条件は任意であり、他の実施形態においては、他の条件が用いられてもよい。例えば、振動条件は、上記押し込み操作または引っ張り操作が検出されたことであってもよいし、右コントローラ4の所定のボタンに対する操作が検出されたことであってもよい。
Note that the vibration conditions are arbitrary, and other conditions may be used in other embodiments. For example, the vibration condition may be that the pushing operation or pulling operation is detected, or that an operation on a predetermined button of the
本実施形態においては、変数決定部302は、振動条件が満たされた場合、対応情報に基づいて、用いるべき振動モデルと変数の値とを決定する。図14は、対応情報の一例を示す図である。図14に示すように、対応情報は、振動条件と、当該振動条件が満たされた場合に用いる振動モデルと、当該振動条件が満たされた場合に用いる各変数の値との対応付けを示す。変数決定部302は、対応情報を記憶しており、振動条件が満たされた場合、対応情報を参照して、用いるべき振動モデルと変数の値とを決定する。
In this embodiment, the variable determining
本実施形態においては、変数決定部302は、第1の振動条件が満たされた場合、第1の振動モデルを用いて規定される振動パターンの振動が行われるように変数を決定する。第1の振動モデルは、a1,f1,t1,t2という4つの変数を含むので、上記の場合、変数決定部302は、これら4つの変数の値を決定する。また、第2の振動条件が満たされた場合も同様に、変数決定部302は、第2の振動モデルを用いて規定される振動パターンの振動が行われるように、当該第2の振動モデルに含まれる各変数(具体的には、変数a2,f2,t4,t5,t6)を決定する。なお、図14に示すように、1つの振動条件が満たされた場合において、変数決定部302は、振動モデルと各変数の値との組を複数組(図14に示す例においては、4組)決定してもよい。また、図14に示す例においては、1つの振動条件が満たされた場合に用いられる振動モデルは1種類であるとしたが、他の実施形態においては、1つの振動条件が満たされた場合複数種類の振動モデルが用いられてもよい。例えば、ある振動条件が満たされた場合に、変数決定部302は、第1の振動モデルとそれに対応する各変数の値との組、および、第2の振動モデルとそれに対応する各変数の値との組をそれぞれ決定してもよい。
In the present embodiment, the
他の実施形態においては、リング型拡張装置5は、振動モデルに対して適用すべき変数の値を記憶する変数記憶部を備える構成であってもよい。このとき、変数決定部302は、振動条件が満たされた場合、関数記憶部301に記憶される関数のうちから振動条件に応じた関数を決定するとともに、変数記憶部に記憶される変数の値のうちから当該関数に適用すべき値を決定する。なお、本実施形態においては、変数決定部302は上記対応情報を記憶しており、振動モデルの関数に対して適用すべき変数の値を記憶していると言うことができるので、当該変数の値を記憶する変数記憶部を兼ねていると言うこともできる。
In another embodiment, the
なお、他の実施形態においては、リング型拡張装置5は、上記変数の値を予め記憶している必要はない。他の実施形態においては、変数決定部302は、計算によって変数の値を算出してもよく、例えば、上記操作回数から周波数変数の値を算出してもよい。このとき、変数決定部302は、操作回数から周波数変数の値を算出するための計算式を予め記憶しておき、振動条件が満たされた場合に変数の値を計算すればよい。
Note that in other embodiments, the
変数決定部302は、以上のようにして振動モデルと変数の値とを決定すると、決定した振動モデル(すなわち、周波数モデル関数および/または振幅モデル関数)を指定する関数指定情報と、決定した変数の値を示す変数情報とを生成部303に渡す。
After determining the vibration model and variable values as described above, the
生成部303は、関数記憶部301に記憶される関数と、変数決定部302によって決定された変数の値とに基づいて、振動情報を生成する。具体的には、生成部303は、決定された変数の値を周波数モデル関数に適用する(すなわち、代入する)ことによって得られる周波数の時間変化と、決定された変数の値を振幅モデル関数に適用することによって得られる振幅の時間変化とによって規定される振動パターンを示す振動情報を生成する。なお、上記振動情報の生成に用いられる周波数モデル関数および振幅モデル関数は、変数決定部302から送られる関数指定情報により示される関数である。生成部303は、生成された振動情報を振動制御部304に渡す。
The
上記のように、本実施形態においては、関数記憶部301は、互いに異なる周波数の時間変化の振動モデル(すなわち、第1および第2の振動モデル)を示す複数種類の周波数モデル関数を記憶する。変数決定部302は、複数種類の周波数モデル関数のうち1つを指定する関数指定情報を決定する。生成部303は、決定された周波数変数の値と、決定された期間変数の値とを、関数指定情報により指定される周波数モデル関数に適用することによって得られる周波数の時間変化によって規定される振動パターンを示す振動情報を生成する。したがって、本実施形態によれば、複数の振動モデルを用いることで、ゲームシステム1は、データ量を抑えつつ、多様な振動パターンで振動子117を振動させることができる。
As described above, in the present embodiment, the
また、振動モデルと変数の値との組が複数組である場合、各組にそれぞれ対応する複数の振動パターンが規定される。この場合、生成部303は、必要に応じて、複数の振動パターンを1つに統合した統合振動パターンを示す振動情報を生成する。
Furthermore, when there are multiple sets of vibration models and variable values, a plurality of vibration patterns corresponding to each set are defined. In this case, the
図15は、複数の振動パターンを統合した統合振動パターンの一例を示す図である。図15は、上記第1の振動条件が満たされた場合に規定される4つの振動パターンを1つの統合振動パターンに統合する例を示している。図15に示す例においては、変数決定部302から送られてくる4組の変数を示す変数情報に基づいて、4つの振動パターンA~Dが規定されるものとする。このとき、生成部303は、4つの振動パターンA~Dを統合した1つの統合振動パターンを示す振動情報を生成し、振動制御部304に渡す。そして、振動制御部304は、渡された振動情報に基づいて振動子117の振動パターンを指示する。
FIG. 15 is a diagram showing an example of an integrated vibration pattern that integrates a plurality of vibration patterns. FIG. 15 shows an example in which four vibration patterns defined when the first vibration condition is satisfied are integrated into one integrated vibration pattern. In the example shown in FIG. 15, it is assumed that four vibration patterns A to D are defined based on variable information indicating four sets of variables sent from the
複数の振動パターンを1つの統合振動パターンに統合する方法は任意である。本実施形態においては、図15に示すように、生成部303は、振動が発生する期間が互いに重複しない複数の振動パターンを足し合わせることによって統合する。したがって、生成部303は、複数の振動パターンを容易に統合することができる。なお、他の実施形態においては、生成部303は、振動が発生する期間が互いに重複しない複数の振動パターンを単純に足し合わせるのではなく、適宜の演算を加えて統合してもよい。また、他の実施形態においては、生成部303は、振動が発生する期間が互いに重複する複数の振動パターンを統合してもよい。このとき、生成部303は、例えば、振動が発生する期間が互いに重複する期間においては、統合振動パターンにおける周波数を、重複する振動の周波数の平均値とし、統合振動パターンにおける振幅を、重複する振動の振幅の合計値(または平均値)としてもよい。
Any method can be used to integrate a plurality of vibration patterns into one integrated vibration pattern. In this embodiment, as shown in FIG. 15, the
また、上記のように、本実施形態においては、生成部303は、1つの周波数モデル関数に基づく複数の振動パターンを統合することによって得られる1つの統合振動パターンを示す振動情報を生成する。これによれば、ゲームシステム1は、1つの振動モデルから得られる複数の振動パターンを統合することで、より複雑な振動パターンで振動子117を振動させることができる。例えば、図15に示す例においては、第1の振動モデルを用いて、次第に周波数を上げながら4回の振動が発生するという、複雑な振動パターンで振動子117を振動させることができる。すなわち、関数記憶部301は、1回の振動が発生する第1の振動モデルを記憶していれば、同様の傾向の振動が4回発生する振動モデルを別途記憶する必要が無い。
Furthermore, as described above, in this embodiment, the
ここで、本実施形態においては、振動モデルは、期間変数として、周波数モデル関数が示す時間変化のモデルにおける開始時点から振動が開始されるまでの時間を示す開始変数(上記変数t1およびt4)を含む。これによって、ゲームシステム1は、振動パターンにおいて振動が開始される時点を調節することができる。
Here, in the present embodiment, the vibration model includes, as a period variable, a start variable (the above variables t1 and t4) indicating the time from the start point in the time change model indicated by the frequency model function until the vibration starts. include. Thereby, the
さらに、本実施形態においては、複数の振動パターンを統合する場合において上記開始変数が用いられるので、ゲームシステム1は、上記開始変数を適宜調節することによって、1つの振動パターンにおいて振動が開始される時点と、他の振動パターンにおいて振動が開始される時点との間隔を設定することができる。例えば、図15に示す例においては、4つの振動パターンにおける変数t1を75[ms]間隔とすることによって、4回の振動が開始される間隔を容易に揃えることができる。ここで、図15に示す4つの振動パターンで振動子117を振動させる場合において、仮に、4つの振動パターンについて個別に振動情報を生成してそれぞれ送信するとすれば、生成部303は、1つの振動パターンを示す振動情報を振動制御部304に送信するタイミングと、次の振動パターンを示す振動情報を振動制御部304に送信するタイミングとを調整することになり、振動情報の生成および送信の処理が煩雑になるおそれがある。これに対して、本実施形態においては、複数の振動パターンを統合する場合に上記開始変数を用いることで、複数の振動パターンにおける振動の開始時点の間隔を容易に調整することができる。
Furthermore, in this embodiment, the above-mentioned start variable is used when a plurality of vibration patterns are integrated, so the
本実施形態においては、生成部303は、振動パターンを示す振動情報として、所定期間(具体的には、1フレーム期間(例えば、10[ms]))毎の複数の単位振動情報を生成する。具体的には、生成部303は、1フレーム期間に1回の割合で、当該フレーム期間における振動パターンを示す単位振動情報を生成し、単位振動情報が生成される毎に当該単位振動情報を振動制御部304に渡す。なお、本実施形態においては、生成部303がリング型拡張装置5に設けられ、振動制御部304が右コントローラ4に設けられるので、単位振動情報はリング型拡張装置5から端子214を介して右コントローラ4へ送信される。なお、詳細は後述するが、生成部303は、1フレーム期間において、異なる振動パターンを示す2つの単位振動情報を振動制御部304へ送信してもよい。
In the present embodiment, the
図16は、単位振動情報の生成方法の一例を示す図である。図16に示す例では、開始時点からのフレーム期間p1~p10における振動パターンを示している。本実施形態においては、生成部303は、1フレーム期間毎に単位振動情報を生成する。ここで、生成部303は、ある1つのフレーム期間における振動パターンを示す単位振動情報として、当該振動パターンのうちで当該フレーム期間における部分の振幅および周波数を示す情報を生成する。例えば、図16に示す例においては、期間p1において、生成部303は、振幅が0で、周波数が0であることを示す単位振動情報を生成する。また、期間p6においては、生成部303は、振幅が1で、周波数が523であることを示す単位振動情報を生成する。
FIG. 16 is a diagram illustrating an example of a method for generating unit vibration information. The example shown in FIG. 16 shows vibration patterns in frame periods p1 to p10 from the start point. In this embodiment, the
上記のように、本実施形態においては、生成部303は、振動パターンの全体を示す振動情報を一度に生成せず、1フレーム期間分の振動パターンを示す単位振動情報を繰り返し生成することによって、振動パターンの全体を示す振動情報を生成する。つまり、振動パターンが規定される期間において単位振動情報が繰り返し生成され、生成された複数の単位振動情報(換言すれば、複数の単位振動情報からなる振動情報)が当該振動パターンを示すこととなる。また、生成部303は、振動パターンを示す振動情報を単位振動情報に分割して振動制御部304へ送信すると言うことができる。
As described above, in this embodiment, the
上記のように、生成部303は、所定の単位期間(すなわち、フレーム期間)に1回の割合で単位振動情報を生成する。生成部303は、ある単位期間において単位振動情報を生成する場合、振動パターンのうちで当該単位期間における部分を示す単位振動情報を生成する。これによれば、生成された振動パターンの長さにかかわらず、単位時間あたりの振動情報のデータ量を低減することができる。
As described above, the
また、本実施形態における振動情報(および単位振動情報)は、振動パターンの振幅および周波数の情報を含む。ここで、他の実施形態においては、振動情報は、他の情報を含んでいてもよい。例えば、本実施形態においては、振動制御部304は正弦波の振動波形で振動子117を振動させるものとするが、他の実施形態においては、振動制御部304は、複数種類の基本波形(例えば、正弦波および三角波)で振動子117を振動させることが可能であってもよい。このとき、生成部303が振動子117を振動させる基本波形を指定するようにしてもよい。すなわち、生成部303は、基本波形を示す情報を含む振動情報を生成してもよい。
Further, the vibration information (and unit vibration information) in this embodiment includes information on the amplitude and frequency of the vibration pattern. Here, in other embodiments, the vibration information may include other information. For example, in the present embodiment, the
振動制御部304は、生成部303から送られた振動情報に基づいて振動子117の振動を制御する。すなわち、振動制御部304は、生成部303から送られた単位振動情報が示す振動パターンで振動子117を振動させる。具体的には、振動制御部304は、単位振動情報が示す振動パターンにより規定される振動波形を示す駆動信号を振動子117に与える。本実施形態においては、駆動信号は、単位振動情報により示される振幅および周波数の正弦波の振動波形で振動子117を振動させる電気信号である。
The
なお、振動制御部304は、1フレーム期間毎に生成部303から単位振動情報を受信し、受信した単位振動情報に基づいて振動子117を振動させる。ここで、あるフレーム期間と次のフレーム期間との境界において振幅および/または周波数が急に変化すると、ノイズが発生したり、ユーザに違和感を与えたりするおそれがある。そのため、振動制御部304は、フレーム期間の境界において振幅および/または周波数が連続的に変化するように補間処理を行い、補間処理後の振幅および周波数を有する振動波形で振動子117を振動させるようにしてもよい。例えば、あるフレーム期間から次のフレーム期間において振幅および周波数が変化する場合、振動制御部304は、当該次のフレーム期間において、単位振動情報が示す振幅および周波数に次第に近づくように連続的に振幅および周波数が変化する駆動信号を生成してもよい。
Note that the
上述のように、本実施形態においては、生成部303は、1フレーム期間において2つの単位振動情報を振動制御部304へ送信することが可能である。2つの単位振動情報が送信されてくる場合、振動制御部304は、2つの単位振動情報が示す2つの振動波形を合成した振動波形で振動子117を振動させる。具体的には、振動制御部304は、2つの振動波形を合成した振動波形に対応する駆動信号を生成して振動子117に与える。このように、本実施形態においては、ゲームシステム1は、周波数が異なる2種類の振動波形を合成した振動波形で振動子117を振動させることができる。
As described above, in this embodiment, the
図17は、2つの振動パターンを示す振動情報に基づいて振動子を振動させる一例を示す図である。本実施形態においては、上記第2の振動条件が満たされた場合、変数決定部302は、第2の振動モデルを示す関数を指定する関数指定情報と、図17に示すパターンA~Dの4つの振動パターンを表す4組の変数情報を生成部303に渡す。このとき、第2の振動モデルを示す周波数モデル関数および振幅モデル関数と、4組の変数情報とに基づいて、4つの振動パターンA~Dが規定される。ここで、振動パターンAは、振動が発生する期間が他の3つの振動パターンB~Dと重複し、振動パターンB~Dは、振動が発生する期間が互いに重複しないものとする(図17参照)。また、振動パターンA~Dの周波数は、それぞれ、160[Hz],587[Hz],659[Hz],698[Hz]であるとする。
FIG. 17 is a diagram illustrating an example of vibrating a vibrator based on vibration information indicating two vibration patterns. In this embodiment, when the second vibration condition is satisfied, the
上述のように、本実施形態においては、振動制御部304は、2つの単位振動情報が示す2つの振動波形を合成することが可能である一方、変数決定部302によって決定される変数に基づいて3つ以上の振動パターンが規定される場合がある(図17)。この場合、生成部303は、3つ以上の振動パターンのうちいくつかを統合することで、2つの振動パターンを示す振動情報を生成する。なお、図17に示す例においては、4つの振動パターンA~Dが統合された結果、2つの振動パターンを示す2つの振動情報が生成されるが、他の実施形態においては、統合の結果、1つの振動パターンを示す1つの振動情報が生成されてもよい。
As described above, in the present embodiment, the
本実施形態においては、生成部303は、上記3つ以上の振動パターンのうち、振動が発生する期間が互いに重複しない振動パターンを統合した統合振動パターンを示す振動情報を生成する。図17に示す例においては、生成部303は、振動が発生する期間が互いに重複しない振動パターンB~Dが統合された1つの統合振動パターンを示す振動情報を生成する(図17に示す第2の振動パターン参照)。また、振動パターンAについては、振動パターンB~Dと振動が発生する期間が重複するので、生成部303は、振動パターンAについては統合せずにそのまま、振動パターンAを示す振動情報を生成する(図17に示す第1の振動パターン参照)。生成部303は、上記2つの振動情報に対応する2つの単位振動情報を振動制御部304へ送信する。上記2つの単位振動情報を受信した振動制御部304は、2つの単位振動情報に基づく2つの振動波形を合成した振動波形で振動子117を振動させる(図17に示す合成波形の振動パターン参照)。
In the present embodiment, the
なお、3つ以上の振動パターンのうちでどの振動パターンを統合するかを決定する方法は任意である。例えば、3つ以上の振動パターンのうちで振動が発生する期間が互いに重複しない振動パターンの組が既知である場合、当該組に含まれる振動パターンが1つに統合されてもよい。また、周波数が所定の閾値以上である複数の振動パターンについては振動が発生する期間が互いに重複せず、かつ、周波数が所定の閾値未満である複数の振動パターンについては振動が発生する期間が互いに重複しない場合(つまり、そのような振動パターンが規定されるように変数が決定される場合)には、周波数が当該閾値以上である振動パターン同士が統合され、周波数が当該閾値未満である振動パターン同士が統合されてもよい。例えば、図17に示す例においては、振動パターンAの周波数は160[Hz]であり、振動パターンB~Dの周波数は587~698[Hz]であるので、160[Hz]より大きく、587[Hz]より小さい閾値(例えば、320[Hz])が設定されてもよい。このとき、4つの振動パターンA~Dを、周波数が閾値未満のグループと、周波数が閾値以上のグループとに分けることができるので、生成部303は、グループに含まれる振動パターンを統合した統合振動パターンを示す振動情報を生成すればよい。
Note that any method may be used to determine which vibration pattern to integrate among the three or more vibration patterns. For example, if a set of three or more vibration patterns in which the periods in which vibrations occur do not overlap with each other is known, the vibration patterns included in the set may be integrated into one. In addition, for multiple vibration patterns whose frequency is equal to or higher than a predetermined threshold, the periods during which vibration occurs do not overlap with each other, and for multiple vibration patterns whose frequency is less than a predetermined threshold, the periods during which vibration occurs are mutually mutual. If they do not overlap (that is, if the variables are determined such that such vibration patterns are defined), vibration patterns whose frequencies are greater than or equal to the threshold are integrated, and vibration patterns whose frequencies are less than the threshold are integrated. They may be integrated. For example, in the example shown in FIG. 17, the frequency of vibration pattern A is 160 [Hz], and the frequencies of vibration patterns B to D are 587 to 698 [Hz]. Hz] (for example, 320 [Hz]) may be set. At this time, the four vibration patterns A to D can be divided into a group whose frequency is less than the threshold value and a group whose frequency is equal to or higher than the threshold value, so the
上記のように、本実施形態においては、振動子117は、2以上である第1所定数(ここでは、2)の振動情報にそれぞれ対応する各振動波形を合成した波形で振動可能であり、変数決定部302は、周波数変数の値と期間変数の値との組として、第1所定数より大きい第2所定数(図17に示す例では、4)の組を決定する。このとき、生成部303は、決定された組に基づく第2所定数の振動パターンのうち2以上の振動パターンを統合して1つの振動パターンとすることによって、合わせて第1所定数の振動パターンを示す第1所定数の振動情報を生成する。上記によれば、変数決定部302により決定された変数の組に応じて規定される振動パターンの数によらず、振動子117が対応可能な数(すなわち、第1所定数)の振動情報を生成することができる。
As described above, in the present embodiment, the
また、本実施形態においては、生成部303は、複数の振動パターンのうち、振動が生じる期間が互いに重複しない複数の振動パターンを統合することによって得られる1つの振動パターンを示す振動情報を生成する。これによって、振動パターンを統合する計算処理が容易になる。
Furthermore, in the present embodiment, the
[3.振動制御処理の具体例]
次に、振動制御処理の具体例について説明する。図18は、リング型拡張装置5によって実行される振動制御処理の一例を示すフローチャートである。本実施形態においては、図18に示す一連の振動制御処理は、上述の独立動作モードが開始されたことに応じて開始される。
[3. Specific example of vibration control processing]
Next, a specific example of vibration control processing will be described. FIG. 18 is a flowchart showing an example of vibration control processing executed by the
なお、本実施形態では、リング型拡張装置5の制御部213のプロセッサが、制御部213が備えるメモリに記憶されるプログラムを実行することによって、図18に示す各ステップの処理を実行するものとして説明する。ただし、他の実施形態においては、上記各ステップの処理のうちの一部の処理を、制御部213のプロセッサとは別のプロセッサ(例えば、専用回路等)が実行するようにしてもよいし、右コントローラ4のプロセッサ(例えば、通信制御部111)が実行するようにしてもよい。また、図18(後述する図20についても同様である)に示す各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。
In this embodiment, the processor of the control unit 213 of the
また、制御部213は、図18に示す各ステップの処理を、メモリを用いて実行する。すなわち、制御部213は、各処理ステップによって得られる情報(換言すれば、データ)をメモリに記憶し、それ以降の処理ステップにおいて当該情報を用いる場合には、メモリから当該情報を読み出して利用する。 Further, the control unit 213 executes the processing of each step shown in FIG. 18 using memory. That is, the control unit 213 stores information (in other words, data) obtained in each processing step in the memory, and when using the information in subsequent processing steps, reads the information from the memory and uses it. .
振動制御処理が開始されると、プロセッサは、ステップS1~S6の一連の処理を、1フレーム期間に1回の割合で繰り返し実行する。 When the vibration control process is started, the processor repeatedly executes a series of processes from steps S1 to S6 at a rate of once per frame period.
ステップS1において、プロセッサは、上述の振動条件のいずれかが満たされたか否かを判定する。本実施形態においては、ステップS1の判定は、リング型拡張装置5に対する操作回数に基づいて行うことができる。ここで、プロセッサは、歪み検出部211から出力される歪み値に基づいてリング型拡張装置5の変形量を算出し、当該変形量に基づいて押し込み操作または引っ張り操作を検出する。具体的には、トレーニング装置は、押し込み方向の変形量が所定の押し込み閾値よりも大きくなった場合、押し込み操作を検出し、引っ張り方向の変形量が所定の引っ張り閾値よりも大きくなった場合、引っ張り操作を検出する。さらに、プロセッサは、押し込み操作または引っ張り操作が1回検出される毎に、操作回数を1増加させるようにカウントを行う。そして、操作回数が上記区切り回数になった場合(すなわち、操作回数が区切り回数に等しくなった場合)、プロセッサは、第1の振動条件が満たされたと判断する。また、操作回数が上記上限回数になった場合(すなわち、操作回数が上限回数に等しくなった場合)、プロセッサは、第2の振動条件が満たされたと判断する。なお、ステップS1において振動条件が満たされたと判断されるのは、前回のステップS1から操作回数が増加した結果、区切り回数または上限回数に等しくなった場合である。前回のステップS1の判定から操作回数が増加していない場合は、操作回数が区切り回数または上限回数に等しいとしても振動条件はすでに満たされた後であるので、ステップS1の判定結果は否定となる。ステップS1の判定結果が肯定である場合、ステップS2の処理が実行される。一方、ステップS1の判定結果が否定である場合、ステップS2~S4の処理がスキップされて、後述のステップS5の処理が実行される。
In step S1, the processor determines whether any of the vibration conditions described above are satisfied. In this embodiment, the determination in step S1 can be made based on the number of times the
ステップS2において、プロセッサは、ステップS1で満たされた条件に基づいて振動モデルを決定する。上述のように、振動モデルは、対応情報を参照することによって決定される。ステップS2の次に、ステップS3の処理が実行される。 In step S2, the processor determines a vibration model based on the conditions satisfied in step S1. As mentioned above, the vibration model is determined by referring to the correspondence information. After step S2, the process of step S3 is executed.
ステップS3において、プロセッサは、ステップS1で満たされた条件に基づいて変数の値を決定する。上述のように、変数の値は、対応情報を参照することによって決定される。ステップS3の次に、ステップS4の処理が実行される。 In step S3, the processor determines the value of the variable based on the conditions satisfied in step S1. As mentioned above, the value of the variable is determined by referring to the correspondence information. After step S3, the process of step S4 is executed.
ステップS4において、プロセッサは、ステップS2で決定された振動モデルを示す関数(すなわち、周波数モデル関数および振幅モデル関数)と、ステップS3で決定された変数の値とに基づいて規定される振動パターンを示す振動情報を生成する。なお、振動情報の生成は、上記“[2.振動制御処理の概要]”で述べた方法に従って行われる。具体的には、プロセッサは、上記振動パターンについて、現在のフレーム期間における単位振動情報を生成する。すなわち、プロセッサは、振動パターンのうちで現在のフレーム期間における部分の振幅および周波数を示す単位振動情報を生成する。なお、現在のフレーム期間に対応する振動パターンが存在しない場合、プロセッサは、振幅および周波数が0であることを示す単位振動情報を生成してもよいし、単位振動情報を生成しないようにしてもよい。また、ステップS4において、プロセッサは、上述したように2つの単位振動情報を生成してもよい。ステップS4の次に、ステップS5の処理が実行される。 In step S4, the processor generates a vibration pattern defined based on the functions representing the vibration model determined in step S2 (i.e., the frequency model function and the amplitude model function) and the values of the variables determined in step S3. The vibration information shown is generated. Note that the vibration information is generated according to the method described in "[2. Overview of vibration control processing]" above. Specifically, the processor generates unit vibration information in the current frame period for the vibration pattern. That is, the processor generates unit vibration information indicating the amplitude and frequency of a portion of the vibration pattern in the current frame period. Note that if there is no vibration pattern corresponding to the current frame period, the processor may generate unit vibration information indicating that the amplitude and frequency are 0, or may not generate unit vibration information. good. Further, in step S4, the processor may generate two unit vibration information as described above. After step S4, the process of step S5 is executed.
ステップS5において、プロセッサは、ステップS4で生成された単位振動情報を右コントローラ4へ送信する。これに応じて、振動情報を受信した右コントローラ4は、当該振動情報に基づいて振動子117を振動させる。ステップS5の処理が1フレーム期間毎に繰り返し実行されることによって、ステップS4で生成された振動情報が示す振動パターンで振動子117が振動することとなる。ステップS5の次に、ステップS6の処理が実行される。
In step S5, the processor transmits the unit vibration information generated in step S4 to the
ステップS6において、プロセッサは、振動制御処理を終了するか否かを判定する。例えば、プロセッサは、上記独立動作モードを終了する指示を示すユーザ入力が検出されたか否かを判定する。ステップS6の判定結果が肯定である場合、プロセッサは、振動制御処理を終了する。一方、ステップS6の判定結果が否定である場合、ステップS1の処理が再度実行される。以降、ステップS6の判定結果が肯定となるまで、プロセッサは、ステップS1~S6の一連の処理を繰り返し実行する。 In step S6, the processor determines whether to end the vibration control process. For example, the processor determines whether a user input indicating an instruction to end the independent operation mode is detected. If the determination result in step S6 is affirmative, the processor ends the vibration control process. On the other hand, if the determination result in step S6 is negative, the process in step S1 is executed again. Thereafter, the processor repeatedly executes the series of steps S1 to S6 until the determination result in step S6 becomes affirmative.
[4.本実施形態の作用効果および変形例]
上記実施形態においては、振動子117を備える情報処理システム(具体的には、ゲームシステム1)は、下記の構成を備える。
・振動の周波数に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数を示す周波数変数と、当該期間に関する期間変数とを変数とする周波数モデル関数を記憶する関数記憶部301
・周波数変数の値と、期間変数の値とを決定する変数決定部302
・決定された周波数変数の値と、決定された期間変数の値とを周波数モデル関数に適用することによって得られる周波数の時間変化によって規定される振動パターンを示す振動情報を生成する生成部303
・振動情報に基づいて振動子117の振動を制御する振動制御部304
上記の構成によれば、ゲームシステム1は、周波数モデル関数を記憶しておくことによって、周波数モデルを用いて振動情報を生成することができる。これによれば、複数種類の振動パターンで振動子117を振動させる場合において、振動子117を振動させるための振動波形のデータを記憶しておく方法に比べて、振動子117の制御に用いられるデータ量を少なくすることができる。
[4. Effects and modifications of this embodiment]
In the above embodiment, the information processing system (specifically, the game system 1) including the
- A
-
- A
-
According to the above configuration, the
また、上記実施形態においては、関数記憶部301は、振動の振幅に関する時間変化のモデルを示し、振動の振幅を示す振幅変数を変数とする振幅モデル関数をさらに記憶する。変数決定部302は、振幅変数の値をさらに決定する。生成部303は、決定された周波数変数の値と、決定された期間変数の値とを周波数モデル関数に適用することによって得られる周波数の時間変化と、決定された振幅変数の値を振幅モデル関数に適用することによって得られる振幅の時間変化とによって規定される振動パターンを示す振動情報を生成する。これによれば、情報処理システムは、周波数に加えて、振幅が異なる振動パターンを1つの振動モデルから生成することができ、より多様な振動パターンで振動子117を振動させることができる。
Further, in the embodiment described above, the
なお、上記実施形態においては、情報処理システムは、振動子を備える第1装置(具体的には、右コントローラ4)と、当該第1装置と通信を行う第2装置(具体的には、リング型拡張装置5)とを含む。第2装置は、関数記憶部301と、変数決定部302と、生成部303と、振動情報を第1装置へ送信する送信部(具体的には、ステップS6を実行する制御部213)とを備える。第1装置は、第2装置から振動情報を受信する受信部(具体的には、端子64および通信制御部111)と、受信部によって受信された振動情報に基づいて振動子の振動を制御する振動制御部304とを備える。上記の構成によれば、第2装置における、振動子の制御に用いられるデータ量を少なくすることができる。これによれば、第2装置は記憶容量の大きい記憶装置を備える必要がないので、第2装置の製造コストを低減することができる。
In the above embodiment, the information processing system includes a first device (specifically, the right controller 4) including a vibrator, and a second device (specifically, a ring) that communicates with the first device. and a mold expansion device 5). The second device includes a
(本体装置2によって振動子117を制御する変形例)
上記実施形態においては、リング型拡張装置5が振動モデルを用いた振動パターンで右コントローラ4の振動子117を制御する場合を例として説明したが、他の実施形態においては、振動モデルを用いた振動パターンで本体装置2が振動子117を制御するようにしてもよい。以下、上記実施形態における変形例として、本体装置2が振動子117を制御する例について説明する。
(Modified example in which the
In the above embodiment, a case has been described as an example in which the ring-shaped
図19は、振動子117の振動制御に関する本体装置2および右コントローラ4の機能的構成を示すブロック図である。本変形例においては、本体装置2が右コントローラ4と無線通信を行い、当該右コントローラ4の振動子117を振動させる例について説明する。なお、本変形例においては、振動子117を振動させる処理にリング型拡張装置5は関係しないので、右コントローラ4はリング型拡張装置5に装着されている必要はない。
FIG. 19 is a block diagram showing the functional configuration of the
図19に示すように、本体装置2は、変数決定部311を備える。また、右コントローラ4は、関数記憶部312と、生成部313と、上述の振動制御部304および振動子117とを備える。変数決定部311は、例えばプロセッサ81およびDRAM85によって実現される。また、関数記憶部312は例えばメモリ112によって実現され、生成部313は例えば通信制御部111およびメモリ112によって実現される。
As shown in FIG. 19, the
変数決定部311は、上記実施形態における変数決定部302と同様の機能を有する。すなわち、変数決定部311は、所定の振動条件が満たされたことに応じて、満たされた条件に応じた振動モデルおよび変数の値を決定する。なお、本体装置2の変数決定部311が用いる振動条件は、リング型拡張装置5の変数決定部302が用いる振動条件と異なっていてもよいし、同じであってもよい。本体装置2の変数決定部311が用いる振動条件は、例えば、本体装置2において実行されるゲームに関する条件(例えば、ゲームにおいて所定の条件が満たされたこと)であってもよい。
The variable determining
本変形例においては、変数決定部311は、決定された振動モデルを指定する関数指定情報と、決定された変数の値を示す変数情報とを、右コントローラ4の生成部313に渡す。すなわち、変数決定部311は、これらの情報を無線で右コントローラ4へ送信する。
In this modification, the variable determining
関数記憶部312は、上記実施形態における関数記憶部301と同様の機能を有する。なお、関数記憶部312は、本体装置2から送信される関数指定情報が示す振動モデルに対応する関数を記憶する。右コントローラ4の関数記憶部312に記憶される関数と、リング型拡張装置5の関数記憶部301に記憶される関数とは、異なっていてもよい。
The
生成部313は、上記実施形態における生成部303と同様の機能を有する。すなわち、生成部313は、関数記憶部312に記憶される関数と、変数決定部311によって決定された変数の値とに基づいて振動情報を生成する。
The generation unit 313 has the same function as the
本変形例においても上記実施形態と同様、生成された振動情報は振動制御部304に渡され、振動制御部304は、当該振動情報に基づいて振動子117の振動を制御する。これによって、本変形例においても上記実施形態と同様、ゲームシステム1は、振動モデルに基づく振動パターンで振動子117を振動させることができる。
In this modification, as in the above embodiment, the generated vibration information is passed to the
図20は、本変形例における振動制御処理の一例を示すフローチャートである。図20に示す一連の振動制御処理は、右コントローラ4によって実行される。本変形例においては、図20に示す一連の振動制御処理は、例えば本体装置2においてゲームアプリケーションが起動されたことに応じて開始される。
FIG. 20 is a flowchart illustrating an example of vibration control processing in this modification. A series of vibration control processes shown in FIG. 20 are executed by the
なお、本変形例では、右コントローラ4の通信制御部111のプロセッサが、メモリ112に記憶されるプログラムを実行することによって、図20に示す各ステップの処理を実行するものとして説明する。また、プロセッサは、図20に示す各ステップの処理を、メモリを用いて実行する。すなわち、プロセッサは、各処理ステップによって得られる情報(換言すれば、データ)をメモリに記憶し、それ以降の処理ステップにおいて当該情報を用いる場合には、メモリから当該情報を読み出して利用する。
Note that in this modification, the processor of the communication control unit 111 of the
振動制御処理が開始されると、プロセッサは、ステップS11~S17の一連の処理を、1フレーム期間に1回の割合で繰り返し実行する。 When the vibration control process is started, the processor repeatedly executes a series of processes from steps S11 to S17 once per frame period.
ステップS11において、プロセッサは、本体装置2から上記関数指定情報および変数情報を受信したか否かを判定する。本変形例においては、本体装置2は、振動条件のいずれかが満たされた場合、満たされた条件に応じた関数指定情報および変数情報を右コントローラ4へ送信する。プロセッサは、無線によりこれらの情報が受信されたか否かを判定する。ステップS11の判定結果が肯定である場合、ステップS12の処理が実行される。一方、ステップS11の判定結果が否定である場合、ステップS12~S14の処理がスキップされて、後述のステップS15の処理が実行される。
In step S11, the processor determines whether the function designation information and variable information have been received from the
ステップS12において、プロセッサは、ステップS1で本体装置2から情報を受信した旨を示す確認通知を本体装置2へ送信する。ステップS12の次に、ステップS13の処理が実行される。
In step S12, the processor transmits a confirmation notification to the
ここで、本変形例においては、本体装置2は、上記関数指定情報および変数情報を送信してから所定時間内に右コントローラ4からの確認通知が受信されない場合、当該関数指定情報および変数情報を再送する。本体装置2は、上記関数指定情報および変数情報の送信を、上記確認通知を右コントローラ4から受信するまで繰り返し実行する。このように、本変形例においては、本体装置2と右コントローラ4との間の無線通信において、関数指定情報および変数情報が右コントローラ4において受信されたことが本体装置2において確認されるまで、当該関数指定情報および変数情報が送信される。これによれば、右コントローラ4において関数指定情報および変数情報を取得する可能性を向上することができる。
Here, in this modification, if the
本変形例におけるステップS13~S15の処理は、それぞれ、(実行主体がリング型拡張装置5のプロセッサであるか、右コントローラ4のプロセッサであるかという点で異なるものの、)上記実施形態におけるステップS2~S4の処理と同様であるので、詳細な説明を省略する。
The processes of steps S13 to S15 in this modification differ from each other in that the execution entity is the processor of the
ステップS16において、プロセッサは、ステップS15で生成された単位振動情報に基づいて振動子117を振動させる。ステップS16の処理が1フレーム期間毎に繰り返し実行されることによって、ステップS15で生成された振動情報が示す振動パターンで振動子117が振動することとなる。ステップS16の次に、ステップS17の処理が実行される。
In step S16, the processor causes the
ステップS17において、プロセッサは、振動制御処理を終了するか否かを判定する。例えば、プロセッサは、ゲームアプリケーションにおけるゲーム処理を終了する旨の指示が本体装置2から送信されたか否かを判定する。ステップS17の判定結果が肯定である場合、プロセッサは、振動制御処理を終了する。一方、ステップS17の判定結果が否定である場合、ステップS11の処理が再度実行される。以降、ステップS17の判定結果が肯定となるまで、プロセッサは、ステップS11~S17の一連の処理を繰り返し実行する。
In step S17, the processor determines whether to end the vibration control process. For example, the processor determines whether an instruction to end the game processing in the game application has been transmitted from the
なお、図20においては示していないが、右コントローラ4は、本体装置2におけるゲームアプリケーションの実行中においては、上述の操作データを本体装置2へ送信する処理等を実行してもよい。
Although not shown in FIG. 20, the
上記のように、上記変形例においては、情報処理システムは、振動子を備える第1装置(具体的には、右コントローラ4)と、当該第1装置と無線通信を行う第2装置(具体的には、本体装置2)とを含む。第2装置は、変数決定部311と、決定された周波数変数および期間変数を第1装置へ送信する変数送信部(具体的には、コントローラ通信部83)とを備える。また、第1装置は、下記の構成を備える。
・第2装置から周波数変数および期間変数を受信する変数受信部(具体的には、通信制御部111)
・変数受信部によって受信された周波数変数および期間変数に基づいて振動情報を生成する生成部313
・振動制御部314
上記によれば、第1装置に周波数モデル関数を記憶しておき、周波数モデル関数を用いて振動情報を生成することによって、第1装置において振動子の制御に用いられるデータ量を少なくすることができる。また、上記によれば、第2装置は、変数を示す情報を第1装置に送信するので、振動情報または振動波形自体を示すデータをフレーム期間毎に第1装置へ送信する場合に比べて、装置間の通信量および通信の頻度の少なくとも一方を低減することができる。さらに、上記によれば、第2装置は、振動子を振動させる開始時に上記変数を第1送信すればよく、振動子の振動中において第2装置は第1装置と通信を行う必要はなく、振動中に第2装置が起動している必要もない。したがって、上記変形例においては、右コントローラ4の振動中において、第2装置は、スリープ状態となることによって省電力化を図ることも可能である。
As described above, in the above modification, the information processing system includes a first device (specifically, the right controller 4) including a vibrator, and a second device (specifically, the right controller 4) that performs wireless communication with the first device. includes the main unit 2). The second device includes a variable determining
- Variable receiving unit (specifically, communication control unit 111) that receives frequency variables and period variables from the second device
- Generation unit 313 that generates vibration information based on the frequency variable and period variable received by the variable reception unit
・Vibration control section 314
According to the above, by storing a frequency model function in the first device and generating vibration information using the frequency model function, it is possible to reduce the amount of data used for controlling the vibrator in the first device. can. Furthermore, according to the above, since the second device transmits information indicating variables to the first device, compared to the case where data indicating vibration information or the vibration waveform itself is transmitted to the first device every frame period, At least one of the amount of communication between devices and the frequency of communication can be reduced. Furthermore, according to the above, the second device only needs to first transmit the variable at the time of starting to vibrate the vibrator, and there is no need for the second device to communicate with the first device while the vibrator is vibrating. There is no need for the second device to be activated during vibration. Therefore, in the above modification, while the
また、他の実施形態においては、本体装置2が変数決定部および関数記憶部を備え、右コントローラ4は関数記憶部を備えず、生成部および振動制御部を備える構成であってもよい。このとき、本体装置2は、振動条件が満たされたことに応じて、満たされた振動条件に応じた振動モデルを示す関数と、当該関数に適用する変数の値とを右コントローラ4へ送信する。右コントローラ4の生成部は、本体装置2から受信される、上記関数と変数の値とに基づいて振動パターンを生成する。上記の構成によっても上記変形例と同様、第1装置において振動子の制御に用いられるデータ量を少なくすることができる。また、装置間の通信量および通信の頻度の少なくとも一方を低減することができる。なお、他の実施形態においては、本体装置2は、関数と変数の値とを右コントローラ4へ送信することに代えて、当該関数に当該変数の値を適用した結果(すなわち、振動パターンを示す関数)を右コントローラ4へ送信してもよい。
In another embodiment, the
また、上記変形例においては、右コントローラ4は、本体装置2から周波数変数および期間変数が受信されたことに応じて、当該本体装置2へ返信を行う(ステップS12)。このとき、本体装置2は、周波数変数および期間変数の送信に対する右コントローラ4からの返信が送信から所定時間以内にない場合、当該周波数変数および当該期間変数を当該右コントローラ4へ再送信する。これによれば、本体装置2と右コントローラ4との間で無線通信を行う場合であっても、振動子117を振動させることができる可能性を向上することができる。なお、上記のように情報の再送信を行う場合、再送信を行わない場合に比べて装置間の通信量が増加する。しかし、上記変形例においては、本体装置2から右コントローラ4へは、データ量が少ない変数情報が送信されるので、情報の再送信を行うようにしても通信量が過大となるおそれは少ない。なお、本体装置2は、上記返信が送信から上記所定時間以内にあるか否かの判定を、当該返信が行われてからの時間を計測することによって行ってもよいし、当該時間に相当する指標(例えば、当該返信が行われてからの経過フレーム数)を用いて行ってもよい。
Further, in the above modification, the
なお、仮に、本体装置2から右コントローラ4へフレーム期間毎に振動情報を送信する場合には、無線通信において生じるパケットの消失が原因で、本体装置2から送信される複数の振動情報のうちでいくつかの振動情報が右コントローラ4において受信されないおそれがある。このとき、本体装置2が指示する振動パターン(すなわち、本体装置2が送信する情報により規定される振動パターン)が振動子117において正しく再現されないおそれがある。これに対して、上記変形例においては、再送信を行う通信方法で変数情報が送信され、当該変数情報に基づいて、受信側である右コントローラ4において振動情報が生成される。これによれば、受信側で生成された振動情報が、本体装置2が指示する振動パターンとは異なる内容を示すものとなる可能性は低くなる。
Furthermore, if vibration information is transmitted from the
また、他の実施形態においては、本体装置2および右コントローラ4は、振動モデルを用いる第1モードと、振動モデルを用いない第2モードとのいずれかで動作可能であってもよい。第1モードにおいては、上記変形例において示したように、本体装置2が変数情報を右コントローラ4へ送信し、右コントローラ4が変数情報に基づいて生成される振動情報に基づいて振動子117の振動を制御する。一方、第2モードにおいては、本体装置2は、所定の振動パターンを示す振動情報を右コントローラ4へ送信し(例えば、1フレーム期間に1回の割合で単位振動情報を送信し)、右コントローラ4は、本体装置2から送信されてくる振動情報に基づいて振動子117の振動を制御する。ここで、第2モードにおける振動情報は、本体装置2において、振動モデルを用いる方法以外の任意の方法で生成される。例えば、第2モードにおける振動情報は、本体装置2において実行中のアプリケーションのプログラムにおいて含まれるものであってもよい。また例えば、第2モードにおける振動情報は、本体装置2においてユーザの入力に基づいて生成された振動情報(例えば、ユーザが一連の入力を行ったときの各入力タイミングで振動する振動パターンを示す振動情報)であってもよい。上記によれば、ゲームシステム1は、第1モードにおいては振動モデルを用いることによって、振動子117の制御に用いられるデータ量を少なくすることができるとともに、第2モードにおいて、振動モデルから生成することができない振動パターンによっても振動子117を振動させることができる。
In other embodiments, the
(振動モデルに関する変形例)
振動モデルの内容は任意であり、他の実施形態においては、上記第1および第2の振動モデルとは異なる振動モデルが用いられてもよい。図21は、振動モデルの他の一例を示す図である。図21に示す振動モデルは、下記(a)~(d)のように振幅および周波数が推移する振動パターンのモデルを示している。
(a)開始時点から時間t11が経過するまでの期間は、振動を発生させない。
(b)時間t11が経過した時点から時間t12が経過するまでの期間は、振幅が0からa11まで増加し(具体的には、単位時間当たりの増加量が一定である増加態様で増加し)、かつ、周波数f11で振動を行う。
(c)時間t12が経過した時点から時間t13が経過するまでの期間は、一定の振幅a11で、かつ、周波数f12で振動を行う。
(d)時間t13が経過した時点から時間t14が経過するまでの期間は、振幅がa11からa12まで減少し(具体的には、単位時間当たりの減少量が一定である減少態様で減少し)、かつ、周波数f3で振動を行う。
なお、時間t11~t14と、周波数f11~f13と、振幅a11およびa12とは、それぞれ変数である。図21に示す振動モデルを用いることによって、ゲームシステム1は、より多様な振動パターンを生成することができる。
(Variation example regarding vibration model)
The content of the vibration model is arbitrary, and in other embodiments, a vibration model different from the first and second vibration models may be used. FIG. 21 is a diagram showing another example of the vibration model. The vibration model shown in FIG. 21 shows a vibration pattern model in which the amplitude and frequency change as shown in (a) to (d) below.
(a) No vibration is generated during the period from the start point until time t11 has elapsed.
(b) During the period from the time t11 passes until the time t12 passes, the amplitude increases from 0 to a11 (specifically, the amplitude increases in an increasing manner in which the amount of increase per unit time is constant) , and vibrates at a frequency f11.
(c) During the period from the time t12 has passed until the time t13 has passed, vibration is performed with a constant amplitude a11 and a frequency f12.
(d) During the period from time t13 to time t14, the amplitude decreases from a11 to a12 (specifically, the amplitude decreases in a decreasing manner in which the amount of decrease per unit time is constant) , and vibrates at frequency f3.
Note that the times t11 to t14, the frequencies f11 to f13, and the amplitudes a11 and a12 are variables, respectively. By using the vibration model shown in FIG. 21, the
上記のように、振幅変数は、振動モデル(図21参照)における終了時点の振幅を示す終了振幅変数(すなわち、変数a12)を含んでいてもよい。これによれば、ゲームシステム1は、終了時点の前において振幅が次第に減少しつつ、終了時点における振幅が0でない振動パターンを規定することができる。また、ゲームシステム1は、上記の振動パターンの直後に他の振動パターンが連続するように、2つの振動パターンを統合した統合振動パターンを規定することができる。例えばこのとき、連続する直後の振動パターンの開始時点の振幅を上記の終了時振幅変数(すなわち、変数a12)とすれば、2つの振動パターンにおける振動が連続する振動パターンを規定することができ、振動モデルに基づく振動パターンのバリエーションを増やすことができる。
As mentioned above, the amplitude variables may include an end amplitude variable (ie, variable a12) indicating the amplitude at the end point in the vibration model (see FIG. 21). According to this, the
また、図21に示す振動モデルにおいては、振幅が連続的に変化する振動モデルを示したが、周波数が連続的に変化する振動モデルが用いられてもよい。図22は、振動モデルの他の一例を示す図である。図22は、下記(e)~(h)のように周波数が推移する振動パターンのモデルを示している。
(e)開始時点から時間t21が経過するまでの期間は、周波数f21で振動を行う。
(f)時間t21が経過した時点から時間t22が経過するまでの期間は、周波数がf21からf22まで増加する(具体的には、単位時間当たりの減少量が一定である増加態様で増加する)振動を行う。
(g)時間t22が経過した時点から時間t23が経過するまでの期間は、一定の周波数f22で振動を行う。
(h)時間t23が経過した時点から時間t24が経過するまでの期間は、周波数がf22からf23まで減少する(具体的には、単位時間当たりの減少量が一定である減少態様で減少する)振動を行う。
なお、時間t21~t24と、周波数f21~f23とは、それぞれ変数である。図22に示す振動モデルを用いることによって、ゲームシステム1は、周波数が連続的に変化する振動パターンを規定することができる。また、他の実施形態においては、図22に示す振動モデルが用いられる場合において、振幅に関しては図21に示す振動モデルが用いられてもよい。すなわち、ゲームシステム1は、周波数モデル関数として図22に示す関数を用い、振幅モデル関数として図21に示す関数を用いるようにしてもよい。これによって、振動モデルに基づく振動パターンのバリエーションをより増やすことができる。
Furthermore, although the vibration model shown in FIG. 21 shows a vibration model in which the amplitude changes continuously, a vibration model in which the frequency changes continuously may also be used. FIG. 22 is a diagram showing another example of the vibration model. FIG. 22 shows a model of a vibration pattern in which the frequency changes as shown in (e) to (h) below.
(e) Vibration is performed at frequency f21 during a period from the start point until time t21 has elapsed.
(f) During the period from the time t21 passes until the time t22 passes, the frequency increases from f21 to f22 (specifically, the frequency increases in an increasing manner in which the amount of decrease per unit time is constant) Perform vibration.
(g) Vibration is performed at a constant frequency f22 during the period from the time t22 has passed until the time t23 has passed.
(h) During the period from the time t23 passes until the time t24 passes, the frequency decreases from f22 to f23 (specifically, the frequency decreases in a decreasing manner in which the amount of decrease per unit time is constant) Perform vibration.
Note that the times t21 to t24 and the frequencies f21 to f23 are variables, respectively. By using the vibration model shown in FIG. 22, the
(振動モデルの変数に関する変形例)
他の実施形態においては、振動モデルを示す関数(すなわち、周波数モデル関数および振幅モデル関数)は、繰り返し変数を変数とする関数であってもよい。繰り返し変数は、繰り返し変数以外の他の変数(すなわち、周波数変数、振幅変数、および、期間変数)によって規定される振動パターンを繰り返す回数を示す変数である。振動モデルを示す関数が繰り返し変数を含む場合、変数決定部302は、上記他の変数に加えて繰り返し変数の値を決定する。生成部303は、決定された上記他の変数を周波数モデル関数および振幅モデル関数に適用することによって得られる周波数および振幅の時間変化によって規定される振動パターンを、決定された繰り返し変数が示す回数だけ繰り返すことによって得られる繰り返し振動パターンを示す振動情報を生成する。
(Variation example regarding vibration model variables)
In other embodiments, the functions representing the vibration model (i.e., the frequency model function and the amplitude model function) may be functions whose variables are repeated variables. The repetition variable is a variable that indicates the number of times a vibration pattern defined by variables other than the repetition variable (ie, frequency variable, amplitude variable, and period variable) is repeated. When the function representing the vibration model includes a repeating variable, the variable determining
例えば、図15に示すパターンBの振動パターンを3回繰り返す振動パターンを規定する場合、上記実施形態においては、変数決定部302は、4つの変数(すなわち、変数a1,f1,t1,t2)からなる組を3組決定することになる。これに対して、関数が繰り返し変数を含む場合には、ゲームシステム1は、4つの変数の組を1組と、1つの繰り返し変数とのみを決定することで上記振動パターンを規定することができる。このように、繰り返し変数を用いることによって、繰り返し振動パターンをより少ないデータ量で規定することができる。
For example, when defining a vibration pattern that repeats the vibration pattern of pattern B shown in FIG. 15 three times, in the above embodiment, the variable determining
また、振動モデルが、周波数または振幅が時間に応じて増加または減少する期間を含む場合、当該振動モデルを示す関数は、増加または減少の変化態様を示す変数を含んでいてもよい。この変数は、変化態様が、例えば、線形の変化であるか、放物線に沿った変化であるか、あるいは、サインカーブに沿った変化であるか等を示す。上記変数を用いることによって、ゲームシステム1は、振動パターンにおける周波数および振幅の変化態様を多様にすることができ、振動子をより多様な振動パターンで振動させることができる。
Furthermore, when the vibration model includes a period in which the frequency or amplitude increases or decreases depending on time, the function indicating the vibration model may include a variable indicating the change mode of increase or decrease. This variable indicates, for example, whether the change is linear, along a parabola, or along a sine curve. By using the above variables, the
(コントローラに関する変形例)
上記実施形態および変形例においては、右コントローラ4が備える振動子117の振動を制御する場合を例として説明したが、左コントローラ3が備える振動子についても、右コントローラ4と同様に制御することができる。例えば、左コントローラ3がリング型拡張装置5に装着可能である場合には、リング型拡張装置5は、右コントローラ4の振動子117と同様の処理によって左コントローラ3の振動子を制御することができる。また、本体装置2は、右コントローラ4の振動子117と同様の処理によって、左コントローラの振動子を無線通信によって制御することができる。また、本体装置2は、右コントローラ4および左コントローラ3の両方と通信を行うことによって、2つのコントローラ3および4の振動子を同時に制御するようにしてもよい。
(Modified example regarding controller)
In the above embodiments and modifications, the case where the vibration of the
また、上記実施形態においては、振動子に対する制御を、当該振動子を備える装置(すなわち、右コントローラ4)とは異なる他の装置(すなわち、リング型拡張装置5または本体装置2)が行う場合を例として説明した。ここで、他の実施形態においては、振動子を備える装置自身によって振動子を制御する処理が実行されてもよい。つまり、他の実施形態においては、振動子を備える単一の情報処理装置が、上記関数記憶部、変数決定部、生成部、および、振動制御部を備える構成であってもよい。
Furthermore, in the embodiment described above, the case where the control of the vibrator is performed by another device (i.e., the ring-shaped
上記実施形態においては、振動子117はリニア振動モータであり、振動とともに音を出力する(換言すれば、振動によって音が出力される)ことが可能である。上記実施形態においては、振動子117が出力する振動は、音として出力される振動(すなわち、人間の可聴帯域内の周波数を含む振動)であってもよいし、音として出力されない振動(すなわち、人間の可聴帯域内の周波数を含まない振動)であってもよい。
In the embodiment described above, the
上記実施形態は、振動子の制御に用いられるデータ量を少なくすること等を目的として、例えば、ゲームシステムやゲームプログラムに利用することが可能である。 The embodiments described above can be used, for example, in game systems and game programs for the purpose of reducing the amount of data used to control the vibrator.
1 ゲームシステム
2 本体装置
4 右コントローラ
5 リング型拡張装置
81 プロセッサ
111 通信制御部
112 メモリ
116 コーデック部
117 振動子
213 制御部
301,312 関数記憶部
302,311 変数決定部
303 生成部
304 振動制御部
1
Claims (14)
振動に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数および/または振幅を示す第1変数と、当該期間に関する第2変数とを変数とするモデル関数を記憶する関数記憶部と、
前記第1変数の値と、前記第2変数の値とを決定する変数決定部と、
決定された前記第1変数の値と、決定された前記第2変数の値とを前記モデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを示す振動情報を生成する生成部と、
前記振動情報に基づいて前記振動子の振動を制御する振動制御部とを備える、情報処理システム。 An information processing system including a game controller including a vibrator and a device capable of communicating with the game controller,
a function storage unit that stores a model function that represents a model of time change related to vibration and has as variables a first variable that represents the frequency and/or amplitude of a certain period in the model, and a second variable regarding the period;
a variable determining unit that determines the value of the first variable and the value of the second variable;
A vibration pattern defined by a function indicating a time change in frequency and/or amplitude obtained by applying the determined value of the first variable and the determined value of the second variable to the model function. a generation unit that generates vibration information shown;
An information processing system comprising: a vibration control unit that controls vibration of the vibrator based on the vibration information.
前記変数決定部は、前記複数種類のモデル関数のうち1つを指定する関数指定情報をさらに決定し、
前記生成部は、決定された前記第1変数の値と、決定された前記第2変数の値とを、決定された前記関数指定情報により指定されるモデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを示す前記振動情報を生成する、請求項1に記載の情報処理システム。 The function storage unit stores a plurality of types of model functions representing models of temporal changes in frequency and/or amplitude that are different from each other,
The variable determining unit further determines function designation information that designates one of the plurality of types of model functions,
The generation unit is configured to generate a frequency and a frequency obtained by applying the determined value of the first variable and the determined value of the second variable to a model function specified by the determined function specification information. The information processing system according to claim 1, wherein the information processing system generates the vibration information indicating a vibration pattern defined by a function indicating a temporal change in amplitude.
前記生成部は、決定された複数組の前記第1変数の値と前記第2変数の値との組に基づく複数の振動パターンのうち、振動が生じる期間が互いに重複しない複数の振動パターンを統合することによって得られる1つの振動パターンを示す前記振動情報を生成する、請求項1から請求項5のいずれか1項に記載の情報処理システム。 The variable determining unit determines a plurality of pairs of the value of the first variable and the value of the second variable,
The generation unit integrates a plurality of vibration patterns in which periods in which vibration occurs do not overlap each other, among a plurality of vibration patterns based on the plurality of determined sets of the value of the first variable and the value of the second variable. The information processing system according to any one of claims 1 to 5, wherein the information processing system generates the vibration information indicating one vibration pattern obtained by.
前記変数決定部は、前記第1変数の値と前記第2変数の値との組を、前記第1所定数より大きい第2所定数決定し、
前記生成部は、決定された組に基づく前記第2所定数の振動パターンのうち2以上の振動パターンを統合して1つの振動パターンとすることによって、合わせて前記第1所定数の振動パターンを示す前記第1所定数の振動情報を生成する、請求項6に記載の情報処理システム。 The vibrator is capable of vibrating with a waveform that is a combination of vibration waveforms respectively corresponding to a first predetermined number of vibration information, which is two or more,
The variable determining unit determines a second predetermined number of pairs of the first variable value and the second variable value that are larger than the first predetermined number,
The generation unit integrates two or more vibration patterns of the second predetermined number of vibration patterns based on the determined set into one vibration pattern, thereby generating the first predetermined number of vibration patterns in total. The information processing system according to claim 6, wherein the information processing system generates the first predetermined number of vibration information.
前記変数決定部は、前記繰り返し変数の値をさらに決定し、
前記生成部は、決定された前記第1変数の値と、決定された前記第2変数の値とを当該モデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを、決定された前記繰り返し変数が示す回数だけ繰り返すことによって得られる繰り返し振動パターンを示す振動情報を生成する、請求項1から請求項7のいずれか1項に記載の情報処理システム。 The model function further includes a repeating variable as a variable;
The variable determining unit further determines the value of the repeating variable,
The generation unit is defined by a function indicating a temporal change in frequency and/or amplitude obtained by applying the determined value of the first variable and the determined value of the second variable to the model function. The information processing system according to any one of claims 1 to 7, wherein the information processing system generates vibration information indicating a repeated vibration pattern obtained by repeating the vibration pattern a number of times indicated by the determined repetition variable. .
前記関数記憶部と、
前記変数決定部と、
前記生成部と、
前記振動情報を前記ゲームコントローラへ送信する送信部とを備え、
前記ゲームコントローラは、
前記装置から前記振動情報を受信する受信部と、
前記受信部によって受信された前記振動情報に基づいて前記振動子の振動を制御する前記振動制御部とを備える、請求項1から請求項8のいずれか1項に記載の情報処理システム。 The device includes:
the function storage unit;
the variable determining section;
The generation unit;
a transmitter that transmits the vibration information to the game controller,
The game controller is
a receiving unit that receives the vibration information from the device;
The information processing system according to any one of claims 1 to 8, further comprising: the vibration control unit that controls vibration of the vibrator based on the vibration information received by the reception unit.
前記変数決定部と、
決定された前記第1変数の値および前記第2変数の値を前記ゲームコントローラへ送信する送信部とを備え、
前記ゲームコントローラは、
前記装置から前記第1変数の値および前記第2変数の値を受信する受信部と、
前記受信部によって受信された前記第1変数の値および前記第2変数の値に基づいて前記振動情報を生成する前記生成部と、
前記振動制御部とを備える、請求項1から請求項8のいずれか1項に記載の情報処理システム。 The device includes:
the variable determining section;
a transmitter that transmits the determined value of the first variable and the determined value of the second variable to the game controller,
The game controller is
a receiving unit that receives the value of the first variable and the value of the second variable from the device;
the generation unit that generates the vibration information based on the value of the first variable and the value of the second variable received by the reception unit;
The information processing system according to any one of claims 1 to 8, comprising the vibration control section.
前記装置は前記本体装置とは別の装置である、請求項1から請求項10のいずれか1項に記載の情報処理システム。 The game controller can communicate with the main device,
The information processing system according to any one of claims 1 to 10, wherein the device is a device different from the main body device.
振動に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数および/または振幅を示す第1変数と、当該期間に関する第2変数とを変数とするモデル関数を記憶する関数記憶部と、
前記第1変数の値と、前記第2変数の値とを決定する変数決定部と、
決定された前記第1変数の値と、決定された前記第2変数の値とを前記モデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを示す振動情報を生成する生成部と、
前記振動情報を前記ゲームコントローラへ送信する送信部とを備える、装置。 A device capable of communicating with a game controller including a vibrator,
a function storage unit that stores a model function that represents a model of time change related to vibration and has as variables a first variable that represents the frequency and/or amplitude of a certain period in the model, and a second variable regarding the period;
a variable determining unit that determines the value of the first variable and the value of the second variable;
A vibration pattern defined by a function indicating a time change in frequency and/or amplitude obtained by applying the determined value of the first variable and the determined value of the second variable to the model function. a generation unit that generates vibration information shown;
and a transmitter that transmits the vibration information to the game controller.
前記情報処理装置は、振動に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数および/または振幅を示す第1変数と、当該期間に関する第2変数とを変数とするモデル関数を記憶し、
前記情報処理プログラムは、
前記第1変数の値と、前記第2変数の値とを決定する変数決定手段と、
決定された前記第1変数の値と、決定された前記第2変数の値とを前記モデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを示す振動情報を生成する生成手段として前記コンピュータを機能させ、
前記振動子は前記振動情報に基づいて制御される、情報処理プログラム。 An information processing program executed on a computer of an information processing device capable of communicating with a game controller including a vibrator,
The information processing device stores a model function that represents a model of vibration-related changes over time, and has as variables a first variable that represents the frequency and/or amplitude of a certain period in the model, and a second variable that relates to the period,
The information processing program includes:
Variable determining means for determining the value of the first variable and the value of the second variable;
A vibration pattern defined by a function indicating a time change in frequency and/or amplitude obtained by applying the determined value of the first variable and the determined value of the second variable to the model function. causing the computer to function as a generation means for generating vibration information shown;
An information processing program, wherein the vibrator is controlled based on the vibration information.
前記情報処理システムは、振動に関する時間変化のモデルを示し、当該モデルにおけるある期間の周波数および/または振幅を示す第1変数と、当該期間に関する第2変数とを変数とするモデル関数を記憶しており、
前記第1変数の値と、前記第2変数の値とを決定する変数決定ステップと、
決定された前記第1変数の値と、決定された前記第2変数の値とを前記モデル関数に適用することによって得られる周波数および/または振幅の時間変化を示す関数によって規定される振動パターンを示す振動情報を生成する生成ステップと、
前記振動情報に基づいて前記振動子の振動を制御する振動制御ステップとを備える、情報処理方法。 An information processing method executed in an information processing system including a game controller including a vibrator and a device capable of communicating with the game controller, the method comprising:
The information processing system stores a model function that represents a model of vibration-related changes over time, and has as variables a first variable that represents the frequency and/or amplitude of a certain period in the model, and a second variable that relates to the period. Ori,
a variable determining step of determining a value of the first variable and a value of the second variable;
A vibration pattern defined by a function indicating a time change in frequency and/or amplitude obtained by applying the determined value of the first variable and the determined value of the second variable to the model function. a generation step of generating vibration information shown;
and a vibration control step of controlling vibration of the vibrator based on the vibration information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020116256A JP7386137B2 (en) | 2019-08-30 | 2020-07-06 | Information processing system, information processing program, information processing method, and information processing device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019158232A JP6731531B1 (en) | 2019-08-30 | 2019-08-30 | Information processing system, information processing program, information processing method, and information processing apparatus |
JP2020116256A JP7386137B2 (en) | 2019-08-30 | 2020-07-06 | Information processing system, information processing program, information processing method, and information processing device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019158232A Division JP6731531B1 (en) | 2019-08-30 | 2019-08-30 | Information processing system, information processing program, information processing method, and information processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021037269A JP2021037269A (en) | 2021-03-11 |
JP7386137B2 true JP7386137B2 (en) | 2023-11-24 |
Family
ID=88833432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020116256A Active JP7386137B2 (en) | 2019-08-30 | 2020-07-06 | Information processing system, information processing program, information processing method, and information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7386137B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2024077663A (en) * | 2022-11-29 | 2024-06-10 | オムロン株式会社 | Operating device and adjustment system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015066292A (en) | 2013-09-30 | 2015-04-13 | 株式会社バンダイナムコゲームス | Game machine and program |
JP2016170589A (en) | 2015-03-12 | 2016-09-23 | ソニー株式会社 | Information processing apparatus, information processing method, and program |
JP2018020088A (en) | 2016-07-26 | 2018-02-08 | 任天堂株式会社 | Vibration control system, vibration control method and vibration control program |
JP2018110653A (en) | 2017-01-10 | 2018-07-19 | 任天堂株式会社 | Game system, game program, game apparatus, and game method |
JP2018206012A (en) | 2017-06-02 | 2018-12-27 | 任天堂株式会社 | Information processing system, information processing program, information processor, and method for information processing |
-
2020
- 2020-07-06 JP JP2020116256A patent/JP7386137B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015066292A (en) | 2013-09-30 | 2015-04-13 | 株式会社バンダイナムコゲームス | Game machine and program |
JP2016170589A (en) | 2015-03-12 | 2016-09-23 | ソニー株式会社 | Information processing apparatus, information processing method, and program |
JP2018020088A (en) | 2016-07-26 | 2018-02-08 | 任天堂株式会社 | Vibration control system, vibration control method and vibration control program |
JP2018110653A (en) | 2017-01-10 | 2018-07-19 | 任天堂株式会社 | Game system, game program, game apparatus, and game method |
JP2018206012A (en) | 2017-06-02 | 2018-12-27 | 任天堂株式会社 | Information processing system, information processing program, information processor, and method for information processing |
Non-Patent Citations (1)
Title |
---|
中田一紀 外2名,ハプティックアクチュエータを利用した対話型音階提示システム,Human Interface 2018 TRANSBORDER [DVD-ROM] ヒューマンインタフェースシンポジウム2018 論文集,2018年09月07日,p.447~450 |
Also Published As
Publication number | Publication date |
---|---|
JP2021037269A (en) | 2021-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10456665B2 (en) | Information processing system, non-transitory storage medium having information processing program stored therein, information processing apparatus, and information processing method | |
EP3343327B1 (en) | Vibration control system, vibration control apparatus, vibration control program and vibration control method | |
JP6768130B1 (en) | Information processing system, information processing program, and information processing method | |
US10596459B2 (en) | Systems, methods, and/or computer readable storage medium having program, for localized haptic feedback based on position of virtual object | |
US10850191B2 (en) | Game system, non-transitory storage medium having stored therein game program, game apparatus, and game method | |
US10661162B2 (en) | Game system, non-transitory storage medium having stored therein game program, game apparatus, and game method | |
JP7386137B2 (en) | Information processing system, information processing program, information processing method, and information processing device | |
JP6731531B1 (en) | Information processing system, information processing program, information processing method, and information processing apparatus | |
EP3231492A1 (en) | Vibration control system, vibration output apparatus, vibration output program, and vibration output method | |
US10983490B2 (en) | Vibration control system, method and apparatus with game controller | |
JP6670030B1 (en) | Peripheral device, game controller, information processing system, and information processing method | |
US10661163B2 (en) | Video game with haptic signal that is disabled based on losing contact with a surface | |
JP2021037260A (en) | Peripheral device, game controller, information processing system, and information processing method | |
US11040284B2 (en) | Information processing system, storage medium having stored therein information processing program, information processing apparatus, and information processing method | |
KR101947955B1 (en) | Vibration device using sound and system comprising the same | |
JP7340556B2 (en) | vibration control system | |
US11938396B2 (en) | Game system, non-transitory computer-readable storage medium having stored therein information processing program, information processing apparatus, and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220609 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230714 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20231102 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231113 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7386137 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |