JP2010252862A - Game device and game program - Google Patents

Game device and game program Download PDF

Info

Publication number
JP2010252862A
JP2010252862A JP2009103231A JP2009103231A JP2010252862A JP 2010252862 A JP2010252862 A JP 2010252862A JP 2009103231 A JP2009103231 A JP 2009103231A JP 2009103231 A JP2009103231 A JP 2009103231A JP 2010252862 A JP2010252862 A JP 2010252862A
Authority
JP
Japan
Prior art keywords
value
angular velocity
game
parameter
predetermined
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.)
Granted
Application number
JP2009103231A
Other languages
Japanese (ja)
Other versions
JP5443042B2 (en
Inventor
Takayuki Shimamura
隆行 嶋村
Takeshi Miyamoto
健 宮本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2009103231A priority Critical patent/JP5443042B2/en
Priority to US12/504,906 priority patent/US9352218B2/en
Publication of JP2010252862A publication Critical patent/JP2010252862A/en
Priority to US13/668,759 priority patent/US8469814B2/en
Priority to US13/668,655 priority patent/US8986119B2/en
Application granted granted Critical
Publication of JP5443042B2 publication Critical patent/JP5443042B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a game device and a game program allowing a player to comfortably play games to be executed based on angular velocity data obtained from an angular velocity sensor. <P>SOLUTION: Twist amounts of an input device when the player performs the shooting operation for the first to fourth shot are stored in an outside memory, and the twist amount of the input device obtained when the shooting operation is performed for the fifth shot and thereafter is corrected by using the twist amounts for the first to fourth shots when the player performs the shooting operation for the fifth shot and thereafter. More specifically, the average of the twist amounts for the first to fourth shot is subtracted from the twist amount of the input device when the player performs the shooting operation for the fifth shot or thereafter. The success or failure of the fifth shot or thereafter is determined based on the twist amount corrected in this way. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、ゲーム装置及びゲームプログラムに関し、より特定的には、コントローラに設けられた角速度センサから取得される角速度データを含む操作データに基づいてゲーム処理を行うゲーム装置及びゲームプログラムに関する。   The present invention relates to a game device and a game program, and more specifically to a game device and a game program that perform game processing based on operation data including angular velocity data acquired from an angular velocity sensor provided in a controller.

従来、コントローラに設けられたジャイロセンサから取得される角速度を含む操作データに基づいてゲーム処理を行うゲーム装置が存在する。例えば、特許文献1に開示されているゲーム装置では、コントローラに設けられた多軸ジャイロセンサから取得される角速度などの情報に基づいて、仮想ゲーム空間におけるキャラクターの刀の動きが制御される。   2. Description of the Related Art Conventionally, there are game devices that perform game processing based on operation data including angular velocity acquired from a gyro sensor provided in a controller. For example, in the game device disclosed in Patent Document 1, the movement of the character's sword in the virtual game space is controlled based on information such as angular velocity acquired from a multi-axis gyro sensor provided in the controller.

特開2000−308756号公報JP 2000-308756 A

しかしながら、上記特許文献1に記載のゲーム装置のように、角速度センサから取得される角速度データに基づいて実行されるゲームでは、従来のボタンスイッチの操作などと比べて、プレイヤの腕や手首の動きの癖が大きく影響するため、プレイヤ毎に有利不利が生じてしまうという問題がある。   However, in the game executed based on the angular velocity data acquired from the angular velocity sensor, such as the game device described in Patent Document 1, the movement of the player's arm and wrist compared to the conventional button switch operation and the like. Since the wrinkles of the game are greatly affected, there is a problem that an advantage or disadvantage occurs for each player.

それゆえに本発明の目的は、角速度センサから取得される角速度データに基づいて実行されるゲームにおいて、プレイヤが快適にゲームをプレイすることのできるゲーム装置及びゲームプログラムを提供することである。   SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a game device and a game program that allow a player to comfortably play a game in a game executed based on angular velocity data acquired from an angular velocity sensor.

本発明は、上記の課題を解決するために、以下の構成を採用した。なお、本欄における括弧内の参照符号、図番号及び補足説明は、本発明の理解を助けるために、後述する実施形態との対応関係の一例を示したものであって、本発明を何ら限定するものではない。   The present invention employs the following configuration in order to solve the above problems. Note that the reference numerals, figure numbers, and supplementary explanations in parentheses in this column show examples of correspondences with embodiments described later in order to help understanding of the present invention, and the present invention is not limited in any way. Not what you want.

本発明のゲーム装置(3)は、角速度センサ(55、56)の設けられたコントローラ(8)を用いた所定のゲーム操作(シュート操作)をプレイヤに複数回行わせるゲームを実行し、当該所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データを含む操作データ(62)に基づいたゲーム処理を行うゲーム装置であって、パラメータ値決定手段(10)と、ずれ傾向値算出手段(10)と、ゲーム処理手段(10)とを備える。
上記パラメータ値決定手段は、前記所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データに基づいて所定のパラメータの値(ひねり量R)を決定する(S25)。
上記ずれ傾向値算出手段は、前記パラメータの値が、ゲームにおいて要求される当該パラメータの目標値(「0」)に対してどのようにずれる傾向にあるかを示すずれ傾向値(「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値)を、過去に行われた1回以上の前記所定のゲーム操作に応じて決定された前記パラメータの値(「1投目のひねり量R1」〜「4投目のひねり量R4」)に基づいて算出する(S27)。
上記ゲーム処理手段は、前記パラメータ値決定手段によって決定された前記パラメータの値を、前記ずれ傾向値算出手段によって算出されたずれ傾向値を用いて補正して(S27)、当該補正後の前記パラメータの値を用いてゲーム処理を行う(S30)。
The game apparatus (3) of the present invention executes a game that causes a player to perform a predetermined game operation (shoot operation) a plurality of times using the controller (8) provided with the angular velocity sensors (55, 56). A game device that performs a game process based on operation data (62) including angular velocity data acquired from the angular velocity sensor every time a game operation is performed, the parameter value determining means (10), and a deviation tendency value calculation Means (10) and game processing means (10) are provided.
The parameter value determining means determines a predetermined parameter value (twist amount R) based on angular velocity data acquired from the angular velocity sensor every time the predetermined game operation is performed (S25).
The deviation tendency value calculation means is a deviation tendency value ("first throw" indicating how the parameter value tends to deviate from the target value ("0") of the parameter required in the game. The twist value R1 "to" the average value of the fourth throw twist amount R4 ") is the value of the parameter (" first throw "determined in accordance with one or more predetermined game operations performed in the past). (Twisting amount R1 "to" twisting twisting amount R4 ")) (S27).
The game processing means corrects the value of the parameter determined by the parameter value determination means by using the deviation tendency value calculated by the deviation tendency value calculation means (S27), and the corrected parameter Game processing is performed using the value of (S30).

前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作(1投目〜4投目のシュート操作)に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値に基づいて前記ずれ傾向値を算出する、請求項1記載のゲーム装置。   The deviation tendency value calculation means is a value of each parameter determined by the parameter value determination means in accordance with a plurality of the predetermined game operations (first to fourth shot operations) performed in the past. The game device according to claim 1, wherein the shift tendency value is calculated based on the game device.

前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値と前記目標値との間の差分の代表値(平均値、加重平均値、最頻値、中央値)を、前記ずれ傾向値として算出する、請求項2記載のゲーム装置。   The deviation tendency value calculating means is a representative value of a difference between each parameter value and the target value determined by the parameter value determining means in response to a plurality of predetermined game operations performed in the past. The game device according to claim 2, wherein (average value, weighted average value, mode value, median value) is calculated as the deviation tendency value.

前記代表値は平均値である、請求項3記載のゲーム装置。   The game device according to claim 3, wherein the representative value is an average value.

前記ずれ傾向値算出手段は、前記パラメータ値決定手段によって決定された前記パラメータの値から前記ずれ傾向値算出手段によって算出されたずれ傾向値を減算することによって、当該パラメータの値を補正する、請求項3または請求項4に記載のゲーム装置。   The deviation tendency value calculation means corrects the parameter value by subtracting the deviation tendency value calculated by the deviation tendency value calculation means from the parameter value determined by the parameter value determination means. Item 5. A game device according to Item 4 or Item 4.

前記ゲーム処理手段は、前記ずれ傾向値算出手段によって前記ずれ傾向値がまだ算出されていない間は、前記パラメータ値決定手段によって決定された前記パラメータの値を前記ずれ傾向値で補正することなくそのまま用いてゲーム処理を行う、請求項1記載のゲーム装置。   The game processing means does not correct the parameter value determined by the parameter value determination means with the deviation tendency value as long as the deviation tendency value is not yet calculated by the deviation tendency value calculation means. The game device according to claim 1, wherein game processing is performed using the game device.

前記ゲーム処理手段は、前記パラメータの値と前記目標値との差分が所定の範囲(成功範囲、図25)内であるときに前記ゲーム操作が成功したと判定する判定手段を含む、請求項1記載のゲーム装置。   The game processing means includes determination means for determining that the game operation is successful when a difference between the parameter value and the target value is within a predetermined range (success range, FIG. 25). The game device described.

前記パラメータ値決定手段は、前記角速度データが所定の条件を満たしたときに、前記所定のゲーム操作が行われたと判断し(S21)、前記角速度センサから取得される角速度データに基づいて前記パラメータの値を決定する、請求項1記載のゲーム装置。   The parameter value determination means determines that the predetermined game operation has been performed when the angular velocity data satisfies a predetermined condition (S21), and sets the parameter based on the angular velocity data acquired from the angular velocity sensor. The game device according to claim 1, wherein a value is determined.

前記所定の条件は、前記角速度データが示す角速度(振り強さP)の大きさが極大となり、かつ当該角速度の極大値が所定の閾値(投球閾値)よりも大きいことである(S21)、請求項8記載のゲーム装置。   The predetermined condition is that the angular velocity (swing strength P) indicated by the angular velocity data is a maximum, and the maximum value of the angular velocity is larger than a predetermined threshold (throwing threshold) (S21). Item 9. A game device according to Item 8.

前記角速度センサから取得される角速度データを逐次記憶する角速度記憶手段(12)をさらに備え、
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該角速度が極大となる前の所定期間における角速度データ(直近の数サンプル分の角速度データ)を前記角速度記憶手段から読み出して、当該角速度データに基づいて前記コントローラの所定軸(Z軸)回りの角速度を検出し、当該検出された前記コントローラの所定軸回りの角速度(ひねり量R)を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの所定軸回りの角速度に基づいて、仮想ゲーム空間における所定のオブジェクト(ボール)の移動方向(方位角φ)を変化させる、請求項9記載のゲーム装置。
Angular velocity storage means (12) for sequentially storing angular velocity data acquired from the angular velocity sensor;
The parameter value determining means determines the angular velocity data for the predetermined period before the maximum of the angular velocity when the angular velocity indicated by the angular velocity data is a maximum and the maximum value of the angular velocity is greater than a predetermined threshold. Are read from the angular velocity storage means, the angular velocity around the predetermined axis (Z axis) of the controller is detected based on the angular velocity data, and the detected angular velocity data around the predetermined axis of the controller is detected. Determine the angular velocity (twist amount R) as the value of the parameter,
The game processing means changes a moving direction (azimuth angle φ) of a predetermined object (ball) in the virtual game space based on an angular velocity around the predetermined axis of the controller corrected using the deviation tendency value. Item 10. A game device according to Item 9.

前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該極大値(振り強さPの極大値)を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記極大値に基づいて、仮想ゲーム空間における所定のオブジェクト(ボール)の移動速度(初速度V)および/または到達距離を変化させる、請求項9記載のゲーム装置。
The parameter value determining means determines the maximum value (maximum value of the swing strength P) when the magnitude of the angular velocity indicated by the angular velocity data is a maximum and the maximum value of the angular velocity is greater than a predetermined threshold. Determined as the value of
The game processing means changes a moving speed (initial speed V) and / or a reach distance of a predetermined object (ball) in the virtual game space based on the maximum value corrected using the deviation tendency value. Item 10. A game device according to Item 9.

前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該加速度の極大値が所定の閾値より大きいときに、当該時点において前記角速度センサから取得される角速度データに基づいて検出される前記コントローラの姿勢(コントローラ5のピッチ方向の姿勢)を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの姿勢に基づいて、仮想ゲーム空間における所定のオブジェクト(ボール)の移動方向(仰角θ)を変化させる、請求項9記載のゲーム装置。
The parameter value determining means is based on the angular velocity data acquired from the angular velocity sensor at the time when the magnitude of the angular velocity indicated by the angular velocity data is maximal and the maximal value of the acceleration is larger than a predetermined threshold. The detected attitude of the controller (the attitude of the controller 5 in the pitch direction) is determined as the value of the parameter,
The game according to claim 9, wherein the game processing means changes a moving direction (elevation angle θ) of a predetermined object (ball) in the virtual game space based on the posture of the controller corrected using the deviation tendency value. apparatus.

本発明のゲームプログラム(61)は、角速度センサ(55、56)の設けられたコントローラ(8)を用いた所定のゲーム操作(シュート操作)をプレイヤに複数回行わせるゲームを実行し、当該所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データを含む操作データ(62)に基づいたゲーム処理を行うゲーム装置(3)のコンピュータ(10)を、パラメータ値決定手段、ずれ傾向値算出手段およびゲーム処理手段として機能させる。
上記パラメータ値決定手段は、前記所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データに基づいて所定のパラメータの値(ひねり量R)を決定する(S25)。
上記ずれ傾向値算出手段は、前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定される前記パラメータの値が、ゲームにおいて要求される当該パラメータの目標値(「0」)に対してどのようにずれる傾向にあるかを示すずれ傾向値(「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値)を、過去に行われた1回以上の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された前記パラメータの値(「1投目のひねり量R1」〜「4投目のひねり量R4」)に基づいて算出する(S27)。
上記ゲーム処理手段は、前記パラメータ値決定手段によって決定された前記パラメータの値を、前記ずれ傾向値算出手段によって算出されたずれ傾向値を用いて補正して(S27)、当該補正後の前記パラメータの値を用いてゲーム処理を行う(S30)。
The game program (61) of the present invention executes a game that causes a player to perform a predetermined game operation (shoot operation) a plurality of times using a controller (8) provided with angular velocity sensors (55, 56). When the game operation is performed, the computer (10) of the game apparatus (3) that performs the game process based on the operation data (62) including the angular velocity data acquired from the angular velocity sensor, the parameter value determining means, the deviation tendency It functions as a value calculation means and a game processing means.
The parameter value determining means determines a predetermined parameter value (twist amount R) based on angular velocity data acquired from the angular velocity sensor every time the predetermined game operation is performed (S25).
The deviation tendency value calculating means determines which value of the parameter determined by the parameter value determining means according to the predetermined game operation is relative to a target value (“0”) of the parameter required in the game. A deviation tendency value (an average value of “twisting amount R1 of the first throw” to “twisting amount R4 of the fourth throw”) indicating whether or not there is a tendency to deviate is determined at least once in the past. Calculation is performed based on the parameter values ("twisted twist amount R1" to "fourth twisted amount R4") determined by the parameter value determining means according to the game operation (S27).
The game processing means corrects the value of the parameter determined by the parameter value determination means by using the deviation tendency value calculated by the deviation tendency value calculation means (S27), and the corrected parameter Game processing is performed using the value of (S30).

本発明によれば、角速度センサから取得される角速度データに基づいて実行されるゲームにおいて、プレイヤが快適にゲームをプレイすることのできるゲーム装置及びゲームプログラムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, in the game performed based on the angular velocity data acquired from an angular velocity sensor, the game device and game program which a player can play a game comfortably can be provided.

ゲームシステムの外観図External view of game system ゲーム装置の機能ブロック図Functional block diagram of game device 入力装置の外観構成を示す斜視図The perspective view which shows the external appearance structure of an input device コントローラの外観構成を示す斜視図Perspective view showing the external configuration of the controller コントローラの内部構造を示す図Diagram showing the internal structure of the controller コントローラの内部構造を示す図Diagram showing the internal structure of the controller 入力装置の構成を示すブロック図Block diagram showing the configuration of the input device 入力装置8を用いてゲーム操作するときの状態を概説する図The figure which outlines the state when operating a game using the input device 8 テレビ2の画面に表示されるゲーム画像の一例An example of a game image displayed on the screen of the television 2 テレビ2の画面に表示されるゲーム画像の一例An example of a game image displayed on the screen of the television 2 テレビ2の画面に表示されるゲーム画像の一例An example of a game image displayed on the screen of the television 2 テレビ2の画面に表示されるゲーム画像の一例An example of a game image displayed on the screen of the television 2 テレビ2の画面に表示されるゲーム画像の一例An example of a game image displayed on the screen of the television 2 外部メインメモリ12のメモリマップの一例Example of memory map of external main memory 12 ゲーム装置3において実行されるゲーム処理の流れを示すメインフローチャートMain flowchart showing a flow of game processing executed in the game apparatus 3 図15におけるシュート処理(ステップS16)の詳細を示すフローチャートThe flowchart which shows the detail of the chute process (step S16) in FIG. シュート操作時のプレイヤの腕の動きを示す図The figure which shows the movement of the player's arm at the time of shooting operation シュート操作時の振り強さPの変化を示す図The figure which shows the change of swing strength P at the time of chute operation 振り強さPの極大値の検出方法およびシュートタイミングの決定方法を説明するための図The figure for demonstrating the detection method of the maximum value of swing strength P, and the determination method of chute timing 仮想3次元ゲーム空間における投球方向を示す図The figure which shows the throwing direction in virtual 3D game space 投球方向の仰角θの決定方法を示す図The figure which shows the determination method of elevation angle theta of throwing direction ボールの初速度の決定方法を示す図Diagram showing how to determine the initial velocity of the ball 難易度に応じた成功下限ひねり量Rminの決定方法を示す図The figure which shows the determination method of the success lower limit twist amount Rmin according to the difficulty level 難易度に応じた成功上限ひねり量Rmaxの決定方法を示す図The figure which shows the determination method of the success upper limit twist amount Rmax according to the difficulty level 難易度が5であるときの投球方向の方位角φの決定方法を示す図The figure which shows the determination method of azimuth angle (phi) of a pitching direction when difficulty is 5. 難易度が15であるときの投球方向の方位角φの決定方法を示す図The figure which shows the determination method of the azimuth | direction angle (phi) of a pitching direction when difficulty is 15. シュートの成否に基づく難易度の更新方法の第1の例First example of difficulty update method based on success or failure of a shot シュートの成否に基づく難易度の更新方法の第2の例Second example of difficulty update method based on success or failure of shoot シュートの成否に基づく難易度の更新方法の第3の例Third example of difficulty update method based on success or failure of the shot プレイヤキャラクタとリングの間の距離と難易度オフセットの関係を示す図The figure which shows the relationship between the distance between a player character and a ring, and difficulty offset

[ゲームシステムの全体構成]
図1を参照して、本発明の一実施形態に係るゲーム装置を含むゲームシステム1について説明する。図1は、ゲームシステム1の外観図である。以下、据置型のゲーム装置を一例にして、本実施形態のゲーム装置及びゲームプログラムについて説明する。図1において、ゲームシステム1は、テレビジョン受像器(以下、単に「テレビ」と記載する)2、ゲーム装置3、光ディスク4、入力装置8、及びマーカ部6を含む。本システムは、入力装置8を用いたゲーム操作に基づいてゲーム装置3でゲーム処理を実行するものである。
[Overall configuration of game system]
A game system 1 including a game device according to an embodiment of the present invention will be described with reference to FIG. FIG. 1 is an external view of the game system 1. Hereinafter, the game apparatus and the game program of the present embodiment will be described using a stationary game apparatus as an example. In FIG. 1, the game system 1 includes a television receiver (hereinafter simply referred to as “TV”) 2, a game device 3, an optical disk 4, an input device 8, and a marker unit 6. In the present system, game processing is executed by the game device 3 based on a game operation using the input device 8.

ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、ゲーム装置3において実行されるためのゲームプログラムが記憶されている。ゲーム装置3の前面には光ディスク4の挿入口が設けられている。ゲーム装置3は、挿入口に挿入された光ディスク4に記憶されているゲームプログラムを読み出して実行することによってゲーム処理を実行する。   An optical disk 4 that is an example of an information storage medium that can be used interchangeably with the game apparatus 3 is detachably inserted into the game apparatus 3. The optical disc 4 stores a game program to be executed on the game apparatus 3. An insertion slot for the optical disk 4 is provided on the front surface of the game apparatus 3. The game apparatus 3 executes a game process by reading and executing a game program stored in the optical disc 4 inserted into the insertion slot.

ゲーム装置3には、表示装置の一例であるテレビ2が接続コードを介して接続される。テレビ2は、ゲーム装置3において実行されるゲーム処理の結果得られるゲーム画像を表示する。また、テレビ2の画面の周辺(図1では画面の上側)には、マーカ部6が設置される。マーカ部6は、その両端に2つのマーカ6R及び6Lを備えている。マーカ6R(マーカ6Lも同様)は、具体的には1以上の赤外LEDであり、テレビ2の前方に向かって赤外光を出力する。マーカ部6はゲーム装置3に接続されており、ゲーム装置3はマーカ部6が備える各赤外LEDの点灯を制御することが可能である。   A television 2 which is an example of a display device is connected to the game apparatus 3 via a connection cord. The television 2 displays a game image obtained as a result of the game process executed in the game device 3. In addition, a marker unit 6 is installed around the screen of the television 2 (upper side of the screen in FIG. 1). The marker unit 6 includes two markers 6R and 6L at both ends thereof. The marker 6R (same for the marker 6L) is specifically one or more infrared LEDs, and outputs infrared light toward the front of the television 2. The marker unit 6 is connected to the game apparatus 3, and the game apparatus 3 can control lighting of each infrared LED included in the marker unit 6.

入力装置8は、自機に対して行われた操作の内容を示す操作データをゲーム装置3に与えるものである。本実施形態では、入力装置8はコントローラ5とジャイロセンサユニット7とを含む。詳細は後述するが、入力装置8は、コントローラ5に対してジャイロセンサユニット7が着脱可能に接続されている構成である。コントローラ5とゲーム装置3とは無線通信によって接続される。本実施形態では、コントローラ5とゲーム装置3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ5とゲーム装置3とは有線で接続されてもよい。   The input device 8 gives operation data indicating the content of the operation performed on the own device to the game device 3. In the present embodiment, the input device 8 includes a controller 5 and a gyro sensor unit 7. Although details will be described later, the input device 8 has a configuration in which a gyro sensor unit 7 is detachably connected to the controller 5. The controller 5 and the game apparatus 3 are connected by wireless communication. In the present embodiment, for example, Bluetooth (registered trademark) technology is used for wireless communication between the controller 5 and the game apparatus 3. In other embodiments, the controller 5 and the game apparatus 3 may be connected by wire.

[ゲーム装置3の内部構成]
次に、図2を参照して、ゲーム装置3の内部構成について説明する。図2は、ゲーム装置3の構成を示すブロック図である。ゲーム装置3は、CPU10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、及びAV−IC15等を有する。
[Internal configuration of game device 3]
Next, the internal configuration of the game apparatus 3 will be described with reference to FIG. FIG. 2 is a block diagram showing a configuration of the game apparatus 3. The game apparatus 3 includes a CPU 10, a system LSI 11, an external main memory 12, a ROM / RTC 13, a disk drive 14, an AV-IC 15 and the like.

CPU10は、光ディスク4に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14及びAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。システムLSI11の内部構成については後述する。揮発性の外部メインメモリ12は、光ディスク4から読み出されたゲームプログラムや、フラッシュメモリ17から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置3の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC:Real Time Clock)とを有する。ディスクドライブ14は、光ディスク4からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ11e又は外部メインメモリ12に読み出したデータを書き込む。   The CPU 10 executes a game process by executing a game program stored on the optical disc 4, and functions as a game processor. The CPU 10 is connected to the system LSI 11. In addition to the CPU 10, an external main memory 12, a ROM / RTC 13, a disk drive 14, and an AV-IC 15 are connected to the system LSI 11. The system LSI 11 performs processing such as control of data transfer between components connected thereto, generation of an image to be displayed, and acquisition of data from an external device. The internal configuration of the system LSI 11 will be described later. The volatile external main memory 12 stores a program such as a game program read from the optical disc 4 or a game program read from the flash memory 17, or stores various data. Used as a work area and buffer area. The ROM / RTC 13 includes a ROM (so-called boot ROM) in which a program for starting the game apparatus 3 is incorporated, and a clock circuit (RTC: Real Time Clock) that counts time. The disk drive 14 reads program data, texture data, and the like from the optical disk 4 and writes the read data to an internal main memory 11e or an external main memory 12 described later.

また、システムLSI11には、入出力プロセッサ(I/Oプロセッサ)11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM11d、及び内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。   Further, the system LSI 11 is provided with an input / output processor (I / O processor) 11a, a GPU (Graphics Processor Unit) 11b, a DSP (Digital Signal Processor) 11c, a VRAM 11d, and an internal main memory 11e. Although not shown, these components 11a to 11e are connected to each other by an internal bus.

GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。   The GPU 11b forms part of a drawing unit and generates an image according to a graphics command (drawing command) from the CPU 10. The VRAM 11d stores data (data such as polygon data and texture data) necessary for the GPU 11b to execute the graphics command. When an image is generated, the GPU 11b creates image data using data stored in the VRAM 11d.

DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。   The DSP 11c functions as an audio processor, and generates sound data using sound data and sound waveform (tone color) data stored in the internal main memory 11e and the external main memory 12.

上述のように生成された画像データ及び音声データは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、画像がテレビ2に表示されるとともに音がスピーカ2aから出力される。   The image data and audio data generated as described above are read out by the AV-IC 15. The AV-IC 15 outputs the read image data to the television 2 via the AV connector 16, and outputs the read audio data to the speaker 2 a built in the television 2. As a result, an image is displayed on the television 2 and a sound is output from the speaker 2a.

入出力プロセッサ11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、無線通信モジュール18、無線コントローラモジュール19、拡張コネクタ20、及びメモリカード用コネクタ21に接続される。無線通信モジュール18にはアンテナ22が接続され、無線コントローラモジュール19にはアンテナ23が接続される。   The input / output processor 11a performs transmission / reception of data to / from components connected to the input / output processor 11a and downloads data from an external device. The input / output processor 11 a is connected to the flash memory 17, the wireless communication module 18, the wireless controller module 19, the expansion connector 20, and the memory card connector 21. An antenna 22 is connected to the wireless communication module 18 and an antenna 23 is connected to the wireless controller module 19.

入出力プロセッサ11aは、無線通信モジュール18及びアンテナ22を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、無線通信モジュール18及びアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22及び無線通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10はゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、ゲーム装置3と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置3を利用してプレイしたゲームのセーブデータ(ゲームの結果データ又は途中データ)が記憶されてもよい。   The input / output processor 11a is connected to the network via the wireless communication module 18 and the antenna 22, and can communicate with other game devices and various servers connected to the network. The input / output processor 11a periodically accesses the flash memory 17 to detect the presence / absence of data that needs to be transmitted to the network. If there is such data, the input / output processor 11a communicates with the network via the wireless communication module 18 and the antenna 22. Send. The input / output processor 11a receives data transmitted from other game devices and data downloaded from the download server via the network, the antenna 22 and the wireless communication module 18, and receives the received data in the flash memory 17. Remember. By executing the game program, the CPU 10 reads out the data stored in the flash memory 17 and uses it in the game program. In the flash memory 17, in addition to data transmitted and received between the game apparatus 3 and other game apparatuses and various servers, save data (game result data or intermediate data) of a game played using the game apparatus 3 May be stored.

また、入出力プロセッサ11aは、コントローラ5から送信される操作データをアンテナ23及び無線コントローラモジュール19を介して受信し、内部メインメモリ11e又は外部メインメモリ12のバッファ領域に記憶(一時記憶)する。   Further, the input / output processor 11 a receives operation data transmitted from the controller 5 via the antenna 23 and the wireless controller module 19 and stores (temporarily stores) it in the buffer area of the internal main memory 11 e or the external main memory 12.

さらに、入出力プロセッサ11aには、拡張コネクタ20及びメモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール18に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20やメモリカード用コネクタ21を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。   Furthermore, an expansion connector 20 and a memory card connector 21 are connected to the input / output processor 11a. The expansion connector 20 is a connector for an interface such as USB or SCSI, and connects a medium such as an external storage medium, a peripheral device such as another controller, or a wired communication connector. By connecting, communication with the network can be performed instead of the wireless communication module 18. The memory card connector 21 is a connector for connecting an external storage medium such as a memory card. For example, the input / output processor 11a can access an external storage medium via the expansion connector 20 or the memory card connector 21 to store data in the external storage medium or read data from the external storage medium.

ゲーム装置3には、電源ボタン24、リセットボタン25、及びイジェクトボタン26が設けられる。電源ボタン24及びリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンされると、ゲーム装置3の各構成要素に対して、図示しないACアダプタを経て電源が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。   The game apparatus 3 is provided with a power button 24, a reset button 25, and an eject button 26. The power button 24 and the reset button 25 are connected to the system LSI 11. When the power button 24 is turned on, power is supplied to each component of the game apparatus 3 via an AC adapter (not shown). When the reset button 25 is pressed, the system LSI 11 restarts the boot program for the game apparatus 3. The eject button 26 is connected to the disk drive 14. When the eject button 26 is pressed, the optical disk 4 is ejected from the disk drive 14.

[入力装置8の構成]
次に、図3〜図6を参照して、入力装置8について説明する。図3は、入力装置8の外観構成を示す斜視図である。図4は、コントローラ5の外観構成を示す斜視図である。図3は、コントローラ5の上側後方から見た斜視図であり、図4は、コントローラ5を下側前方から見た斜視図である。
[Configuration of Input Device 8]
Next, the input device 8 will be described with reference to FIGS. FIG. 3 is a perspective view showing an external configuration of the input device 8. FIG. 4 is a perspective view showing an external configuration of the controller 5. 3 is a perspective view of the controller 5 as seen from the upper rear side, and FIG. 4 is a perspective view of the controller 5 as seen from the lower front side.

図3及び図4において、コントローラ5は、例えばプラスチック成型によって形成されたハウジング31を有している。ハウジング31は、その前後方向(図3に示すZ軸方向)を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。プレイヤは、コントローラ5に設けられたボタンを押下すること、及び、コントローラ5自体を動かしてその位置や姿勢を変えることによってゲーム操作を行うことができる。   3 and 4, the controller 5 has a housing 31 formed by plastic molding, for example. The housing 31 has a substantially rectangular parallelepiped shape whose longitudinal direction is the front-rear direction (the Z-axis direction shown in FIG. 3), and is a size that can be gripped with one hand of an adult or a child as a whole. The player can perform a game operation by pressing a button provided on the controller 5 and moving the controller 5 itself to change its position and posture.

ハウジング31には、複数の操作ボタンが設けられる。図3に示すように、ハウジング31の上面には、十字ボタン32a、1番ボタン32b、2番ボタン32c、Aボタン32d、マイナスボタン32e、ホームボタン32f、プラスボタン32g、及び電源ボタン32hが設けられる。一方、図4に示すように、ハウジング31の下面には凹部が形成されており、当該凹部の後面側傾斜面にはBボタン32iが設けられる。これらの各操作ボタン32a〜32iには、ゲーム装置3が実行するゲームプログラムに応じた機能が適宜割り当てられる。また、電源ボタン32hは遠隔からゲーム装置3本体の電源をオン/オフするためのものである。ホームボタン32f及び電源ボタン32hは、その上面がハウジング31の上面に埋没している。これによって、プレイヤがホームボタン32f又は電源ボタン32hを誤って押下することを防止することができる。   The housing 31 is provided with a plurality of operation buttons. As shown in FIG. 3, a cross button 32a, a first button 32b, a second button 32c, an A button 32d, a minus button 32e, a home button 32f, a plus button 32g, and a power button 32h are provided on the upper surface of the housing 31. It is done. On the other hand, as shown in FIG. 4, a recess is formed on the lower surface of the housing 31, and a B button 32i is provided on the rear inclined surface of the recess. A function corresponding to the game program executed by the game apparatus 3 is appropriately assigned to each of the operation buttons 32a to 32i. The power button 32h is for remotely turning on / off the main body of the game apparatus 3. The home button 32 f and the power button 32 h are embedded in the upper surface of the housing 31. This can prevent the player from pressing the home button 32f or the power button 32h by mistake.

ハウジング31の後面にはコネクタ33が設けられている。コネクタ33は、コントローラ5に他の機器(例えば、ジャイロセンサユニット7や他のコントローラ)を接続するために利用される。また、ハウジング31の後面におけるコネクタ33の両側には、上記他の機器が容易に離脱することを防止するために係止穴33aが設けられている。   A connector 33 is provided on the rear surface of the housing 31. The connector 33 is used to connect another device (for example, the gyro sensor unit 7 or another controller) to the controller 5. Further, locking holes 33a are provided on both sides of the connector 33 on the rear surface of the housing 31 in order to prevent the other devices from being easily detached.

ハウジング31上面の後方には複数(図3では4つ)のLED34a〜34dが設けられる。ここで、コントローラ5には、他のメインコントローラと区別するためにコントローラ種別(番号)が付与される。各LED34a〜34dは、コントローラ5に現在設定されている上記コントローラ種別をプレイヤに通知したり、コントローラ5の電池残量をプレイヤに通知したりする等の目的で用いられる。具体的には、コントローラ5を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のLED34a〜34dのいずれか1つが点灯する。   A plurality (four in FIG. 3) of LEDs 34 a to 34 d are provided behind the upper surface of the housing 31. Here, the controller type (number) is assigned to the controller 5 to distinguish it from other main controllers. The LEDs 34a to 34d are used for the purpose of notifying the player of the controller type currently set in the controller 5 and notifying the player of the remaining battery level of the controller 5. Specifically, when a game operation is performed using the controller 5, any one of the plurality of LEDs 34a to 34d is turned on according to the controller type.

また、コントローラ5は撮像情報演算部35(図7)を有しており、図4に示すように、ハウジング31前面には撮像情報演算部35の光入射面35aが設けられる。光入射面35aは、マーカ6R及び6Lからの赤外光を少なくとも透過する材質で構成される。   Further, the controller 5 has an imaging information calculation unit 35 (FIG. 7), and a light incident surface 35a of the imaging information calculation unit 35 is provided on the front surface of the housing 31 as shown in FIG. The light incident surface 35a is made of a material that transmits at least infrared light from the markers 6R and 6L.

ハウジング31上面における1番ボタン32bとホームボタン32fとの間には、コントローラ5に内蔵されるスピーカ49(図5)からの音を外部に放出するための音抜き孔31aが形成されている。   Between the first button 32b and the home button 32f on the upper surface of the housing 31, a sound release hole 31a for releasing sound from the speaker 49 (FIG. 5) built in the controller 5 is formed.

次に、図5及び図6を参照して、コントローラ5の内部構造について説明する。図5及び図6は、コントローラ5の内部構造を示す図である。なお、図5は、コントローラ5の上筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6は、コントローラ5の下筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6に示す斜視図は、図5に示す基板30を裏面から見た斜視図となっている。   Next, the internal structure of the controller 5 will be described with reference to FIGS. 5 and 6 are diagrams showing the internal structure of the controller 5. FIG. FIG. 5 is a perspective view showing a state in which the upper housing (a part of the housing 31) of the controller 5 is removed. FIG. 6 is a perspective view showing a state in which the lower casing (a part of the housing 31) of the controller 5 is removed. The perspective view shown in FIG. 6 is a perspective view of the substrate 30 shown in FIG.

図5において、ハウジング31の内部には基板30が固設されており、当該基板30の上主面上に各操作ボタン32a〜32h、各LED34a〜34d、加速度センサ37、アンテナ45、及びスピーカ49等が設けられる。これらは、基板30等に形成された配線(図示せず)によってマイクロコンピュータ(Micro Computer:マイコン)42(図6参照)に接続される。本実施形態では、加速度センサ37は、X軸方向に関してコントローラ5の中心からずれた位置に配置されている。これによって、コントローラ5をZ軸回りに回転させたときのコントローラ5の動きが算出しやすくなる。また、加速度センサ37は、長手方向(Z軸方向)に関してコントローラ5の中心よりも前方に配置されている。また、無線モジュール44(図7)及びアンテナ45によって、コントローラ5がワイヤレスコントローラとして機能する。   In FIG. 5, a substrate 30 is fixed inside the housing 31, and operation buttons 32 a to 32 h, LEDs 34 a to 34 d, an acceleration sensor 37, an antenna 45, and a speaker 49 are provided on the upper main surface of the substrate 30. Etc. are provided. These are connected to a microcomputer (microcomputer) 42 (see FIG. 6) by wiring (not shown) formed on the substrate 30 and the like. In the present embodiment, the acceleration sensor 37 is disposed at a position shifted from the center of the controller 5 with respect to the X-axis direction. This makes it easier to calculate the movement of the controller 5 when the controller 5 is rotated about the Z axis. The acceleration sensor 37 is disposed in front of the center of the controller 5 in the longitudinal direction (Z-axis direction). Further, the controller 5 functions as a wireless controller by the wireless module 44 (FIG. 7) and the antenna 45.

一方、図6において、基板30の下主面上の前端縁に撮像情報演算部35が設けられる。撮像情報演算部35は、コントローラ5の前方から順に赤外線フィルタ38、レンズ39、撮像素子40、及び画像処理回路41を備えている。これらの部材38〜41はそれぞれ基板30の下主面に取り付けられる。   On the other hand, in FIG. 6, an imaging information calculation unit 35 is provided at the front edge on the lower main surface of the substrate 30. The imaging information calculation unit 35 includes an infrared filter 38, a lens 39, an imaging element 40, and an image processing circuit 41 in order from the front of the controller 5. These members 38 to 41 are respectively attached to the lower main surface of the substrate 30.

さらに、基板30の下主面上には、上記マイコン42及びバイブレータ48が設けられている。バイブレータ48は、例えば振動モータやソレノイドであり、基板30等に形成された配線によってマイコン42と接続される。マイコン42の指示によりバイブレータ48が作動することによってコントローラ5に振動が発生する。これによって、コントローラ5を把持しているプレイヤの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ48は、ハウジング31のやや前方寄りに配置される。つまり、バイブレータ48がコントローラ5の中心よりも端側に配置することによって、バイブレータ48の振動によりコントローラ5全体を大きく振動させることができる。また、コネクタ33は、基板30の下主面上の後端縁に取り付けられる。なお、図5及び図6に示す他、コントローラ5は、マイコン42の基本クロックを生成する水晶振動子、スピーカ49に音声信号を出力するアンプ等を備えている。   Further, the microcomputer 42 and the vibrator 48 are provided on the lower main surface of the substrate 30. The vibrator 48 is, for example, a vibration motor or a solenoid, and is connected to the microcomputer 42 by wiring formed on the substrate 30 or the like. The controller 48 is vibrated by the operation of the vibrator 48 according to the instruction of the microcomputer 42. As a result, a so-called vibration-compatible game in which the vibration is transmitted to the hand of the player holding the controller 5 can be realized. In the present embodiment, the vibrator 48 is disposed slightly forward of the housing 31. That is, by arranging the vibrator 48 on the end side of the center of the controller 5, the entire controller 5 can be vibrated greatly by the vibration of the vibrator 48. The connector 33 is attached to the rear edge on the lower main surface of the substrate 30. 5 and 6, the controller 5 includes a crystal resonator that generates a basic clock of the microcomputer 42, an amplifier that outputs an audio signal to the speaker 49, and the like.

また、ジャイロセンサユニット7は、3軸回りの角速度を検知するジャイロセンサ(図7に示すジャイロセンサ55及び56)を有する。ジャイロセンサユニット7は、コントローラ5のコネクタ33に着脱可能に装着される。ジャイロセンサユニット7の前端(図3に示すZ軸正方向側の端部)には、コネクタ33に接続可能なプラグ(図7に示すプラグ53)が設けられる。さらに、プラグ53の両側にはフック(図示せず)が設けられる。ジャイロセンサユニット7がコントローラ5に対して装着される状態では、プラグ53がコネクタ33に接続されるとともに、上記フックがコントローラ5の係止穴33aに係止する。これによって、コントローラ5とジャイロセンサユニット7とがしっかりと固定される。また、ジャイロセンサユニット7は側面(図3に示すX軸方向の面)にボタン51を有している。ボタン51は、それを押下すれば上記フックの係止穴33aに対する係止状態を解除することができるように構成されている。したがって、ボタン51を押下しながらプラグ53をコネクタ33から抜くことによって、ジャイロセンサユニット7をコントローラ5から離脱することができる。   The gyro sensor unit 7 includes gyro sensors (gyro sensors 55 and 56 shown in FIG. 7) that detect angular velocities around three axes. The gyro sensor unit 7 is detachably attached to the connector 33 of the controller 5. A plug (plug 53 shown in FIG. 7) that can be connected to the connector 33 is provided at the front end of the gyro sensor unit 7 (end on the Z-axis positive direction side shown in FIG. 3). Further, hooks (not shown) are provided on both sides of the plug 53. In a state where the gyro sensor unit 7 is attached to the controller 5, the plug 53 is connected to the connector 33 and the hook is locked in the locking hole 33 a of the controller 5. Thereby, the controller 5 and the gyro sensor unit 7 are firmly fixed. The gyro sensor unit 7 has a button 51 on a side surface (surface in the X-axis direction shown in FIG. 3). The button 51 is configured such that when the button 51 is pressed, the hook is released from the locked state with respect to the locking hole 33a. Therefore, the gyro sensor unit 7 can be detached from the controller 5 by removing the plug 53 from the connector 33 while pressing the button 51.

また、ジャイロセンサユニット7の後端には、上記コネクタ33と同形状のコネクタが設けられる。したがって、コントローラ5(のコネクタ33)に対して装着可能な他の機器は、ジャイロセンサユニット7のコネクタに対しても装着可能である。なお、図3においては、当該コネクタに対してカバー52が着脱可能に装着されている。   A connector having the same shape as the connector 33 is provided at the rear end of the gyro sensor unit 7. Therefore, other devices that can be attached to the controller 5 (connector 33 thereof) can also be attached to the connector of the gyro sensor unit 7. In FIG. 3, a cover 52 is detachably attached to the connector.

なお、図3〜図6に示したコントローラ5及びジャイロセンサユニット7の形状や、各操作ボタンの形状、加速度センサやバイブレータの数及び設置位置等は単なる一例に過ぎず、他の形状、数、及び設置位置であってもよい。また、本実施形態では、撮像手段による撮像方向はZ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ5における撮像情報演算部35の位置(撮像情報演算部35の光入射面35a)は、ハウジング31の前面でなくてもよく、ハウジング31の外部から光を取り入れることができれば他の面に設けられてもかまわない。   The shapes of the controller 5 and the gyro sensor unit 7 shown in FIGS. 3 to 6, the shapes of the operation buttons, the number of acceleration sensors and vibrators, and the installation positions are merely examples, and other shapes, numbers, And the installation position. In the present embodiment, the imaging direction by the imaging unit is the positive Z-axis direction, but the imaging direction may be any direction. That is, the position of the imaging information calculation unit 35 in the controller 5 (the light incident surface 35a of the imaging information calculation unit 35) does not have to be the front surface of the housing 31, and other surfaces can be used as long as light can be taken from outside the housing 31. May be provided.

図7は、入力装置8(コントローラ5及びジャイロセンサユニット7)の構成を示すブロック図である。コントローラ5は、操作部32(各操作ボタン32a〜32i)、コネクタ33、撮像情報演算部35、通信部36、及び加速度センサ37を備えている。コントローラ5は、自機に対して行われた操作内容を示すデータを操作データとしてゲーム装置3へ送信するものである。   FIG. 7 is a block diagram showing the configuration of the input device 8 (the controller 5 and the gyro sensor unit 7). The controller 5 includes an operation unit 32 (operation buttons 32 a to 32 i), a connector 33, an imaging information calculation unit 35, a communication unit 36, and an acceleration sensor 37. The controller 5 transmits data indicating the details of the operation performed on the own device to the game apparatus 3 as operation data.

操作部32は、上述した各操作ボタン32a〜32iを含み、各操作ボタン32a〜32iに対する入力状態(各操作ボタン32a〜32iが押下されたか否か)を示す操作ボタンデータを通信部36のマイコン42へ出力する。   The operation unit 32 includes the operation buttons 32a to 32i described above, and the operation button data indicating the input state (whether or not each operation button 32a to 32i is pressed) to each operation button 32a to 32i is transmitted to the microcomputer of the communication unit 36. Output to 42.

撮像情報演算部35は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部35は、例えば最大200フレーム/秒程度のサンプリング周期を有するので、比較的高速なコントローラ5の動きでも追跡して解析することができる。   The imaging information calculation unit 35 is a system for analyzing the image data captured by the imaging unit, discriminating a region having a high luminance in the image data, and calculating a center of gravity position, a size, and the like of the region. Since the imaging information calculation unit 35 has a sampling period of, for example, about 200 frames / second at the maximum, it can track and analyze even a relatively fast movement of the controller 5.

撮像情報演算部35は、赤外線フィルタ38、レンズ39、撮像素子40、及び画像処理回路41を含んでいる。赤外線フィルタ38は、コントローラ5の前方から入射する光から赤外線のみを通過させる。レンズ39は、赤外線フィルタ38を透過した赤外線を集光して撮像素子40へ入射させる。撮像素子40は、例えばCMOSセンサやあるいはCCDセンサのような固体撮像素子であり、レンズ39が集光した赤外線を受光して画像信号を出力する。ここで、テレビ2の表示画面近傍に配置されるマーカ部6のマーカ6R及び6Lは、テレビ2の前方に向かって赤外光を出力する赤外LEDで構成される。したがって、赤外線フィルタ38を設けることによって、撮像素子40は、赤外線フィルタ38を通過した赤外線だけを受光して画像データを生成するので、マーカ6R及び6Lの画像をより正確に撮像することができる。以下では、撮像素子40によって撮像された画像を撮像画像と呼ぶ。撮像素子40によって生成された画像データは、画像処理回路41で処理される。画像処理回路41は、撮像画像内における撮像対象(マーカ6R及び6L)の位置を算出する。画像処理回路41は、算出された位置を示す座標を通信部36のマイコン42へ出力する。この座標のデータは、マイコン42によって操作データとしてゲーム装置3に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ5自体の向き(傾斜角度)や位置に対応して変化するので、ゲーム装置3はこのマーカ座標を用いてコントローラ5の向きや位置を算出することができる。   The imaging information calculation unit 35 includes an infrared filter 38, a lens 39, an imaging element 40, and an image processing circuit 41. The infrared filter 38 passes only infrared rays from the light incident from the front of the controller 5. The lens 39 collects the infrared light transmitted through the infrared filter 38 and makes it incident on the image sensor 40. The image sensor 40 is a solid-state image sensor such as a CMOS sensor or a CCD sensor, for example, and receives the infrared light collected by the lens 39 and outputs an image signal. Here, the markers 6 </ b> R and 6 </ b> L of the marker unit 6 disposed in the vicinity of the display screen of the television 2 are configured by infrared LEDs that output infrared light toward the front of the television 2. Therefore, by providing the infrared filter 38, the image sensor 40 receives only the infrared light that has passed through the infrared filter 38 and generates image data, so that the images of the markers 6R and 6L can be captured more accurately. Hereinafter, an image captured by the image sensor 40 is referred to as a captured image. Image data generated by the image sensor 40 is processed by the image processing circuit 41. The image processing circuit 41 calculates the position of the imaging target (markers 6R and 6L) in the captured image. The image processing circuit 41 outputs coordinates indicating the calculated position to the microcomputer 42 of the communication unit 36. The coordinate data is transmitted to the game apparatus 3 as operation data by the microcomputer 42. Hereinafter, the coordinates are referred to as “marker coordinates”. Since the marker coordinates change corresponding to the direction (tilt angle) and position of the controller 5 itself, the game apparatus 3 can calculate the direction and position of the controller 5 using the marker coordinates.

なお、他の実施形態においては、コントローラ5は画像処理回路41を備えていない構成であってもよく、撮像画像自体がコントローラ5からゲーム装置3へ送信されてもよい。このとき、ゲーム装置3は、画像処理回路41と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。   In other embodiments, the controller 5 may not include the image processing circuit 41, and the captured image itself may be transmitted from the controller 5 to the game apparatus 3. At this time, the game apparatus 3 may have a circuit or a program having the same function as the image processing circuit 41, and may calculate the marker coordinates.

加速度センサ37は、コントローラ5の加速度(重力加速度を含む)を検出する、すなわち、コントローラ5に加わる力(重力を含む)を検出する。加速度センサ37は、当該加速度センサ37の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。例えば、2軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。例えば、3軸又は2軸の加速度センサは、アナログ・デバイセズ株式会社(Analog Devices, Inc.)又はSTマイクロエレクトロニクス社(STMicroelectronics N.V.)から入手可能である種類のものでもよい。なお、加速度センサ37は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。   The acceleration sensor 37 detects the acceleration (including gravity acceleration) of the controller 5, that is, detects the force (including gravity) applied to the controller 5. The acceleration sensor 37 detects the value of the acceleration (linear acceleration) in the linear direction along the sensing axis direction among the accelerations applied to the detection unit of the acceleration sensor 37. For example, in the case of a multi-axis acceleration sensor having two or more axes, the component acceleration along each axis is detected as the acceleration applied to the detection unit of the acceleration sensor. For example, the triaxial or biaxial acceleration sensor may be of the type available from Analog Devices, Inc. or ST Microelectronics NV. The acceleration sensor 37 is, for example, a capacitance type acceleration sensor, but other types of acceleration sensors may be used.

本実施形態では、加速度センサ37は、コントローラ5を基準とした上下方向(図3に示すY軸方向)、左右方向(図3に示すX軸方向)及び前後方向(図3に示すZ軸方向)の3軸方向に関してそれぞれ直線加速度を検出する。加速度センサ37は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ37からの出力は3軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、入力装置8(コントローラ5)を基準に設定されるXYZ座標系(コントローラ座標系)における3次元のベクトル(ax,ay,az)として表される。以下では、加速度センサ37によって検出される3軸に関する各加速度値を各成分とするベクトルを加速度ベクトルと呼ぶ。   In the present embodiment, the acceleration sensor 37 has a vertical direction (Y-axis direction shown in FIG. 3), a horizontal direction (X-axis direction shown in FIG. 3), and a front-back direction (Z-axis direction shown in FIG. 3) with reference to the controller 5. ) Linear acceleration is detected in each of the three axis directions. Since the acceleration sensor 37 detects acceleration in the linear direction along each axis, the output from the acceleration sensor 37 represents the linear acceleration value of each of the three axes. That is, the detected acceleration is represented as a three-dimensional vector (ax, ay, az) in an XYZ coordinate system (controller coordinate system) set with reference to the input device 8 (controller 5). Hereinafter, a vector having the respective acceleration values related to the three axes detected by the acceleration sensor 37 as components is referred to as an acceleration vector.

加速度センサ37が検出した加速度を示すデータ(加速度データ)は、通信部36へ出力される。なお、加速度センサ37が検出した加速度は、コントローラ5自体の向き(傾斜角度)や動きに対応して変化するので、ゲーム装置3は加速度データを用いてコントローラ5の向きや動きを算出することができる。本実施形態では、ゲーム装置3は、加速度データ及び後述する角速度データに基づいて入力装置8(コントローラ5)の姿勢を判断する。入力装置8の姿勢は、例えば、入力装置8が存在する空間の所定位置を基準としたxyz座標系の座標値によって表される。ここでは、図1に示されるように、xyz座標系は、入力装置8がマーカ部6の正面に位置することを前提とし、入力装置8の位置からマーカ部6を向く方向をz軸正方向とし、鉛直上向き(重力方向の逆方向)をy軸正方向とし、入力装置8の位置からマーカ部6を見た場合の左方向をx軸正方向とした座標系であるとする。また、ここでは、入力装置8(コントローラ5)を基準としたX軸、Y軸、Z軸が、それぞれx軸、y軸、z軸の向きと一致するときの入力装置8の姿勢を基準姿勢と呼ぶことにする。入力装置8の姿勢は、基準姿勢からZ軸方向を基準としてロール方向(Z軸周り)、ピッチ方向(X軸周り)、ヨー方向(Y軸周り)にそれぞれ入力装置8を回転させた場合のxyz座標系における姿勢である。当該姿勢は、後述する回転行列Mによって表現される。   Data indicating the acceleration detected by the acceleration sensor 37 (acceleration data) is output to the communication unit 36. The acceleration detected by the acceleration sensor 37 changes in accordance with the direction (tilt angle) and movement of the controller 5 itself, so that the game apparatus 3 can calculate the direction and movement of the controller 5 using the acceleration data. it can. In the present embodiment, the game apparatus 3 determines the attitude of the input device 8 (controller 5) based on acceleration data and angular velocity data described later. The attitude of the input device 8 is represented by, for example, coordinate values in an xyz coordinate system with a predetermined position in a space where the input device 8 exists as a reference. Here, as shown in FIG. 1, the xyz coordinate system assumes that the input device 8 is located in front of the marker unit 6, and the direction from the position of the input device 8 toward the marker unit 6 is the positive z-axis direction. Suppose that the coordinate system is such that the vertically upward direction (reverse direction of the gravity direction) is the y-axis positive direction and the left direction when the marker unit 6 is viewed from the position of the input device 8 is the x-axis positive direction. Further, here, the attitude of the input device 8 when the X axis, Y axis, and Z axis with respect to the input device 8 (controller 5) are the same as the directions of the x axis, y axis, and z axis, respectively, is the reference posture. I will call it. The posture of the input device 8 is that when the input device 8 is rotated in the roll direction (around the Z axis), the pitch direction (around the X axis), and the yaw direction (around the Y axis) from the reference posture with the Z axis direction as a reference. It is an attitude in the xyz coordinate system. The posture is expressed by a rotation matrix M described later.

加速度センサ37が検出した加速度(加速度ベクトル)を示すデータ(加速度データ)は、通信部36へ出力される。   Data (acceleration data) indicating the acceleration (acceleration vector) detected by the acceleration sensor 37 is output to the communication unit 36.

なお、加速度センサ37から出力される加速度の信号に基づいて、ゲーム装置3のプロセッサ(例えばCPU10)又はコントローラ5のプロセッサ(例えばマイコン42)等のコンピュータが処理を行うことによって、コントローラ5に関するさらなる情報を推測又は算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ37を搭載するコントローラ5が静止状態であることを前提としてコンピュータ側の処理が実行される場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合)、コントローラ5が現実に静止状態であれば、検出された加速度に基づいてコントローラ5の姿勢が重力方向に対して傾いているか否か又はどの程度傾いているかを知ることができる。具体的には、加速度センサ37の検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かによって、コントローラ5が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ37の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ5がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ37からの出力に基づいてコントローラ5の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ5の傾斜方向を算出するようにしてもよい。このように、加速度センサ37をプロセッサと組み合わせて用いることによって、コントローラ5の傾斜角度又は姿勢を判定することができる。   In addition, based on the acceleration signal output from the acceleration sensor 37, a computer such as a processor (for example, the CPU 10) of the game apparatus 3 or a processor (for example, the microcomputer 42) of the controller 5 performs processing, whereby further information regarding the controller 5 is obtained. Those skilled in the art will be able to easily understand from the description of the present specification that can be estimated or calculated (determined). For example, when the processing on the computer side is executed on the assumption that the controller 5 on which the acceleration sensor 37 is mounted is stationary (that is, the processing is executed assuming that the acceleration detected by the acceleration sensor is only gravitational acceleration). When the controller 5 is actually stationary, it can be determined whether or not the attitude of the controller 5 is inclined with respect to the direction of gravity based on the detected acceleration. Specifically, whether or not the controller 5 is inclined with respect to the reference depending on whether or not 1G (gravity acceleration) is applied, based on the state in which the detection axis of the acceleration sensor 37 is directed vertically downward. It is possible to know how much it is inclined with respect to the reference according to its size. Further, in the case of the multi-axis acceleration sensor 37, it is possible to know in detail how much the controller 5 is inclined with respect to the direction of gravity by further processing the acceleration signal of each axis. . In this case, the processor may calculate the tilt angle of the controller 5 based on the output from the acceleration sensor 37, or may calculate the tilt direction of the controller 5 without calculating the tilt angle. Good. Thus, by using the acceleration sensor 37 in combination with the processor, the tilt angle or posture of the controller 5 can be determined.

一方、コントローラ5が動的な状態(コントローラ5が動かされている状態)であることを前提とする場合には、加速度センサ37は重力加速度に加えてコントローラ5の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ5の動き方向を知ることができる。また、コントローラ5が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ5の傾きを知ることが可能である。なお、他の実施例では、加速度センサ37は、内蔵の加速度検出手段で検出された加速度信号をマイコン42に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置又は他の種類の専用の処理装置を備えていてもよい。組込み式又は専用の処理装置は、例えば、加速度センサ37が静的な加速度(例えば、重力加速度)を検出するために用いられる場合、加速度信号を傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。   On the other hand, when it is assumed that the controller 5 is in a dynamic state (a state in which the controller 5 is moved), the acceleration sensor 37 detects an acceleration corresponding to the movement of the controller 5 in addition to the gravitational acceleration. Therefore, the movement direction of the controller 5 can be known by removing the gravitational acceleration component from the detected acceleration by a predetermined process. Even if it is assumed that the controller 5 is in a dynamic state, the direction of gravity is obtained by removing the acceleration component corresponding to the movement of the acceleration sensor from the detected acceleration by a predetermined process. It is possible to know the inclination of the controller 5 with respect to. In another embodiment, the acceleration sensor 37 is a built-in process for performing a predetermined process on the acceleration signal before outputting the acceleration signal detected by the built-in acceleration detection means to the microcomputer 42. An apparatus or other type of dedicated processing apparatus may be provided. A built-in or dedicated processing device converts the acceleration signal into a tilt angle (or other preferred parameter) if, for example, the acceleration sensor 37 is used to detect static acceleration (eg, gravitational acceleration). It may be a thing.

通信部36は、マイコン42、メモリ43、無線モジュール44、及びアンテナ45を含んでいる。マイコン42は、処理を行う際にメモリ43を記憶領域として用いながら、マイコン42が取得したデータをゲーム装置3へ無線送信する無線モジュール44を制御する。また、マイコン42はコネクタ33に接続されている。ジャイロセンサユニット7から送信されてくるデータは、コネクタ33を介してマイコン42に入力される。以下、ジャイロセンサユニット7の構成について説明する。   The communication unit 36 includes a microcomputer 42, a memory 43, a wireless module 44, and an antenna 45. The microcomputer 42 controls the wireless module 44 that wirelessly transmits data acquired by the microcomputer 42 to the game apparatus 3 while using the memory 43 as a storage area when performing processing. The microcomputer 42 is connected to the connector 33. Data transmitted from the gyro sensor unit 7 is input to the microcomputer 42 via the connector 33. Hereinafter, the configuration of the gyro sensor unit 7 will be described.

ジャイロセンサユニット7は、プラグ53、マイコン54、2軸ジャイロセンサ55、及び1軸ジャイロセンサ56を備えている。上述のように、ジャイロセンサユニット7は、3軸(本実施形態では、XYZ軸)周りの角速度を検出し、検出した角速度を示すデータ(角速度データ)をコントローラ5へ送信する。   The gyro sensor unit 7 includes a plug 53, a microcomputer 54, a 2-axis gyro sensor 55, and a 1-axis gyro sensor 56. As described above, the gyro sensor unit 7 detects angular velocities around the three axes (in this embodiment, the XYZ axes), and transmits data (angular velocity data) indicating the detected angular velocities to the controller 5.

2軸ジャイロセンサ55は、X軸周りの角速度及びY軸周りの(単位時間あたりの)角速度を検出する。また、1軸ジャイロセンサ56は、Z軸周りの(単位時間あたりの)角速度を検出する。なお、本明細書では、コントローラ5の撮像方向(Z軸正方向)を基準として、Z軸周り、X軸周り、Y軸周りの回転方向を、それぞれ、ロール方向、ピッチ方向、ヨー方向と呼ぶ。すなわち、2軸ジャイロセンサ55は、ピッチ方向(X軸周りの回転方向)及びヨー方向(Y軸周りの回転方向)の角速度を検出し、1軸ジャイロセンサ56は、ロール方向(Z軸周りの回転方向)の角速度を検出する。   The biaxial gyro sensor 55 detects an angular velocity around the X axis and an angular velocity (per unit time) around the Y axis. The single axis gyro sensor 56 detects an angular velocity (per unit time) around the Z axis. In this specification, the rotation directions around the Z axis, around the X axis, and around the Y axis are referred to as the roll direction, the pitch direction, and the yaw direction, respectively, based on the imaging direction (Z axis positive direction) of the controller 5. . That is, the biaxial gyro sensor 55 detects angular velocities in the pitch direction (rotation direction around the X axis) and the yaw direction (rotation direction around the Y axis), and the single axis gyro sensor 56 detects the roll direction (around the Z axis). Detect the angular velocity in the rotation direction.

なお、本実施形態では、3軸回りの角速度を検出するために、2軸ジャイロセンサ55と1軸ジャイロセンサ56とを用いる構成としたが、他の実施形態においては、3軸回りの角速度を検出することができればよく、用いるジャイロセンサの数及び組み合わせはどのようなものであってもよい。   In this embodiment, the 2-axis gyro sensor 55 and the 1-axis gyro sensor 56 are used to detect the angular velocity around the three axes. However, in other embodiments, the angular velocity around the three axes is Any number and combination of gyro sensors may be used as long as they can be detected.

また、本実施形態では、各ジャイロセンサ55及び56が角速度を検出する3つの軸は、加速度センサ37が加速度を検出する3つの軸(XYZ軸)と一致するように設定される。ただし、他の実施形態においては、各ジャイロセンサ55及び56が角速度を検出する3つの軸と、加速度センサ37が加速度を検出する3つの軸とは一致しなくてもよい。   In this embodiment, the three axes for detecting the angular velocities by the gyro sensors 55 and 56 are set so as to coincide with the three axes (XYZ axes) for detecting the acceleration by the acceleration sensor 37. However, in other embodiments, the three axes for detecting the angular velocity by the gyro sensors 55 and 56 and the three axes for detecting the acceleration by the acceleration sensor 37 do not have to coincide with each other.

ジャイロセンサ55及び56で検出された角速度を示すデータは、マイコン54に出力される。したがって、マイコン54には、XYZ軸の3軸回りの角度速度を示すデータが入力されることになる。マイコン54は、上記3軸回りの角速度を示すデータを角速度データとしてプラグ53を介してコントローラ5へ送信する。なお、マイコン54からコントローラ5への送信は所定の周期毎に逐次行われるが、ゲームの処理は1/60秒を単位として(1フレーム時間として)行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。   Data indicating the angular velocity detected by the gyro sensors 55 and 56 is output to the microcomputer 54. Accordingly, the microcomputer 54 receives data indicating the angular velocity around the three axes of the XYZ axes. The microcomputer 54 transmits data indicating the angular velocities around the three axes as angular velocity data to the controller 5 via the plug 53. Although transmission from the microcomputer 54 to the controller 5 is sequentially performed every predetermined cycle, since the game processing is generally performed in units of 1/60 seconds (one frame time), this time Transmission is preferably performed in the following cycle.

コントローラ5の説明に戻り、操作部32、撮像情報演算部35、及び加速度センサ37からマイコン42へ出力されたデータ、ならびに、ジャイロセンサユニット7からマイコン42へ送信されてきたデータは、一時的にメモリ43に格納される。これらのデータは、上記操作データとしてゲーム装置3へ送信される。すなわち、マイコン42は、ゲーム装置3の無線コントローラモジュール19への送信タイミングが到来すると、メモリ43に格納されている操作データを無線モジュール44へ出力する。無線モジュール44は、例えばBluetooth(ブルートゥース)(登録商標)の技術を用いて、所定周波数の搬送波を操作データで変調し、その微弱電波信号をアンテナ45から放射する。つまり、操作データは、無線モジュール44で微弱電波信号に変調されてコントローラ5から送信される。微弱電波信号はゲーム装置3側の無線コントローラモジュール19で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置3は操作データを取得することができる。そして、ゲーム装置3のCPU10は、取得した操作データとゲームプログラムとに基づいて、ゲーム処理を行う。なお、通信部36から無線コントローラモジュール19への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は1/60秒を単位として(1フレーム時間として)行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ5の通信部36は、例えば1/200秒に1回の割合で各操作データをゲーム装置3の無線コントローラモジュール19へ出力する。   Returning to the description of the controller 5, the data output from the operation unit 32, the imaging information calculation unit 35 and the acceleration sensor 37 to the microcomputer 42, and the data transmitted from the gyro sensor unit 7 to the microcomputer 42 are temporarily stored. Stored in the memory 43. These data are transmitted to the game apparatus 3 as the operation data. That is, the microcomputer 42 outputs the operation data stored in the memory 43 to the wireless module 44 when the transmission timing to the wireless controller module 19 of the game apparatus 3 arrives. The wireless module 44 modulates a carrier wave of a predetermined frequency with operation data using, for example, Bluetooth (registered trademark) technology, and radiates a weak radio signal from the antenna 45. That is, the operation data is modulated by the wireless module 44 into a weak radio signal and transmitted from the controller 5. The weak radio signal is received by the wireless controller module 19 on the game apparatus 3 side. By demodulating and decoding the received weak radio signal, the game apparatus 3 can acquire operation data. And CPU10 of the game device 3 performs a game process based on the acquired operation data and a game program. Note that the wireless transmission from the communication unit 36 to the wireless controller module 19 is sequentially performed at predetermined intervals, but the game processing is generally performed in units of 1/60 seconds (one frame time). Therefore, it is preferable to perform transmission at a period equal to or shorter than this time. The communication unit 36 of the controller 5 outputs each operation data to the wireless controller module 19 of the game apparatus 3 at a rate of once every 1/200 seconds, for example.

上記コントローラ5を用いることによって、プレイヤは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、コントローラ5を任意の傾斜角度に傾ける操作を行うことができる。その他、上記コントローラ5によれば、プレイヤは、コントローラ5によって画面上の任意の位置を指示する操作、及び、コントローラ5自体を動かす操作を行うこともできる。   By using the controller 5, the player can perform an operation of tilting the controller 5 to an arbitrary tilt angle in addition to the conventional general game operation of pressing each operation button. In addition, according to the controller 5, the player can also perform an operation of instructing an arbitrary position on the screen by the controller 5 and an operation of moving the controller 5 itself.

[ゲーム処理の概要]
次に、図8〜図13を参照して、上記ゲームシステム1において実行されるバスケットボールゲームの概要について説明する。本実施形態において実行されるバスケットボールゲームでは、仮想ゲーム空間に存在するプレイヤキャラクタがプレイヤによる操作に応じてバスケットボールのシュートを所定回数繰り返し、そのシュートの成否に応じてプレイヤに得点が与えられる。プレイヤは、図8に示されるような振り操作を行うことにより、プレイヤキャラクタにボールをシュートさせることができる。
[Overview of game processing]
Next, an outline of a basketball game executed in the game system 1 will be described with reference to FIGS. In the basketball game executed in the present embodiment, a player character existing in the virtual game space repeats a basketball shoot a predetermined number of times according to an operation by the player, and a score is given to the player according to the success or failure of the shoot. The player can cause the player character to shoot the ball by performing a swing operation as shown in FIG.

図9は、ゲーム開始直後にテレビ2の画面に表示されるゲーム画像の一例を示している。当該ゲーム画像は、仮想ゲーム空間を所定の視点(仮想カメラ)から見たシーンを示しており、当該ゲーム画像には、仮想ゲーム空間に配置されたプレイヤキャラクタ、ボール、リング等が表示されている。また、当該ゲーム画像には、プレイヤの得点も表示されている。   FIG. 9 shows an example of a game image displayed on the screen of the television 2 immediately after the game is started. The game image shows a scene when the virtual game space is viewed from a predetermined viewpoint (virtual camera), and a player character, a ball, a ring, and the like arranged in the virtual game space are displayed on the game image. . The game image also displays the score of the player.

テレビ2に図9のようなゲーム画像が表示されているときに、プレイヤが入力装置8を下に向けた状態(すなわち、コントローラ5の前端をコントローラ5の後端よりも低くした状態)でコントローラ5のBボタン32iを押すと、図10に示すように、プレイヤキャラクタがボールを掴む。その後、プレイヤがジャンプ操作を行う(すなわち、入力装置8を上に振り上げる)と、プレイヤキャラクタは、図11に示すようにボールを頭の上に構えた状態で真上にジャンプする。   When the game image as shown in FIG. 9 is displayed on the television 2, the controller in a state where the player faces the input device 8 downward (that is, the front end of the controller 5 is lower than the rear end of the controller 5). When the 5 B button 32i is pressed, the player character grasps the ball as shown in FIG. Thereafter, when the player performs a jump operation (that is, when the input device 8 is swung up), the player character jumps straight up with the ball held on the head as shown in FIG.

プレイヤキャラクタがジャンプした後、プレイヤがシュート操作を行う(すなわち、入力装置8を図8に示すように前方に振る)と、図12に示すように、プレイヤキャラクタがリングに向けてボールを投げる。このときのボールの投球方向や初速度は、プレイヤによる入力装置8の振り方(すなわち、入力装置8を振る強さ、入力装置8を振るタイミング、入力装置8を振ったときの入力装置8の姿勢、入力装置8を振るときのプレイヤの手首のひねり具合)に応じて変化する。投球されたボールがリングの中央を通過するようなボールの移動方向、移動速度および到達距離が、それぞれ、ボールの目標移動方向、目標移動速度および目標到達距離となる。入力装置8が理想的な振り方、もしくはそれに近い振り方で振られた場合にはシュートが成功して得点が加点され、そうでない場合にはシュートは失敗に終わり、得点は加算されない。   After the player character jumps, when the player performs a shooting operation (that is, when the input device 8 is swung forward as shown in FIG. 8), the player character throws the ball toward the ring as shown in FIG. The throwing direction and initial velocity of the ball at this time depend on how the player swings the input device 8 (that is, the strength at which the input device 8 is swung, the timing at which the input device 8 is swung, and the input device 8 when the input device 8 is swung. It changes in accordance with the posture and twist of the player's wrist when the input device 8 is shaken. The moving direction, moving speed, and reaching distance of the ball so that the pitched ball passes through the center of the ring are the target moving direction, target moving speed, and target reaching distance of the ball, respectively. If the input device 8 is shaken in an ideal manner of swinging or close to it, the shoot is successful and points are scored, otherwise the shoot fails and no points are added.

シュートが終了した後、プレイヤが再び入力装置8の前端を下に向けた状態でコントローラ5のBボタン32iを押すと、プレイヤキャラクタは新たなボールを掴む。そして、上記と同様にして、プレイヤの操作に応じてプレイヤキャラクタは再びシュートを行う。このようにして、プレイヤの操作に応じて、プレイヤキャラクタが仮想ゲーム空間において同一の位置からシュートを5回行う。5回分のシュートが終了すると、プレイヤキャラクタは移動し、別の位置からさらにシュートを5回行う。このように、プレイヤキャラクタは、5本のシュートを1セットとして、各セットが終了するごとに場所を移動し、5セット(すなわち25本のシュート)が終了すると、ゲームの結果(プレイヤが獲得した合計得点)が表示され、ゲームが終了する。   After the shooting is finished, when the player presses the B button 32i of the controller 5 with the front end of the input device 8 facing downward again, the player character grasps a new ball. In the same manner as described above, the player character shoots again according to the operation of the player. In this way, the player character shoots five times from the same position in the virtual game space in accordance with the player's operation. When the five shots are finished, the player character moves and shoots five times from another position. In this way, the player character takes five shots as one set, and moves each time each set ends. When five sets (that is, 25 shots) are completed, the result of the game (the player has acquired) Total score) is displayed and the game ends.

上記のように、本実施形態では、ジャンプ操作およびシュート操作を行う際にプレイヤはコントローラ5上のボタンを操作する必要が無く、入力装置8を把持している腕をあたかも自分がシュートするかのように振ることでプレイヤキャラクタにジャンプおよびシュートさせることができるので、非常に直感的なゲーム操作が可能である。また、特にシュート操作の際にコントローラ5上のボタンの操作を必要としないため、プレイヤは入力装置8を5本の指でしっかりと把持した状態で振ることができる。   As described above, in this embodiment, the player does not need to operate the buttons on the controller 5 when performing a jump operation and a shoot operation, and it is as if he / she shoots an arm holding the input device 8. Since the player character can jump and shoot by swinging in this manner, a very intuitive game operation is possible. Further, since the operation of the button on the controller 5 is not particularly required during the shooting operation, the player can swing the input device 8 while firmly holding it with the five fingers.

[ゲーム処理の詳細]
次に、ゲーム装置3において実行されるゲーム処理の詳細について説明する。まず、ゲーム装置3におけるゲーム処理において用いられる主なデータについて図14を用いて説明する。図14は、ゲーム装置3の外部メインメモリ12(ただし内部メインメモリ11eであってもよい)のメモリマップである。図14に示すように、外部メインメモリ12は、ゲームプログラム格納領域61、操作データ格納領域62、姿勢データ格納領域63、難易度格納領域64、振り強さ格納領域65、ひねり量格納領域66、および得点格納領域67として利用される。
[Details of game processing]
Next, details of the game process executed in the game apparatus 3 will be described. First, main data used in the game process in the game apparatus 3 will be described with reference to FIG. FIG. 14 is a memory map of the external main memory 12 (which may be the internal main memory 11e) of the game apparatus 3. As shown in FIG. 14, the external main memory 12 includes a game program storage area 61, an operation data storage area 62, an attitude data storage area 63, a difficulty level storage area 64, a swing strength storage area 65, a twist amount storage area 66, And used as a score storage area 67.

ゲームプログラム格納領域61には、上記のようなバスケットボールゲームを実現するためのゲームプログラムが格納される。このゲームプログラムは、ゲーム装置3に電源が投入された後の適宜のタイミングで光ディスク4からその一部または全部が読み込まれて外部メインメモリ12のゲームプログラム格納領域61に記憶される。なお、他の実施形態では、ゲームプログラムは、光ディスク以外の任意のコンピュータ読み取り可能な記憶媒体(たとえば、ゲームカートリッジや磁気ディスク等)を通じてゲーム装置3に供給されて、外部メインメモリ12に記憶されてもよい。また、さらに他の実施形態では、ゲームプログラムは、ゲーム装置3に内蔵されている不揮発性の記憶装置(例えばフラッシュメモリ17)から読み出されて、外部メインメモリ12に記憶されてもよい。さらに他の実施形態では、ゲームプログラムは、他のコンピュータシステム(ゲーム装置やゲームプログラム配信サーバ装置)から無線または有線の通信回線を通じてゲーム装置3に供給されて、外部メインメモリ12に記憶されてもよい。   The game program storage area 61 stores a game program for realizing the basketball game as described above. A part or all of the game program is read from the optical disc 4 at an appropriate timing after the game apparatus 3 is turned on and stored in the game program storage area 61 of the external main memory 12. In another embodiment, the game program is supplied to the game apparatus 3 through an arbitrary computer-readable storage medium (for example, a game cartridge or a magnetic disk) other than the optical disk, and is stored in the external main memory 12. Also good. In still another embodiment, the game program may be read from a non-volatile storage device (for example, the flash memory 17) built in the game apparatus 3 and stored in the external main memory 12. In still another embodiment, the game program may be supplied from another computer system (game device or game program distribution server device) to the game device 3 through a wireless or wired communication line and stored in the external main memory 12. Good.

操作データ格納領域62には、コントローラ5からゲーム装置3へ送信されてくる操作データが記憶される。上述したように、コントローラ5からゲーム装置3へは200分の1秒の周期で操作データが送信されるので、操作データ格納領域62に記憶される操作データは、200分の1秒の周期で更新される。ここで、本実施形態においては、200分の1秒の周期で送信される各回の操作データを1サンプルとして、外部メインメモリ12には、最新の操作データ(すなわち、ゲーム装置3が最後に取得した操作データ)に加えて、過去に取得した所定数の操作データが記憶される。   In the operation data storage area 62, operation data transmitted from the controller 5 to the game apparatus 3 is stored. As described above, since the operation data is transmitted from the controller 5 to the game apparatus 3 at a cycle of 1/200 second, the operation data stored in the operation data storage area 62 is stored at a cycle of 1/200 second. Updated. Here, in the present embodiment, each time of operation data transmitted at a cycle of 1/200 second is taken as one sample, and the latest operation data (that is, the game device 3 is finally acquired by the external main memory 12). In addition, a predetermined number of operation data acquired in the past is stored.

操作データには、ボタンデータ、角速度データ、加速度データ、及びマーカ座標データが含まれる。ボタンデータは、コントローラ5上の各ボタンが押されたか否かを示すデータである。角速度データは、ジャイロセンサユニット7のジャイロセンサ55及び56によって検出された角速度を示すデータの集合である。すなわち、角速度データは、図3に示すXYZ座標系における各軸回りの角速度であり、現在及び過去に検出された各軸周りの角速度の集合である。また、加速度データは、現在及び過去に加速度センサ37によって検出された加速度(加速度ベクトル)を示すデータの集合である。マーカ座標データは、撮像情報演算部35の画像処理回路41によって算出される座標、すなわち上記マーカ座標を示すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための2次元座標系で表現される。   The operation data includes button data, angular velocity data, acceleration data, and marker coordinate data. The button data is data indicating whether or not each button on the controller 5 has been pressed. The angular velocity data is a collection of data indicating the angular velocity detected by the gyro sensors 55 and 56 of the gyro sensor unit 7. That is, the angular velocity data is an angular velocity around each axis in the XYZ coordinate system shown in FIG. 3, and is a set of angular velocities around each axis detected at present and in the past. The acceleration data is a set of data indicating the acceleration (acceleration vector) detected by the acceleration sensor 37 at present and in the past. The marker coordinate data is coordinates indicating the coordinates calculated by the image processing circuit 41 of the imaging information calculation unit 35, that is, the marker coordinates. The marker coordinates are expressed in a two-dimensional coordinate system for representing a position on a plane corresponding to the captured image.

姿勢データ格納領域63には、姿勢データが記憶される。姿勢データは、入力装置8(コントローラ5)の姿勢に関するデータの集合であって、回転行列データ、ロール成分回転データ、ピッチ成分回転データ、ヨー成分回転データ、ピッチ姿勢データ、及びヨー姿勢データを含む。   Posture data is stored in the posture data storage area 63. The attitude data is a set of data related to the attitude of the input device 8 (controller 5), and includes rotation matrix data, roll component rotation data, pitch component rotation data, yaw component rotation data, pitch attitude data, and yaw attitude data. .

回転行列データは、基準姿勢(上述したXYZ軸がxyz軸と一致する場合の姿勢)から現在の入力装置8(コントローラ5)の姿勢への回転を表すデータであり、当該回転は、回転行列Mで表される。また、回転行列Mは、入力装置8のXYZ軸方向を示すそれぞれの単位ベクトルをxyz座標系で表して並べたものでもある。回転行列データは、操作データと同様、最新の回転行列Mに加えて、所定サンプルの回転行列Mを示すデータの集合である。回転行列Mは、以下の式(1)に示す3×3の行列で表現される。   The rotation matrix data is data representing the rotation from the reference posture (the posture in the case where the XYZ axis described above matches the xyz axis) to the current posture of the input device 8 (controller 5). It is represented by In addition, the rotation matrix M is also obtained by arranging the respective unit vectors indicating the XYZ axis directions of the input device 8 in the xyz coordinate system. Like the operation data, the rotation matrix data is a set of data indicating the rotation matrix M of a predetermined sample in addition to the latest rotation matrix M. The rotation matrix M is represented by a 3 × 3 matrix shown in the following formula (1).

Figure 2010252862
Figure 2010252862

ロール成分回転データは、Z軸周りの入力装置8の回転を表すデータであり、ロール成分回転行列Mrで表される。ピッチ成分回転データは、X軸周りの入力装置8の回転を表すデータであり、ピッチ成分回転行列Mpで表される。さらに、ヨー成分回転データは、Y軸周りの入力装置8の回転を表すデータであり、ヨー成分回転行列Myで表される。ロール成分回転行列Mr、ピッチ成分回転行列Mp、及びヨー成分回転行列Myは、それぞれ以下の式(2)〜式(4)に示す3×3の行列で表現される。   The roll component rotation data is data representing the rotation of the input device 8 around the Z axis, and is represented by a roll component rotation matrix Mr. The pitch component rotation data is data representing the rotation of the input device 8 around the X axis, and is represented by a pitch component rotation matrix Mp. Further, the yaw component rotation data is data representing the rotation of the input device 8 around the Y axis, and is represented by a yaw component rotation matrix My. The roll component rotation matrix Mr, the pitch component rotation matrix Mp, and the yaw component rotation matrix My are each represented by a 3 × 3 matrix shown in the following equations (2) to (4).

Figure 2010252862
Figure 2010252862

ここで、ロール方向(Z軸周り)、ピッチ方向(X軸周り)、ヨー方向(Y軸周り)の回転角をそれぞれθr、θp、θyとした。角度θr、θp、θyは、角速度データに基づいて求められる。すなわち、角度θrは、基準姿勢からのZ軸周りの回転角であり、当該回転角は、上述したように、Z軸周りの角速度の積分を算出することにより求められる。角度θp及びθyも同様に、それぞれX軸周り、Y軸周りの角速度の積分を算出することにより、求められる。なお、ジャイロセンサの出力には一般的にドリフト等による誤差が含まれる可能性があるので、角速度を積分するだけでなく、加速度データに基づいて姿勢を補正することができる。具体的には、入力装置8が静止しているときや、等速運動をしているときは、加速度データが示す加速度が重力であるので、その方向から入力装置8の姿勢を算出し、角速度によって算出された姿勢を加速度から算出された姿勢に近づける補正を行う。その際、加速度の大きさが重力の大きさに近いほど補正の度合いを高くするようにすれば、動いている場合等、加速度から姿勢を算出できない場合の姿勢をあまり反映させないようにすることができる。さらに、マーカ座標データに基づいて補正を行うことも可能である。すなわち、2つのマーカ座標を結ぶ方向によって、入力装置のロール方向の姿勢を算出することが可能であるし、マーカ座標の位置をヨーおよび/またはピッチ方向の姿勢に関連付けることも可能であるので、角速度によって算出された姿勢や加速度によって補正された姿勢を、マーカ座標に基づいて算出された姿勢に所定割合で近づけることで補正を行うことが可能である。   Here, the rotation angles in the roll direction (around the Z axis), the pitch direction (around the X axis), and the yaw direction (around the Y axis) were θr, θp, and θy, respectively. The angles θr, θp, and θy are obtained based on the angular velocity data. That is, the angle θr is a rotation angle around the Z axis from the reference posture, and the rotation angle is obtained by calculating the integral of the angular velocity around the Z axis as described above. Similarly, the angles θp and θy are obtained by calculating the integrals of the angular velocities around the X axis and the Y axis, respectively. Since the output of the gyro sensor may generally include an error due to drift or the like, it is possible not only to integrate the angular velocity but also to correct the posture based on the acceleration data. Specifically, when the input device 8 is stationary or moving at a constant speed, the acceleration indicated by the acceleration data is gravity, so the orientation of the input device 8 is calculated from the direction, and the angular velocity is calculated. Correction is performed so that the posture calculated by (1) approaches the posture calculated from the acceleration. At that time, if the degree of correction is made higher as the magnitude of acceleration is closer to the magnitude of gravity, the attitude when the attitude cannot be calculated from the acceleration, such as when moving, will not be reflected much. it can. Further, correction can be performed based on the marker coordinate data. That is, the orientation of the input device in the roll direction can be calculated from the direction connecting the two marker coordinates, and the marker coordinate position can be associated with the orientation in the yaw and / or pitch direction. It is possible to perform correction by bringing the posture calculated by the angular velocity and the posture corrected by the acceleration closer to the posture calculated based on the marker coordinates at a predetermined ratio.

上記回転行列Mは、Z軸を基準としたロール方向、ピッチ方向、ヨー方向の回転を表す回転行列の積である。すなわち、回転行列Mは、上記式(2)〜式(4)で表される各成分の回転行列の積である。本実施形態では、角速度データが更新されるタイミング(200分の1秒の周期)で、回転行列M(回転行列データ)が算出され、外部メインメモリ12に保存されるものとする。   The rotation matrix M is a product of rotation matrices representing rotations in the roll direction, pitch direction, and yaw direction with respect to the Z axis. That is, the rotation matrix M is a product of the rotation matrices of the respective components represented by the above formulas (2) to (4). In the present embodiment, it is assumed that a rotation matrix M (rotation matrix data) is calculated and stored in the external main memory 12 at a timing at which the angular velocity data is updated (cycle of 1/200 second).

ピッチ姿勢データは、入力装置8のxyz座標系におけるピッチ方向の姿勢を示すデータの集合であり、当該ピッチ方向の姿勢は、上記回転行列Mにより求められる。ここで、xyz座標系におけるピッチ方向の姿勢とは、物体座標系(XYZ座標系)で入力装置8を回転させた後の空間固定座標系(xyz座標系)から見たx軸周りの回転を表す姿勢である。   The pitch attitude data is a set of data indicating the attitude in the pitch direction in the xyz coordinate system of the input device 8, and the attitude in the pitch direction is obtained from the rotation matrix M. Here, the attitude in the pitch direction in the xyz coordinate system is the rotation around the x axis as viewed from the space fixed coordinate system (xyz coordinate system) after the input device 8 is rotated in the object coordinate system (XYZ coordinate system). It is a posture to represent.

ヨー姿勢データは、入力装置8のxyz座標系におけるヨー方向の姿勢を示すデータの集合であり、当該ヨー方向の姿勢は、上記回転行列Mにより求められる。ここで、xyz座標系におけるヨー方向の姿勢とは、物体座標系(XYZ座標系)で入力装置8を回転させた後の空間固定座標系(xyz座標系)から見たy軸周りの回転を表す姿勢である。   The yaw posture data is a set of data indicating the posture in the yaw direction in the xyz coordinate system of the input device 8, and the posture in the yaw direction is obtained from the rotation matrix M. Here, the orientation in the yaw direction in the xyz coordinate system refers to the rotation around the y axis as viewed from the space fixed coordinate system (xyz coordinate system) after the input device 8 is rotated in the object coordinate system (XYZ coordinate system). It is a posture to represent.

難易度格納領域64には、ゲームの難易度を示す値が記憶される。本実施形態では、難易度の値は0〜25の範囲の実数値を取り得るものとする。   The difficulty level storage area 64 stores a value indicating the difficulty level of the game. In the present embodiment, it is assumed that the difficulty value can take a real value in the range of 0 to 25.

振り強さ格納領域65には、最新の振り強さP0と、1サンプル前の振り強さP1と、2サンプル前の振り強さP2が記憶される。最新の振り強さP0は、最新の角速度データに基づいて計算された振り強さPである。1サンプル前の振り強さP1は、1サンプル前の角速度データ(すなわち、最新の角速度データの1つ前に取得された角速度データ)に基づいて計算された振り強さPである。同様に、2サンプル前の振り強さP2とは、2サンプル前の角速度データ(すなわち、最新の角速度データの2つ前に取得された角速度データ)に基づいて計算された振り強さPである。振り強さPの計算方法については後述する。   In the swing strength storage area 65, the latest swing strength P0, the swing strength P1 one sample before, and the swing strength P2 two samples before are stored. The latest swing strength P0 is the swing strength P calculated based on the latest angular velocity data. The swing strength P1 of one sample before is the swing strength P calculated based on the angular velocity data of one sample before (that is, the angular velocity data acquired immediately before the latest angular velocity data). Similarly, the swing strength P2 two samples before is the swing strength P calculated based on the angular velocity data two samples before (that is, the angular velocity data acquired two times before the latest angular velocity data). . A method for calculating the swing strength P will be described later.

ひねり量格納領域66には、1投目のひねり量R1、2投目のひねり量R2、3投目のひねり量R3、および4投目のひねり量R4が記憶される。1投目のひねり量R1は、上記バスケットボールゲームにおいてプレイヤキャラクタが放つ全25本のシュートの内、最初のシュートを打つ際に角速度データに基づいて計算されたひねり量Rである。2投目のひねり量R2は、上記バスケットボールゲームにおいてプレイヤキャラクタが放つ全25本のシュートの内、2投目のシュートを打つ際に角速度データに基づいて計算されたひねり量Rである。同様に、3投目のひねり量R3は、3投目のシュートを打つ際に角速度データに基づいて計算されたひねり量Rであり、4投目のひねり量R4は、4投目のシュートを打つ際に角速度データに基づいて計算されたひねり量Rである。ひねり量Rの計算方法については後述する。   In the twist amount storage area 66, a twist amount R1 for the first throw, a twist amount R2 for the third throw, a twist amount R3 for the third throw, and a twist amount R4 for the fourth throw are stored. The twist amount R1 of the first throw is the twist amount R calculated based on the angular velocity data when the first shot is shot out of all 25 shots emitted by the player character in the basketball game. The second-throw twist amount R2 is a twist amount R calculated based on the angular velocity data when the second-throw shot is shot out of all 25 shots released by the player character in the basketball game. Similarly, the twist amount R3 of the third throw is the twist amount R calculated based on the angular velocity data when the third shot is shot, and the twist amount R4 of the fourth throw is the shot of the fourth throw. This is the twist amount R calculated based on the angular velocity data when hit. A method of calculating the twist amount R will be described later.

得点格納領域67には、プレイヤが獲得した得点を示す値が記憶される。   In the score storage area 67, a value indicating the score acquired by the player is stored.

なお、外部メインメモリ12には、上記のようなゲームプログラムおよび各種データの他にも、ゲームに登場する各種オブジェクト(プレイヤキャラクタ、ボール等)の画像データや、オブジェクトの各種パラメータを示すデータ等、ゲーム処理に必要なデータが記憶される。   In addition to the game program and various data as described above, the external main memory 12 includes image data of various objects appearing in the game (player character, ball, etc.), data indicating various parameters of the object, etc. Data necessary for game processing is stored.

なお、上記のようなゲームプログラムおよび各種データは、外部メインメモリ12ではなく、内部メインメモリ11eに記憶されてもよい。   The game program and various data as described above may be stored not in the external main memory 12 but in the internal main memory 11e.

また、上述したような各種データの全てが外部メインメモリ12に記憶されている必要はなく、少なくともゲーム処理において必要となるデータさえ外部メインメモリ12に記憶されていればよい。例えば、ゲーム処理においてヨー姿勢データを利用しない場合には、外部メインメモリ12にヨー姿勢データを記憶しないようにしてもよい。   In addition, it is not necessary that all the various data as described above is stored in the external main memory 12, and at least data necessary for the game process may be stored in the external main memory 12. For example, when the yaw attitude data is not used in the game process, the yaw attitude data may not be stored in the external main memory 12.

次に、図15〜図16のフローチャートを参照して、前述のゲームプログラムに基いてゲーム装置3のCPU10によって実行されるゲーム処理の流れを説明する。   Next, a flow of game processing executed by the CPU 10 of the game apparatus 3 based on the above-described game program will be described with reference to flowcharts of FIGS.

ゲーム装置3の電源が投入されると、ゲーム装置3のCPU10は、図示しないブートROMに記憶されている起動プログラムを実行し、これによって外部メインメモリ12等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムが外部メインメモリ12に読み込まれ、CPU10によって当該ゲームプログラム61の実行が開始される。図15に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。なお、図15および図16のフローチャートでは、説明を簡単にするために、コントローラ5から操作データを周期的に取得して外部メインメモリ12に格納する処理や、当該取得した操作データに基づいて入力装置8の姿勢を表す回転行列等を算出して外部メインメモリ12に格納する処理は省略している。また、図15および図16のフローチャートでは、当業者にとって周知の技術であるプレイヤキャラクタのモーション制御処理やゲーム画像生成処理についても省略している。   When the power of the game apparatus 3 is turned on, the CPU 10 of the game apparatus 3 executes a startup program stored in a boot ROM (not shown), whereby each unit such as the external main memory 12 is initialized. Then, the game program stored in the optical disc 4 is read into the external main memory 12, and the CPU 10 starts executing the game program 61. The flowchart shown in FIG. 15 is a flowchart showing a process performed after the above process is completed. In the flowcharts of FIGS. 15 and 16, for the sake of simplicity, the operation data is periodically acquired from the controller 5 and stored in the external main memory 12 or input based on the acquired operation data. A process of calculating a rotation matrix representing the attitude of the apparatus 8 and storing it in the external main memory 12 is omitted. In the flowcharts of FIGS. 15 and 16, the player character motion control process and the game image generation process, which are techniques well known to those skilled in the art, are also omitted.

ステップS10において、CPU10は、初期化処理を行う。この初期化処理には、外部メインメモリ12に記憶されている各種データを初期値にセットする処理等が含まれる。例えば、難易度は初期値「1」にセットされ、得点は初期値「0」にセットされる。   In step S10, the CPU 10 performs an initialization process. This initialization process includes a process of setting various data stored in the external main memory 12 to initial values. For example, the difficulty level is set to an initial value “1”, and the score is set to an initial value “0”.

ステップS11において、CPU10は、コントローラ5の姿勢が下向き(すなわち、コントローラ5の前端がコントローラ5の後端よりも低い状態)か否かを判断する。この判断は、例えば、回転行列MのZy成分が負である場合には、コントローラ5のZ軸がxyz空間内の下方向を向いていることになるので、コントローラ5の姿勢が下向きと判定することができる。また、外部メインメモリ12に格納されているピッチ姿勢データに基づいて行うこともできる。ステップS11において、コントローラ5の姿勢が下向きであると判断された場合には、処理はステップS12に進み、そうでない場合には、コントローラ5の姿勢が下向きであると判断されるまでステップS11を繰り返す。   In step S <b> 11, the CPU 10 determines whether or not the attitude of the controller 5 is downward (that is, the front end of the controller 5 is lower than the rear end of the controller 5). This determination is made, for example, when the Zy component of the rotation matrix M is negative, because the Z axis of the controller 5 is directed downward in the xyz space, and thus the attitude of the controller 5 is determined to be downward. be able to. It can also be performed based on pitch attitude data stored in the external main memory 12. If it is determined in step S11 that the orientation of the controller 5 is downward, the process proceeds to step S12. If not, step S11 is repeated until it is determined that the orientation of the controller 5 is downward. .

ステップS12において、CPU10は、コントローラ5のBボタン32iがプレイヤによって押されたか否かを操作データ格納領域62のボタンデータに基づいて判断する。そして、Bボタン32iが押されたと判断された場合には処理はステップS13に進み、そうでない場合には、処理はステップS11に戻る。   In step S <b> 12, the CPU 10 determines whether or not the B button 32 i of the controller 5 has been pressed by the player based on the button data in the operation data storage area 62. If it is determined that the B button 32i has been pressed, the process proceeds to step S13. If not, the process returns to step S11.

ステップS13において、CPU10は、仮想ゲーム空間においてプレイヤキャラクタがボールを掴むように、プレイヤキャラクタのモーションを制御する。   In step S13, the CPU 10 controls the motion of the player character so that the player character grabs the ball in the virtual game space.

ステップS14において、CPU10は、プレイヤによるジャンプ操作が行われたかどうかを判断する。本実施形態では、プレイヤが入力装置8を上に振り上げたかどうかを、現在のZ軸方向の加速度と、現在のX軸周りの角速度と、現在のY軸周りの角速度と、現在の入力装置8のxyz座標系におけるピッチ方向の姿勢とから総合的に判断し、プレイヤが入力装置8を頭上に振り上げたと判断される場合に、ジャンプ操作が行われたと判断する。そして、ジャンプ操作が行われたと判断された場合には処理はステップS15に進み、そうでない場合には、ジャンプ開始条件を満たしたと判断されるまでステップS14を繰り返す。   In step S14, the CPU 10 determines whether or not a jump operation has been performed by the player. In the present embodiment, whether or not the player has swung the input device 8 up is determined based on the current acceleration in the Z-axis direction, the current angular velocity around the X-axis, the current angular velocity around the Y-axis, and the current input device 8. When the player determines that the player has swung the input device 8 above the head, it is determined that a jump operation has been performed. If it is determined that the jump operation has been performed, the process proceeds to step S15. If not, step S14 is repeated until it is determined that the jump start condition is satisfied.

ステップS15において、CPU10は、仮想ゲーム空間においてプレイヤキャラクタがジャンプを開始するように、プレイヤキャラクタのモーションを制御する。   In step S15, the CPU 10 controls the motion of the player character so that the player character starts jumping in the virtual game space.

ステップS16において、CPU10は、シュート処理を行う。このシュート処理は、プレイヤキャラクタにボールをシュートさせるための処理である。シュート処理の詳細については図16のフローチャートを参照して後述する。ステップS16のシュート処理が終了すると、処理はステップS17に進む。   In step S16, the CPU 10 performs a shoot process. This shooting process is a process for causing the player character to shoot a ball. Details of the chute process will be described later with reference to the flowchart of FIG. When the shooting process in step S16 ends, the process proceeds to step S17.

ステップS17において、CPU10は、規定回数(本実施形態では25回)のシュートが終了したかどうかを判断する。そして、規定回数のシュートが終了した場合には処理はステップS18に進み、そうでない場合には処理はステップS11に戻る。   In step S <b> 17, the CPU 10 determines whether or not the specified number of shots (25 times in the present embodiment) has been shot. If the prescribed number of shots have been completed, the process proceeds to step S18. If not, the process returns to step S11.

ステップS18において、CPU10は、プレイヤが獲得した得点等を示す結果画像を生成して、テレビ2の画面に表示し、ゲーム処理を終了する。   In step S18, the CPU 10 generates a result image indicating the score obtained by the player, displays it on the screen of the television 2, and ends the game process.

次に、図16のフローチャートを参照して、図15のステップS16のシュート処理について詳細に説明する。   Next, the chute process in step S16 in FIG. 15 will be described in detail with reference to the flowchart in FIG.

シュート処理が開始されると、ステップS20において、CPU10は、最新の角速度データに基づいて振り強さPを計算し、その値を外部メインメモリ12に「最新の振り強さP0」として格納する。このとき、ステップS20の直前まで「最新の振り強さP0」として外部メインメモリ12に記憶されていた値については、「1サンプル前の振り強さP1」として外部メインメモリ12に記憶され、同様に、ステップS20の直前まで「1サンプル前の振り強さP1」として外部メインメモリ12に記憶されていた値については、「2サンプル前の振り強さP2」として外部メインメモリ12に記憶される。   When the chute process is started, in step S20, the CPU 10 calculates the swing strength P based on the latest angular velocity data, and stores the value as “latest swing strength P0” in the external main memory 12. At this time, the value stored in the external main memory 12 as “the latest swing strength P0” until immediately before step S20 is stored in the external main memory 12 as “the swing strength P1 before one sample”, and the same. The value stored in the external main memory 12 as “the swing strength P1 before one sample” until immediately before step S20 is stored in the external main memory 12 as “the swing strength P2 before two samples”. .

振り強さPとは、プレイヤが入力装置8を振る強さを示す指標であって、本実施形態では、一例として、X軸周りの角速度とY軸周りの角速度に基づいて計算される。具体的には、X軸周りの角速度をRxとし、Y軸周りの角速度をRyとすると、振り強さPは、√(Rx^2+Ry^2)として計算される。このようにして計算される振り強さPは、入力装置8を回転させたときの角速度のX軸周り及び/又はY軸周りの大きさを表している。プレイヤが、バスケットボールにおけるシュート動作のように、入力装置8を把持している腕を図17に示す位置Aから位置Bおよび位置Cを経て位置Dまで振った場合、その過程において、振り強さPの値は図18に示した曲線のように変化する。なお、図18の例では、プレイヤの腕が位置Bにあるときに振り強さPが極大となっているが、振り強さPの極大点は、プレイヤによる入力装置8の振り方によって変化する。なお、図17では、プレイヤは、入力装置8を振ったときに入力装置8がX軸周りに回転するような持ち方で入力装置8を把持しているが、本実施形態では上記のように、X軸周りの角速度とY軸周りの角速度の両方を加味して振り強さPが計算されるので、プレイヤがどのような持ち方で入力装置8を把持していても、プレイヤが入力装置8を振る強さを振り強さPとして適切に検出することができる。   The swing strength P is an index indicating the strength with which the player swings the input device 8. In the present embodiment, for example, the swing strength P is calculated based on the angular velocity around the X axis and the angular velocity around the Y axis. Specifically, if the angular velocity around the X axis is Rx and the angular velocity around the Y axis is Ry, the swing strength P is calculated as √ (Rx ^ 2 + Ry ^ 2). The swing strength P calculated in this way represents the magnitude of the angular velocity around the X axis and / or around the Y axis when the input device 8 is rotated. When the player swings the arm holding the input device 8 from the position A shown in FIG. 17 to the position D through the position B and the position C as in the case of a shooting action in basketball, in the process, the swing strength P The value of changes as shown by the curve in FIG. In the example of FIG. 18, the swing strength P is maximized when the player's arm is at the position B, but the maximum point of the swing strength P varies depending on how the player swings the input device 8. . In FIG. 17, the player holds the input device 8 in such a way that the input device 8 rotates around the X axis when the input device 8 is shaken, but in the present embodiment, as described above. Since the swing strength P is calculated by taking into account both the angular velocity around the X axis and the angular velocity around the Y axis, the player can input the input device 8 no matter how the player holds the input device 8. The strength of shaking 8 can be appropriately detected as the swing strength P.

ステップS21において、CPU10は、振り強さPの極大値が投球閾値以上かどうかを判断する。本実施形態では、振り強さPが極大点に達したかどうかは、外部メインメモリ12に記憶されている「最新の振り強さP0」、「1サンプル前の振り強さP1」、および「2サンプル前の振り強さP2」に基づいて判断される。具体的には、「1サンプル前の振り強さP1」の値が「2サンプル前の振り強さP2」の値よりも大きく、なおかつ「最新の振り強さP0」の値が「1サンプル前の振り強さP1」の値以下である場合に、振り強さPが極大点に達したと判断し、そのときの「1サンプル前の振り強さP1」の値が極大値として求まる(ただし、極大値を厳密に求める必要が無い場合には、そのときの「最新の振り強さP0」の値を極大値として扱ってもよい)。例えば、振り強さPが図19に示すように変化した場合、図19の点P1の大きさが、振り強さPの極大値として求まる。なお、振り強さPが極大点に達したかどうかを判断するだけでは、プレイヤがシュート操作を行ったかどうかを正確に判断することはできない。なぜなら、プレイヤが入力装置8を振っていない状態でも振り強さPの値は常時わずかに変動し、そのような場合であっても小さい値で極大点ができるからである。そこで本実施形態では、振り強さPの極大値が所定の投球閾値(図18参照)以上である場合に、プレイヤによるシュート操作が行われたと判断する。なお、振り強さPの極大値が所定の投球閾値“よりも大きい”場合に、プレイヤによるシュート操作が行われたと判断しても、実質的に同じ判断が可能である。ステップS21において、振り強さPの極大値が投球閾値以上であると判断された場合には処理はステップS22に進み、そうでない場合には処理はステップS20に戻る。なお、以下の説明では、振り強さPが投球閾値以上であって且つ極大となった時点(ただし、ここで言う「時点」とは、振り強さPが極大となった“瞬間”を厳密に指すものではない)のことを、単に「投球時」と呼ぶことがある。   In step S21, the CPU 10 determines whether or not the maximum value of the swing strength P is equal to or greater than the pitching threshold value. In the present embodiment, whether or not the swing strength P has reached the maximum point is determined based on the “latest swing strength P0”, “the swing strength P1 one sample before” stored in the external main memory 12 and “ Judgment is made based on the swing strength P2 before two samples. Specifically, the value of “swing strength P1 before one sample” is larger than the value of “swing strength P2 before two samples” and the value of “latest swing strength P0” is “one sample before” When the swing strength P is equal to or less than the value of the swing strength P1, the swing strength P is determined to have reached the maximum point, and the value of “the swing strength P1 one sample before” is obtained as the maximum value (however, If it is not necessary to determine the maximum value strictly, the value of “latest swing strength P0” at that time may be treated as the maximum value). For example, when the swing strength P changes as shown in FIG. 19, the size of the point P <b> 1 in FIG. 19 is obtained as the maximum value of the swing strength P. Note that it is not possible to accurately determine whether or not the player has performed a shooting operation only by determining whether or not the swing strength P has reached the maximum point. This is because the swing strength P always varies slightly even when the player is not shaking the input device 8, and even in such a case, the maximum point can be obtained with a small value. Therefore, in the present embodiment, when the maximum value of the swing strength P is equal to or greater than a predetermined pitching threshold value (see FIG. 18), it is determined that a shooting operation has been performed by the player. Note that if the maximum value of the swing strength P is “greater than” a predetermined pitch threshold value, even if it is determined that a shooting operation has been performed by the player, substantially the same determination can be made. If it is determined in step S21 that the maximum value of the swing strength P is equal to or greater than the pitching threshold, the process proceeds to step S22, and if not, the process returns to step S20. In the following description, when the swing strength P is equal to or greater than the throwing threshold value and becomes a maximum (however, the “time point” here refers to the “moment” at which the swing strength P is maximum). Is not simply referred to as “when throwing”.

ステップS22において、CPU10は、投球時のコントローラ5の姿勢に基づいて、仮想ゲーム空間におけるボールの投球方向の仰角θを決定する。仮想ゲーム空間におけるボールの投球方向とは、図20に示すように、プレイヤキャラクタがボールをシュートするときのボールの射出方向のことである。投球方向の仰角θは、投球方向と仮想ゲーム空間における水平面とがなす角度を表している。   In step S22, the CPU 10 determines the elevation angle θ in the pitching direction of the ball in the virtual game space based on the posture of the controller 5 at the time of pitching. As shown in FIG. 20, the throwing direction of the ball in the virtual game space is the direction in which the ball is ejected when the player character shoots the ball. An elevation angle θ in the pitch direction represents an angle formed by the pitch direction and a horizontal plane in the virtual game space.

本実施形態では、投球時のコントローラ5のピッチ方向の姿勢に基づいて、投球方向の仰角θを決定する。コントローラ5のピッチ方向の姿勢は、外部メインメモリ12に記憶されているピッチ姿勢データにより表される。CPU10は、例えば図21に示すように、コントローラ5のピッチ方向の姿勢と投球方向の仰角θとの対応関係を定義した関数またはテーブルを用いて、仰角θを決定する。なお、図21の例では、コントローラ5のピッチ方向の姿勢と仰角θとの対応関係が直線(すなわち一次関数)で示されているが、任意の曲線であっても構わない。これは、後述する他の図面(すなわち図22〜図26、図30)についても同様である。本実施形態では、例えばプレイヤが図17に示すように腕を振る場合、振り強さPが極大点に到達するタイミングが早くなるほど仰角θはより大きくなり、振り強さPが極大点に到達するタイミングが遅くなるほど仰角θはより小さくなる。なお、仰角θが大きすぎたり小さすぎたりすると、仮想ゲーム空間においてボールがリングに到達しない。具体的には、仰角θが、図21に示す成功下限仰角θ1よりも小さい場合や、成功上限仰角θ2よりも大きい場合には、ボールがリングに到達不可能となる。したがって、シュートを成功させるためには、投球時のコントローラ5のピッチ方向の姿勢が、図21に示す成功範囲に収まっている必要がある。すなわち、シュートを成功させるためには、プレイヤは、投球時のコントローラ5のピッチ方向の姿勢が、図21に示す成功範囲内にある間に、振り強さPを極大点に到達させる必要がある。   In the present embodiment, the elevation angle θ in the pitch direction is determined based on the pitch direction posture of the controller 5 at the time of pitch. The attitude of the controller 5 in the pitch direction is represented by pitch attitude data stored in the external main memory 12. For example, as shown in FIG. 21, the CPU 10 determines the elevation angle θ using a function or table that defines the correspondence between the pitch direction posture of the controller 5 and the pitch direction elevation angle θ. In the example of FIG. 21, the correspondence relationship between the posture of the controller 5 in the pitch direction and the elevation angle θ is shown by a straight line (that is, a linear function), but may be an arbitrary curve. The same applies to other drawings described later (that is, FIGS. 22 to 26 and FIG. 30). In this embodiment, for example, when the player swings his arm as shown in FIG. 17, the earlier the timing at which the swing strength P reaches the maximum point, the greater the elevation angle θ, and the swing strength P reaches the maximum point. The later the timing, the smaller the elevation angle θ. If the elevation angle θ is too large or too small, the ball does not reach the ring in the virtual game space. Specifically, when the elevation angle θ is smaller than the success lower limit elevation angle θ1 shown in FIG. 21 or larger than the success upper limit elevation angle θ2, the ball cannot reach the ring. Therefore, in order to make the shot successful, the posture in the pitch direction of the controller 5 at the time of pitching needs to be within the success range shown in FIG. That is, in order to make the shot successful, the player needs to make the swing strength P reach the maximum point while the posture in the pitch direction of the controller 5 at the time of pitching is within the success range shown in FIG. .

ステップS23において、CPU10は、ステップS22において決定された仰角θに基づいて、成功下限初速度V1および成功上限初速度V2を計算する。成功下限初速度V1とは、プレイヤキャラクタが、リングに向かってステップS22において決定された仰角θの方向にボールを投球したと仮定(なお、左右方向に関してはリングに向かって真っ直ぐに投球したと仮定)したときに、シュートが成功するためのボールの初速度Vの下限値である。言い換えると、ボールの初速度Vが成功下限初速度V1を下回っている場合には、ボールはリングに到達せず、シュートは失敗する。また、成功上限初速度V2とは、プレイヤキャラクタが、リングに向かってステップS22において決定された仰角θの方向にボールを投球したときに、シュートが成功するためのボールの初速度Vの上限値である。言い換えると、ボールの初速度Vが成功上限初速度V2を上回っている場合には、ボールはリングを越えてしまい、シュートは失敗する。   In step S23, the CPU 10 calculates the success lower limit initial speed V1 and the success upper limit initial speed V2 based on the elevation angle θ determined in step S22. The success lower limit initial speed V1 is assumed to be that the player character has thrown the ball toward the ring in the direction of the elevation angle θ determined in step S22 (note that the left and right directions have been thrown straight toward the ring. ) Is the lower limit value of the initial velocity V of the ball for a successful shot. In other words, if the initial velocity V of the ball is below the lower limit of success initial velocity V1, the ball does not reach the ring and the shot fails. Further, the success upper limit initial speed V2 is the upper limit value of the initial speed V of the ball for a successful shot when the player character throws the ball toward the ring in the direction of the elevation angle θ determined in step S22. It is. In other words, when the initial velocity V of the ball exceeds the success upper limit initial velocity V2, the ball goes over the ring and the shot fails.

ステップS24において、CPU10は、振り強さPの極大値(すなわち、投球時の振り強さP)に基づいて、ボールの初速度Vを決定する。CPU10は、例えば図22に示すように、振り強さPの極大値とボールの初速度Vとの対応関係を定義した関数またはテーブルを用いて、初速度Vを決定する。本実施形態では、図22に示すように、振り強さPの極大値に一定の成功範囲が定められており、振り強さPの極大値が当該成功範囲の下限(成功下限極大値)に一致する場合には、ボールの初速度Vは、成功下限初速度V1と同じ値となり、振り強さPの極大値が当該成功範囲の上限(成功上限極大値)に一致する場合には、ボールの初速度Vは、成功上限初速度V2と同じ値となる。振り強さPの極大値が成功下限極大値を下回る場合には、ボールの初速度Vは成功下限初速度V1よりも小さくなり、ボールはリングに到達せず、シュートは失敗する。同様に、振り強さPの極大値が成功範囲の上限を上回る場合には、ボールの初速度Vは成功上限初速度V2よりも大きくなり、ボールはリングを越えてしまい、シュートは失敗する。また、振り強さPの極大値が予め定められた成功範囲に収まっている場合には、ボールの初速度Vは、成功下限初速度V1から成功上限初速度V2までの範囲内の値に決定される。   In step S24, the CPU 10 determines the initial velocity V of the ball based on the maximum value of the swing strength P (that is, the swing strength P at the time of pitching). For example, as shown in FIG. 22, the CPU 10 determines the initial speed V using a function or table that defines the correspondence between the maximum value of the swing strength P and the initial speed V of the ball. In this embodiment, as shown in FIG. 22, a certain success range is defined for the maximum value of the swing strength P, and the maximum value of the swing strength P is set to the lower limit (success lower limit maximum value) of the success range. When the values match, the initial velocity V of the ball becomes the same value as the lower limit initial velocity V1, and when the maximum value of the swing strength P matches the upper limit of the success range (success upper limit maximum value) The initial speed V is the same value as the success upper limit initial speed V2. When the maximum value of the swing strength P is less than the lower limit of success, the initial velocity V of the ball is smaller than the lower limit of initial velocity V1, the ball does not reach the ring, and the shot fails. Similarly, when the maximum value of the swing strength P exceeds the upper limit of the success range, the initial velocity V of the ball becomes higher than the upper limit of success initial velocity V2, the ball crosses the ring, and the shot fails. When the maximum value of the swing strength P is within a predetermined success range, the initial velocity V of the ball is determined to be a value within the range from the success lower limit initial velocity V1 to the success upper limit initial velocity V2. Is done.

ステップS25において、CPU10は、投球時のZ軸周りの角速度に基づいて、ひねり量Rを計算する。本実施形態では、CPU10は、外部メインメモリ12に記憶されている角速度データから、直近の数サンプル分のZ軸周りの角速度の平均値を、ひねり量Rとして計算する。なお、他の実施形態では、最新のZ軸周りの角速度を、ひねり量Rとして利用してもよい。   In step S25, the CPU 10 calculates the twist amount R based on the angular velocity around the Z axis at the time of pitching. In the present embodiment, the CPU 10 calculates an average value of angular velocities around the Z axis for the most recent samples as the twist amount R from the angular velocity data stored in the external main memory 12. In other embodiments, the latest angular velocity around the Z axis may be used as the twist amount R.

ステップS26において、CPU10は、今回のシュートが、バスケットボールゲームが開始されてから5投目以降かどうかを判断し、今回のシュートが5投目以降である場合には処理はステップS27に進み、そうでない場合(すなわち、今回のシュートが1投目〜4投目のいずれかである場合)には処理はステップS28に進む。   In step S26, the CPU 10 determines whether or not the current shoot is the fifth and subsequent throws after the basketball game is started. If the current shoot is the fifth and subsequent shots, the process proceeds to step S27, and so on. If not (that is, if the current shot is one of the first to fourth shots), the process proceeds to step S28.

ステップS27において、CPU10は、外部メインメモリ12に記憶されている「1投目のひねり量R1」〜「4投目のひねり量R4」に基づいて、今回のひねり量R(すなわち、直前のステップS25で計算したひねり量R)を補正する。ステップS27におけるひねり量Rの補正方法については後述する。   In step S27, the CPU 10 determines the current twist amount R (that is, the immediately preceding step) based on the “first throw twist amount R1” to “fourth throw twist amount R4” stored in the external main memory 12. The twist amount R) calculated in S25 is corrected. A method of correcting the twist amount R in step S27 will be described later.

ステップS28において、CPU10は、今回のひねり量R(すなわち、直前のステップS25で計算したひねり量R)の値を、「1投目のひねり量R1」〜「4投目のひねり量R4」のいずれかとして、外部メインメモリ12に記憶する。例えば、今回のシュートが1投目である場合には、今回のひねり量Rを「1投目のひねり量R1」として記憶する。同様に、今回のシュートが2投目である場合には、今回のひねり量Rを「2投目のひねり量R1」として記憶する。   In step S28, the CPU 10 determines the value of the current twist amount R (that is, the twist amount R calculated in the previous step S25) from "the first throw twist amount R1" to "the fourth throw twist amount R4". One of them is stored in the external main memory 12. For example, when the current shot is the first throw, the current twist amount R is stored as “first throw twist amount R1”. Similarly, when the current shot is the second throw, the current twist amount R is stored as “the second throw twist amount R1”.

ステップS29において、CPU10は、外部メインメモリ12に記憶されている「難易度」の値に基づいて、成功下限ひねり量Rminおよび成功上限ひねり量Rmaxを決定する。成功下限ひねり量Rminおよび成功上限ひねり量Rmaxは、シュートを成功させるためのひねり量Rの成功範囲の下限および上限をそれぞれ示す変数であり、それらの値は難易度に応じて可変である。本実施形態では、成功下限ひねり量Rminは負の値であり、成功上限ひねり量Rmaxは正の値である。CPU10は、例えば図23に示すように、難易度と成功下限ひねり量Rminとの対応関係を定義した関数またはテーブルを用いて、成功下限ひねり量Rminを決定する。また、CPU10は、例えば図24に示すように、難易度と成功上限ひねり量Rmaxとの対応関係を定義した関数またはテーブルを用いて、成功上限ひねり量Rmaxを決定する。その結果、本実施形態では、難易度がより高くなるほど、ひねり量Rの成功範囲がより狭くなる。   In step S <b> 29, the CPU 10 determines the success lower limit twist amount Rmin and the success upper limit twist amount Rmax based on the value of the “difficulty” stored in the external main memory 12. The success lower limit twist amount Rmin and the success upper limit twist amount Rmax are variables respectively indicating the lower limit and the upper limit of the success range of the twist amount R for successfully shooting, and these values are variable according to the difficulty level. In the present embodiment, the success lower limit twist amount Rmin is a negative value, and the success upper limit twist amount Rmax is a positive value. For example, as illustrated in FIG. 23, the CPU 10 determines the success lower limit twist amount Rmin by using a function or a table that defines a correspondence relationship between the difficulty level and the success lower limit twist amount Rmin. Further, for example, as shown in FIG. 24, the CPU 10 determines the success upper limit twist amount Rmax by using a function or a table that defines a correspondence relationship between the difficulty level and the success upper limit twist amount Rmax. As a result, in this embodiment, the higher the difficulty level, the narrower the success range of the twist amount R.

ステップS30において、CPU10は、ステップS27において補正された後のひねり量R(ただし、今回のシュートが1投目〜4投目である場合には、ステップS25において計算されたひねり量R)に基づいて、仮想ゲーム空間におけるボールの投球方向の方位角φを決定する。図20に示すように、投球方向の方位角φは、仮想ゲーム空間においてプレイヤキャラクタから見たリングの方向を表す水平ベクトルを前方ベクトルとしたときに、当該前方ベクトルと水平面に投影した投球方向とがなす角度を表している。   In step S30, the CPU 10 is based on the twist amount R corrected in step S27 (however, if the current shot is the first to fourth shots, the twist amount R calculated in step S25). Thus, the azimuth angle φ in the pitching direction of the ball in the virtual game space is determined. As shown in FIG. 20, the azimuth angle φ of the pitch direction is calculated by using the front vector and the pitch direction projected on the horizontal plane when the horizontal vector representing the ring direction viewed from the player character in the virtual game space is a front vector. Represents the angle formed by.

CPU10は、例えば図25に示すように、ひねり量Rと投球方向の方位角φとの対応関係を定義した関数またはテーブルを用いて、方位角φを決定する。本実施形態では、ひねり量Rの目標値は「0」であり、ひねり量Rが「0」のときに方位角φは「0」となる。すなわち、投球時にコントローラ5がZ軸周りに全く回転していなければ、ボールはリングの中心から左右方向にずれることなく、リングの中心に向かって真っ直ぐに放たれる。一方、投球時にコントローラ5がZ軸周りに回転していれば、その角速度に応じて方位角φの絶対値が大きくなり、ボールがリングの中心から左右方向にずれた方向に放たれる。なお、方位角φが大きすぎたり小さすぎたりすると、仮想ゲーム空間においてボールの軌道がリングから外れる。具体的には、方位角φが図25に示す成功下限方位角φ1よりも小さい場合には、ボールの軌道がリングの左側に外れ、方位角φが図25に示す成功上限方位角φ2よりも大きい場合には、ボールの軌道がリングの右側に外れる。したがって、シュートを成功させるためには、ひねり量Rが図25に示す成功範囲(すなわち目標範囲)に収まっている必要がある。   For example, as shown in FIG. 25, the CPU 10 determines the azimuth angle φ using a function or table that defines the correspondence between the twist amount R and the azimuth angle φ in the pitching direction. In the present embodiment, the target value of the twist amount R is “0”, and the azimuth angle φ is “0” when the twist amount R is “0”. That is, if the controller 5 does not rotate around the Z-axis at the time of pitching, the ball is released straight toward the center of the ring without shifting from the center of the ring in the left-right direction. On the other hand, if the controller 5 is rotating around the Z axis at the time of pitching, the absolute value of the azimuth angle φ increases according to the angular velocity, and the ball is released in a direction shifted in the left-right direction from the center of the ring. If the azimuth angle φ is too large or too small, the ball trajectory deviates from the ring in the virtual game space. Specifically, when the azimuth angle φ is smaller than the lower limit azimuth angle φ1 shown in FIG. 25, the trajectory of the ball deviates to the left side of the ring, and the azimuth angle φ is higher than the upper limit azimuth angle φ2 shown in FIG. If it is larger, the ball trajectory is off to the right of the ring. Therefore, in order to make the shot successful, the twist amount R needs to be within the success range (that is, the target range) shown in FIG.

なお、ひねり量Rの成功範囲の下限(すなわち、成功下限ひねり量Rmin)および上限(すなわち、成功上限ひねり量Rmax)は、ステップS29において難易度に基づいて決定されたものである。したがって、現在の難易度に応じて、ひねり量Rの成功範囲は変化する。図25は、難易度が「5」であるときのひねり量Rと方位角φの関係を示しており、図26は、難易度が「20」であるときのひねり量Rと方位角φの関係を示している。図25および図26から明らかなように、難易度が高いほど、ひねり量Rの成功範囲が狭くなる。すなわち、難易度が高いほど、シュートを成功させるためにより高精度のシュート操作がプレイヤに要求されることになる。逆に、難易度が低いほど、ひねり量Rの成功範囲が広がるので、同じフォームでシュート操作を行ったとしても、難易度が低いほどボールの軌道がリングの中央に大きく近づくように投球方向の方位角φが補正される。   Note that the lower limit (that is, the lower limit twist amount Rmin) and the upper limit (that is, the upper limit twist amount Rmax) of the success amount of the twist amount R are determined based on the difficulty level in step S29. Therefore, the success range of the twist amount R changes according to the current difficulty level. FIG. 25 shows the relationship between the twist amount R and the azimuth angle φ when the difficulty level is “5”, and FIG. 26 shows the relationship between the twist amount R and the azimuth angle φ when the difficulty level is “20”. Showing the relationship. As apparent from FIGS. 25 and 26, the higher the difficulty level, the narrower the success range of the twist amount R. In other words, the higher the difficulty level, the more accurate the shooting operation is required from the player for successful shooting. On the other hand, the lower the difficulty level, the wider the success range of the twist amount R. Therefore, even if the shooting operation is performed with the same form, the lower the difficulty level, the more the ball trajectory approaches the center of the ring. The azimuth angle φ is corrected.

ステップS31において、CPU10は、仮想ゲーム空間においてプレイヤキャラクタがシュートするように、プレイヤキャラクタのモーションを制御する。そして、CPU10は、ステップS22で決定された投球方向の仰角θ、ステップS24で決定された初速度V、およびステップS30で決定された投球方向の方位角φに基づいて、ボールの移動制御を行う。   In step S31, the CPU 10 controls the motion of the player character so that the player character shoots in the virtual game space. Then, the CPU 10 controls the movement of the ball based on the elevation angle θ in the pitch direction determined in step S22, the initial velocity V determined in step S24, and the azimuth angle φ in the pitch direction determined in step S30. .

ステップS32において、CPU10は、シュートの成否に応じて、外部メインメモリ12に記憶されている難易度と得点を更新する。具体的には、投球時のコントローラ5のピッチ方向の姿勢が図21に示す成功範囲に収まっており、かつ振り強さPの極大値が図22に示す成功範囲に収まっており、かつ投球時のひねり量Rが図25に示す成功範囲に収まっている場合(この場合、プレイヤキャラクタが放ったボールは結果的にリングを通過する)には、CPU10はシュートが成功したと判断し、そうでない場合には、CPU10はシュートが失敗したと判断する。   In step S <b> 32, the CPU 10 updates the difficulty level and score stored in the external main memory 12 in accordance with the success or failure of the shot. Specifically, the pitch direction posture of the controller 5 at the time of pitching is within the success range shown in FIG. 21, and the maximum value of the swing strength P is within the success range shown in FIG. When the twist amount R is within the success range shown in FIG. 25 (in this case, the ball released by the player character eventually passes through the ring), the CPU 10 determines that the shot is successful, and not so. In this case, the CPU 10 determines that the shooting has failed.

上記のステップS32において、難易度は基本的に、シュートが成功したときには増加され、シュートが失敗したときには減少される。ただし、難易度の更新方法としては種々のバリエーションが考えられる。以下、ステップS32における難易度の更新方法のバリエーションを説明する。   In step S32 described above, the difficulty level is basically increased when the shoot is successful and decreased when the shoot is unsuccessful. However, various variations can be considered as the method of updating the difficulty level. Hereinafter, the variation of the difficulty level update method in step S32 will be described.

図27は、シュートが成功した場合には現在の難易度に所定値(図27の例では「1」)を加算し、シュートが成功した場合には現在の難易度から所定値(図27の例では「1」)を減算する例である。このようにすることで、プレイヤの熟練度に応じて難易度が適応的に設定されるので、プレイヤにとって、ゲームが易しすぎたり難しすぎたりすることがなくなる。   In FIG. 27, when the shot is successful, a predetermined value (“1” in the example of FIG. 27) is added to the current difficulty level, and when the shot is successful, the predetermined value (FIG. 27) is calculated from the current difficulty level. In the example, “1”) is subtracted. In this way, the difficulty level is adaptively set according to the skill level of the player, so that the game is not too easy or too difficult for the player.

図28は、シュートが成功した場合には現在の難易度に所定値(図28の例では「1」)を加算し、シュートが失敗した場合には難易度を初期値(図28の例では「1」)にリセットする例である。このようにすることで、シュートに失敗したときに難易度が初期値に戻るので、シュートが連続して失敗する可能性が低くなり、プレイヤにとって快適なゲームプレイが可能となる。   In FIG. 28, when the shot is successful, a predetermined value (“1” in the example of FIG. 28) is added to the current difficulty level, and when the shot fails, the difficulty level is set to the initial value (in the example of FIG. 28). This is an example of resetting to “1”). By doing so, the difficulty level returns to the initial value when the shooting fails, so that the possibility of consecutive shooting failures is reduced, and a game play comfortable for the player is possible.

図29は、シュートが成功した場合には現在の難易度に所定値(図27の例では「1」)を加算し、シュートが成功した場合には現在の難易度から所定値(図27の例では「1」)を減算するとともに、シュートの成否に関わらず、1セット(図29の例では5本分のシュート)が終了する毎に難易度を初期値(図28の例では「1」)にリセットする例である。通常、プレイヤが前回のシュート操作から時間間隔をあまり空けずに次のシュート操作を行う場合には比較的高精度のシュート操作が可能であるが、前回のシュート操作から或る程度の時間間隔をおいてから次のシュート操作を行う場合にはシュート操作の精度が落ちる傾向にある。そこで、図29の例のように、1セットが終了する毎に難易度を初期値にリセットすることで、例えば各セット間のプレイヤキャラクタの移動演出などによって各セット間の時間間隔が大きく空く場合でも、各セットにおける最初のシュートが外れる可能性が低くなり、プレイヤにとって快適なゲームプレイが可能となる。   In FIG. 29, when the shot is successful, a predetermined value (“1” in the example of FIG. 27) is added to the current difficulty level, and when the shot is successful, the predetermined value (of FIG. 27) is calculated from the current difficulty level. In the example, “1”) is subtracted, and the difficulty level is set to the initial value (“1” in the example of FIG. 28) every time one set (5 shots in the example of FIG. 29) is completed, regardless of whether the shot is successful or not. )). Normally, when the player performs the next shooting operation without leaving a time interval from the previous shooting operation, a relatively high-precision shooting operation is possible, but a certain time interval from the previous shooting operation is possible. When the next shooting operation is performed, the accuracy of the shooting operation tends to decrease. Therefore, as shown in the example of FIG. 29, when the difficulty level is reset to the initial value every time one set is completed, for example, a time interval between the sets becomes large due to a movement effect of the player character between the sets. However, the possibility that the first shot in each set is missed becomes low, and a game play comfortable for the player becomes possible.

なお、本実施形態では、上記のようにシュートの成否に応じて難易度を更新しているが、シュートの成否だけでなく、さらに他の条件も加味して難易度を決定するようにしてもよい。例えば、プレイヤが所望の位置にプレイヤキャラクタを移動させてシュートを行わせることができるようなバスケットボールゲームにおいて、上記のようにシュートの成否に応じて更新される難易度を「基本難易度」として外部メインメモリ12に記憶しておき、ステップS29において成功上限ひねり度Rmaxおよび成功下限ひねり度Rminを決定する際には、基本難易度に対して、プレイヤキャラクタとリングの間の距離に応じた難易度オフセットを加算したものを用いて、成功上限ひねり度Rmaxおよび成功下限ひねり度Rminを決定するようにしてもよい。この場合、CPU10は、例えば図30のような関数またはテーブルを用いて難易度オフセットを決定することができる。   In the present embodiment, the difficulty level is updated according to the success or failure of the shoot as described above. However, the difficulty level may be determined by considering not only the success or failure of the shoot but also other conditions. Good. For example, in a basketball game in which the player can move the player character to a desired position and make a shot, the difficulty level updated according to the success or failure of the shot as described above is set as the “basic difficulty level”. When determining the success upper limit twist degree Rmax and the success lower limit twist degree Rmin in the main memory 12 and determining the success lower limit twist degree Rmin in step S29, the degree of difficulty corresponding to the distance between the player character and the ring with respect to the basic difficulty degree You may make it determine the success upper limit twist degree Rmax and the success lower limit twist degree Rmin using what added the offset. In this case, the CPU 10 can determine the difficulty level offset using, for example, a function or table as shown in FIG.

上記のステップS32が終了すると、シュート処理は終了する。   When step S32 is finished, the shooting process is finished.

次に、図16のステップS27におけるひねり量Rの補正方法について説明する。   Next, a method for correcting the twist amount R in step S27 in FIG. 16 will be described.

本実施形態では、1投目〜4投目のシュートを行った際のひねり量Rを、外部メインメモリ12にそれぞれ「1投目のひねり量R1」〜「4投目のひねり量R4」として記憶しておき、5投目以降のシュート処理時には、これらの「1投目のひねり量R1」〜「4投目のひねり量R4」を利用して、今回のひねり量R(すなわち、直前のステップS25において計算されたひねり量R)を補正する。より具体的には、「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値を算出し、当該算出された平均値を今回のひねり量Rから減算する。   In the present embodiment, the twist amount R when the first to fourth shots are shot is stored in the external main memory 12 as “twist amount R1” to “twist amount R4”, respectively. It is memorized, and at the time of the shot processing after the fifth shot, these “twist amount R1 of first throw” to “twist amount R4 of fourth throw” are used to calculate the present twist amount R (that is, the immediately preceding twist amount R1). The twist amount R) calculated in step S25 is corrected. More specifically, an average value of “twisted amount of twist R1” to “twisted amount of twist R4” is calculated, and the calculated average value is subtracted from the current twisted amount R.

なお、本実施形態では、ゲームにおいて要求されるひねり量Rの目標値は「0」であるため、ひねり量Rは、投球時のZ軸回りの角速度と目標角速度との間のずれを表している。したがって、「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値は、1投目〜4投目のシュートにおいて、投球時のZ軸回りの角速度が目標角速度から平均してどれだけずれていたかを表している。つまり、「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値を計算することによって、シュート操作時のプレイヤの癖を知ることができる(すなわち、投球時のZ軸回りの角速度が目標角速度からどれだけずれる傾向にあるかを知ることができる)。すなわち、本実施形態では、シュート操作に応じて検出されるひねり量Rがゲームにおいて要求されるひねり量Rの目標値(本実施形態では「0」)に対してどのようにずれる傾向にあるかを示す指標(以下、ずれ傾向値と呼ぶ)として、「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値を利用している。ただし、ずれ傾向値の計算方法は、これに限定されない。   In the present embodiment, since the target value of the twist amount R required in the game is “0”, the twist amount R represents a deviation between the angular velocity around the Z axis and the target angular velocity at the time of pitching. Yes. Accordingly, the average value of “twist amount R1 of the first throw” to “twist amount R4 of the fourth throw” is the average of the angular velocity around the Z axis at the time of throwing from the target angular velocity in the shots of the first to fourth throws. It shows how much it has shifted. That is, by calculating an average value of “twist amount R1 of the first throw” to “twist amount R4 of the fourth throw”, it is possible to know the player's habit at the time of shooting operation (that is, the Z axis at the time of pitching). You can see how much the angular velocity around you tends to deviate from the target angular velocity). That is, in the present embodiment, how the twist amount R detected in response to the shooting operation tends to deviate from the target value (“0” in the present embodiment) of the twist amount R required in the game. An average value of “twisting amount R1 of the first throw” to “twisting amount R4 of the fourth throw” is used. However, the method of calculating the deviation tendency value is not limited to this.

上記のようにずれ傾向値に基づいてひねり量Rを補正することで、5投目以降のシュートの際に、プレイヤ毎に固有のシュート操作の癖(すなわち、シュート操作を行う際の腕や手首の動きの癖)を相殺することができる。従来のボタンスイッチの操作などでは、プレイヤ毎に固有の癖が問題になることは無いが、本実施形態のように入力装置8の角速度を利用するゲームでは、プレイヤの腕や手首の動きの癖が大きく影響するため、プレイヤ毎に有利不利が生じてしまう。たとえば、安定した投球動作を繰り返すことができるプレイヤであっても、投球の検出タイミング付近において必ずひねりが発生するような癖を持っているだけで、シュートを成功させることが困難になってしまう。そこで、本実施形態では、1投目〜4投目のシュート操作の際のひねり量Rからプレイヤの癖(すなわち、シュート操作を行ったときのひねり量Rの傾向)を検出し、5投目以降のシュート操作の際には、当該検出したプレイヤの癖を相殺するようにひねり量Rを補正する。これにより、プレイヤに固有の癖が原因で1投目〜4投目のシュートが失敗したとしても、プレイヤが常に一定のフォームでシュート操作を行ってさえいれば、5投目以降のボールの投球方向の方位角φは目標値である「0」になり、シュートが成功することになる。   As described above, the twist amount R is corrected based on the deviation tendency value, so that when a shot is taken after the fifth shot, a shoot operation peculiar to each player (that is, an arm or a wrist when performing the shot operation) This can cancel out the movement 癖). In a conventional button switch operation or the like, a unique wrinkle for each player does not become a problem. However, in a game that uses the angular velocity of the input device 8 as in this embodiment, the wrinkles of the movement of the player's arm or wrist Will greatly affect each player, resulting in an advantage and disadvantage for each player. For example, even a player who can repeat a stable pitching operation has difficulty in making a successful shot only by having a habit that always causes a twist near the pitch detection timing. Therefore, in the present embodiment, the player's habit (that is, the tendency of the twist amount R when the shoot operation is performed) is detected from the twist amount R at the time of the shoot operation of the first to fourth throws. In the subsequent shooting operation, the twist amount R is corrected so as to offset the detected player's habit. As a result, even if the first to fourth shots fail due to a peculiar to the player, as long as the player always performs a shooting operation in a certain form, the ball throws after the fifth throw The azimuth angle φ of the direction becomes the target value “0”, and the shot is successful.

なお、本実施形態では、バスケットボールゲームにおいて全25本のシュートを行う際に、1投目〜4投目のシュート操作に基づいてプレイヤの癖(すなわちずれ傾向値)を検出しているが、いずれの投球回のシュート操作に基づいてプレイヤの癖を検出するかは任意である。例えば、1投目のシュートから前回のシュートまでのシュート操作に基づいてプレイヤの癖を検出するようにしてもよい。   In the present embodiment, when all 25 shots are made in the basketball game, the player's habit (that is, the deviation tendency value) is detected based on the first to fourth shot shooting operations. It is arbitrary whether the player's habit is detected based on the shooting operation of the pitching times. For example, the player's habit may be detected based on a shooting operation from the first shot to the previous shot.

また、本実施形態では、5投目以降のシュートの際に、ひねり量Rを補正しているが、5投目よりも前のシュート(例えば3投目のシュート)の際にも、それ以前の投球回のシュート操作(例えば1投目および2投目のシュート操作)に基づいてプレイヤの癖を検出して、ひねり量Rを補正するようにしてもよい。   In the present embodiment, the twist amount R is corrected at the time of the fifth and subsequent shots. However, before the fifth shot (for example, the third shot), the twist amount R is corrected. It is also possible to correct the twist amount R by detecting the player's habit based on the shooting operations (for example, the first and second shooting operations).

また、本実施形態では、「1投目のひねり量R1」〜「4投目のひねり量R4」の平均値を算出し、今回のひねり量Rから当該算出された平均値を減算しているが、単純な平均値の代わりに、加重平均値や、最頻値や、中央値など、用途に応じて任意の代表値を利用してもよい。平均を算出する回数は5回に限らず、他の回数であってもよいし、常に最新の所定回数の平均を用いるようにしてもよい。   Further, in the present embodiment, an average value of “twisted twist amount R1” to “fourth twisted amount R4” is calculated, and the calculated average value is subtracted from the current twisted amount R. However, an arbitrary representative value such as a weighted average value, a mode value, or a median value may be used instead of a simple average value. The number of times of calculating the average is not limited to five times, but may be any other number, or the latest predetermined number of times may always be used.

また、本実施形態では、ひねり量Rに関してのみプレイヤの癖を相殺するように補正を行っているが、角速度データに基づいて決定される任意のパラメータに関して、プレイヤの癖を相殺するように補正を行ってもよい。例えば、1投目〜4投目のシュートの際に検出された「振り強さPの極大値」に基づいて、振り強さPの極大値が理想値(例えば、図22の成功範囲の中央値)に対してどのようにずれる傾向にあるかを示すずれ傾向値を計算し、5投目以降のシュートの際に当該ずれ傾向値を用いて「振り強さPの極大値」を補正するようにしてもよい。ステップS22で用いられる「投球時のコントローラのピッチ方向の姿勢」についても同様である。   In this embodiment, the correction is performed so as to cancel the player's heel only with respect to the twist amount R. However, the correction is performed so as to cancel the player's heel with respect to an arbitrary parameter determined based on the angular velocity data. You may go. For example, based on the “maximum value of swing strength P” detected during the first to fourth shots, the maximum value of swing strength P is an ideal value (for example, the center of the success range in FIG. 22). The deviation tendency value indicating how the value tends to deviate from the value) is calculated, and the “maximum value of the swing strength P” is corrected using the deviation tendency value in the shots after the fifth shot. You may do it. The same applies to the “posture in the pitch direction of the controller during pitching” used in step S22.

以上のように、本実施形態によれば、プレイヤが入力装置8を振ってシュート操作を行ったときのボールの投球方向の方位角φの成功範囲を、難易度に応じて変更することができるので、ゲームが単調になりすぎることがない。なお、本実施形態では難易度に応じて方位角φの成功範囲を変化させているが、他の実施形態では、難易度に応じて仰角θの成功範囲または初速度Vの成功範囲を変化させてもよい。   As described above, according to the present embodiment, the success range of the azimuth angle φ in the pitching direction of the ball when the player swings the input device 8 and performs a shooting operation can be changed according to the degree of difficulty. So the game never gets too monotonous. In this embodiment, the success range of the azimuth angle φ is changed according to the difficulty level, but in other embodiments, the success range of the elevation angle θ or the success range of the initial speed V is changed according to the difficulty level. May be.

また、本実施形態によれば、シュートの成否に応じて難易度を変化させることができるので、プレイヤにとってゲームが簡単すぎたり難しすぎたりすることがない。なお、本実施形態ではシュートの成否に応じて難易度を変化させているが、他の実施形態では、角速度を利用した任意のゲーム操作の成否に応じて難易度を変化させてもよい。   Further, according to the present embodiment, since the difficulty level can be changed according to the success or failure of the shot, the game is not too easy or too difficult for the player. In this embodiment, the difficulty level is changed according to the success or failure of the shot. However, in other embodiments, the difficulty level may be changed according to the success or failure of an arbitrary game operation using the angular velocity.

また、本実施形態によれば、プレイヤがバスケットボールゲームをプレイしている最中にプレイヤのシュート操作の癖を学習して、入力装置8のZ軸回りの角速度を補正するので、プレイヤ毎に固有の癖を相殺することができる。なお、本実施形態では入力装置8のZ軸回りの角速度を補正しているが、他の実施形態では、入力装置8のX軸回りの角速度またはY軸回りの角速度を補正してもよい。   Further, according to the present embodiment, the player learns the trap of the player's shooting operation while playing the basketball game, and corrects the angular velocity around the Z axis of the input device 8. Can be offset. In this embodiment, the angular velocity around the Z axis of the input device 8 is corrected. However, in other embodiments, the angular velocity around the X axis or the angular velocity around the Y axis of the input device 8 may be corrected.

なお、本実施形態ではゲーム装置3においてバスケットボールゲームを実行する場合について説明したが、本発明はバスケットボール以外のゲームにも適用できることは言うまでもない。   In the present embodiment, the case where a basketball game is executed in the game apparatus 3 has been described, but it goes without saying that the present invention can also be applied to games other than basketball.

例えば、プレイヤが入力装置8を振ることによって、仮想ゲーム空間におけるプレイヤキャラクタがゴルフクラブをスイングしてゴルフボールを飛ばすようなゴルフゲームにおいて、ゴルフボールがフェアウェイで止まったかラフで止まったかによって、各回のスイングの成否を判定し、その判定結果に応じて次回のスイング操作の難易度(すなわちプレイヤによるスイング操作の際に要求される入力装置8の角速度の成功範囲)を変更するようにしてもよい。   For example, in a golf game in which a player character in the virtual game space swings a golf club and flies a golf ball by swinging the input device 8 depending on whether the golf ball stops on the fairway or rough. The success or failure of the swing may be determined, and the difficulty level of the next swing operation (that is, the successful range of the angular velocity of the input device 8 required when the player performs the swing operation) may be changed according to the determination result.

また例えば、上記のようなゴルフゲームにおいて、全18ホールのゴルフコースを回るときに、例えば第1ホールにおけるプレイヤのスイング操作に基づいてプレイヤのスイング操作の癖を学習し、第2ホール以降におけるプレイヤのスイング操作の際に、当該プレイヤの癖が相殺されるように、プレイヤによるスイング操作の際に検出される入力装置8の角速度を補正するようにしてもよい。   Also, for example, in a golf game such as that described above, when a golf course of all 18 holes is visited, the player learns the trap of the swing operation of the player based on, for example, the swing operation of the player in the first hole, and the player in the second hole and thereafter In this swing operation, the angular velocity of the input device 8 detected during the swing operation by the player may be corrected so that the wrinkle of the player is offset.

なお、本実施形態のバスケットボールゲームは、一人のプレイヤによってプレイされるものであったが、他の実施形態では、複数のプレイヤが対戦プレイするゲームにおいて、プレイヤ毎に難易度を個別に設定および更新するものであってもよい。例えば、第1プレイヤおよび第2プレイヤの2人のプレイヤが、バスケットボールゲームにおいて互いに異なるチームを操作して対戦プレイを行う場合、第1プレイヤによるシュート操作の成否に応じて第1プレイヤ用の難易度を更新し、第2プレイヤによるシュート操作の成否に応じて第2プレイヤ用の難易度を更新してもよい。これにより、熟練度の異なるプレイヤ同士で対戦プレイする場合でも、プレイヤ毎に、各の熟練度に応じた適切な難易度が設定されるため、一方的なゲーム展開になることを効果的に回避することができる。   The basketball game of this embodiment is played by a single player, but in other embodiments, in a game where a plurality of players play against each other, the difficulty level is individually set and updated for each player. You may do. For example, when two players, a first player and a second player, play a battle play by operating different teams in a basketball game, the difficulty level for the first player depends on the success or failure of the shooting operation by the first player. And the difficulty level for the second player may be updated according to the success or failure of the shooting operation by the second player. As a result, even when players having different skill levels play against each other, an appropriate difficulty level corresponding to each skill level is set for each player, effectively avoiding a one-sided game development. can do.

なお、本実施形態では、振り強さPが極大となり、かつその値が投球閾値より大きい場合に、プレイヤキャラクタにシュートを行わせているが、プレイヤキャラクタにシュートを行わせるタイミングはこれに限定されない。   In this embodiment, when the swing strength P is maximal and the value is larger than the throwing threshold, the player character shoots, but the timing at which the player character shoots is not limited to this. .

また、本実施形態では、難易度の初期値を「1」としているが、難易度の初期値は他の値(例えば「5」)であってもよい。   In the present embodiment, the initial value of the difficulty level is “1”, but the initial value of the difficulty level may be another value (for example, “5”).

また、本実施形態では、プレイヤによるシュート操作に基づいて、ボールの初速度および投球方向を決定しているが、本発明はこれに限定されず、ボール以外の任意のオブジェクトを、プレイヤによって操作される入力装置(コントローラ)の所定軸回りの角速度に基づいて移動制御しても構わない。   Further, in the present embodiment, the initial velocity and throwing direction of the ball are determined based on the shooting operation by the player, but the present invention is not limited to this, and any object other than the ball is operated by the player. The movement control may be performed based on the angular velocity around the predetermined axis of the input device (controller).

また、本実施形態では、ジャイロセンサ55及び56によって3軸方向の角速度を検出したが、1軸又は2軸方向の角速度を検出することによっても本発明を実現することができる。   In the present embodiment, the gyro sensors 55 and 56 detect the angular velocity in the triaxial direction, but the present invention can also be realized by detecting the angular velocity in the uniaxial or biaxial direction.

また、本実施形態では、入力装置8とゲーム装置3とが無線通信によって接続された態様を用いたが、入力装置8とゲーム装置3とがケーブルを介して電気的に接続されてもかまわない。   In the present embodiment, the input device 8 and the game device 3 are connected by wireless communication. However, the input device 8 and the game device 3 may be electrically connected via a cable. .

また、本実施形態においては、ゲーム装置3のCPU10がゲームプログラムを実行することによって、上述したフローチャートによる処理が行われたが、他の実施形態においては、上記処理の一部又は全部は、ゲーム装置3が備える専用回路によって行われてもよい。   In the present embodiment, the CPU 10 of the game apparatus 3 executes the game program, so that the processing according to the above-described flowchart is performed. However, in other embodiments, part or all of the above processing is performed by the game. It may be performed by a dedicated circuit provided in the device 3.

1 ゲームシステム
2 テレビ
3 ゲーム装置
4 光ディスク
5 コントローラ
6 マーカ部
7 ジャイロセンサユニット
8 入力装置
10 CPU
11c GPU
11e 内部メインメモリ
12 外部メインメモリ
32i Bボタン
37 加速度センサ
55、56 ジャイロセンサ
63 角速度データ
64 加速度データ
DESCRIPTION OF SYMBOLS 1 Game system 2 Television 3 Game device 4 Optical disk 5 Controller 6 Marker part 7 Gyro sensor unit 8 Input device 10 CPU
11c GPU
11e Internal main memory 12 External main memory 32i B button 37 Acceleration sensor 55, 56 Gyro sensor 63 Angular velocity data 64 Acceleration data

Claims (24)

角速度センサの設けられたコントローラを用いた所定のゲーム操作をプレイヤに複数回行わせるゲームを実行し、当該所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データを含む操作データに基づいたゲーム処理を行うゲーム装置であって、
前記所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データに基づいて所定のパラメータの値を決定するパラメータ値決定手段と、
前記パラメータの値が、ゲームにおいて要求される当該パラメータの目標値に対してどのようにずれる傾向にあるかを示すずれ傾向値を、過去に行われた1回以上の前記所定のゲーム操作に応じて決定された前記パラメータの値に基づいて算出するずれ傾向値算出手段と、
前記パラメータ値決定手段によって決定された前記パラメータの値を、前記ずれ傾向値算出手段によって算出されたずれ傾向値を用いて補正して、当該補正後の前記パラメータの値を用いてゲーム処理を行うゲーム処理手段と、を備えるゲーム装置。
Operation data including angular velocity data acquired from the angular velocity sensor each time a predetermined game operation using a controller provided with an angular velocity sensor is executed by a player and a game is executed a plurality of times. A game device for performing game processing based on the game device,
Parameter value determining means for determining a value of a predetermined parameter based on angular velocity data acquired from the angular velocity sensor each time the predetermined game operation is performed;
A deviation tendency value indicating how the value of the parameter tends to deviate from the target value of the parameter required in the game is determined according to one or more predetermined game operations performed in the past. A deviation tendency value calculating means for calculating based on the value of the parameter determined in
The parameter value determined by the parameter value determining means is corrected using the deviation tendency value calculated by the deviation tendency value calculating means, and the game process is performed using the corrected parameter value. And a game processing means.
前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値に基づいて前記ずれ傾向値を算出する、請求項1記載のゲーム装置。   The deviation tendency value calculation means calculates the deviation tendency value based on the values of the parameters determined by the parameter value determination means in response to a plurality of the predetermined game operations performed in the past. Item 4. A game device according to Item 1. 前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値と前記目標値との間の差分の代表値を、前記ずれ傾向値として算出する、請求項2記載のゲーム装置。   The deviation tendency value calculating means is a representative value of a difference between each parameter value and the target value determined by the parameter value determining means in response to a plurality of predetermined game operations performed in the past. The game device according to claim 2, wherein the value is calculated as the deviation tendency value. 前記代表値は平均値である、請求項3記載のゲーム装置。   The game device according to claim 3, wherein the representative value is an average value. 前記ずれ傾向値算出手段は、前記パラメータ値決定手段によって決定された前記パラメータの値から前記ずれ傾向値算出手段によって算出されたずれ傾向値を減算することによって、当該パラメータの値を補正する、請求項3または請求項4に記載のゲーム装置。   The deviation tendency value calculation means corrects the parameter value by subtracting the deviation tendency value calculated by the deviation tendency value calculation means from the parameter value determined by the parameter value determination means. Item 5. A game device according to Item 4 or Item 4. 前記ゲーム処理手段は、前記ずれ傾向値算出手段によって前記ずれ傾向値がまだ算出されていない間は、前記パラメータ値決定手段によって決定された前記パラメータの値を前記ずれ傾向値で補正することなくそのまま用いてゲーム処理を行う、請求項1記載のゲーム装置。   The game processing means does not correct the parameter value determined by the parameter value determination means with the deviation tendency value as long as the deviation tendency value is not yet calculated by the deviation tendency value calculation means. The game device according to claim 1, wherein game processing is performed using the game device. 前記ゲーム処理手段は、前記パラメータの値と前記目標値との差分が所定の範囲内であるときに前記ゲーム操作が成功したと判定する判定手段を含む、請求項1記載のゲーム装置。   The game device according to claim 1, wherein the game processing unit includes a determination unit that determines that the game operation is successful when a difference between the parameter value and the target value is within a predetermined range. 前記パラメータ値決定手段は、前記角速度データが所定の条件を満たしたときに、前記所定のゲーム操作が行われたと判断し、前記角速度センサから取得される角速度データに基づいて前記パラメータの値を決定する、請求項1記載のゲーム装置。   The parameter value determining means determines that the predetermined game operation has been performed when the angular velocity data satisfies a predetermined condition, and determines the parameter value based on the angular velocity data acquired from the angular velocity sensor. The game device according to claim 1. 前記所定の条件は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値よりも大きいことである、請求項8記載のゲーム装置。   9. The game apparatus according to claim 8, wherein the predetermined condition is that the angular velocity indicated by the angular velocity data is a maximum, and the maximum value of the angular velocity is greater than a predetermined threshold. 前記角速度センサから取得される角速度データを逐次記憶する角速度記憶手段をさらに備え、
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該角速度が極大となる前の所定期間における角速度データを前記角速度記憶手段から読み出して、当該角速度データに基づいて前記コントローラの所定軸回りの角速度を検出し、当該検出された前記コントローラの所定軸回りの角速度を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの所定軸回りの角速度に基づいて、仮想ゲーム空間における所定のオブジェクトの移動方向を変化させる、請求項9記載のゲーム装置。
Angular velocity storage means for sequentially storing angular velocity data acquired from the angular velocity sensor;
The parameter value determining means, when the angular velocity indicated by the angular velocity data is maximal and the maximal value of the angular velocity is greater than a predetermined threshold, the angular velocity data in a predetermined period before the angular velocity is maximal. Read from the angular velocity storage means, detect the angular velocity around the predetermined axis of the controller based on the angular velocity data, determine the detected angular velocity around the predetermined axis of the controller as the value of the parameter,
The game device according to claim 9, wherein the game processing unit changes a moving direction of a predetermined object in the virtual game space based on an angular velocity around the predetermined axis of the controller corrected using the deviation tendency value.
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該極大値を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記極大値に基づいて、仮想ゲーム空間における所定のオブジェクトの移動速度および/または到達距離を変化させる、請求項9記載のゲーム装置。
The parameter value determining means determines the maximum value as the value of the parameter when the magnitude of the angular velocity indicated by the angular velocity data is maximum and the maximum value of the angular velocity is greater than a predetermined threshold value.
The game device according to claim 9, wherein the game processing unit changes a moving speed and / or a reach distance of a predetermined object in the virtual game space based on the maximum value corrected using the deviation tendency value.
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該加速度の極大値が所定の閾値より大きいときに、当該時点において前記角速度センサから取得される角速度データに基づいて検出される前記コントローラの姿勢を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの姿勢に基づいて、仮想ゲーム空間における所定のオブジェクトの移動方向を変化させる、請求項9記載のゲーム装置。
The parameter value determining means is based on the angular velocity data acquired from the angular velocity sensor at the time when the magnitude of the angular velocity indicated by the angular velocity data is maximal and the maximal value of the acceleration is larger than a predetermined threshold. Determining the detected attitude of the controller as the value of the parameter;
The game device according to claim 9, wherein the game processing unit changes a moving direction of a predetermined object in the virtual game space based on the posture of the controller corrected using the deviation tendency value.
角速度センサの設けられたコントローラを用いた所定のゲーム操作をプレイヤに複数回行わせるゲームを実行し、当該所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データを含む操作データに基づいたゲーム処理を行うゲーム装置のコンピュータを、
前記所定のゲーム操作が行われる毎に前記角速度センサから取得される角速度データに基づいて所定のパラメータの値を決定するパラメータ値決定手段、
前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定される前記パラメータの値が、ゲームにおいて要求される当該パラメータの目標値に対してどのようにずれる傾向にあるかを示すずれ傾向値を、過去に行われた1回以上の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された前記パラメータの値に基づいて算出するずれ傾向値算出手段、および、
前記パラメータ値決定手段によって決定された前記パラメータの値を、前記ずれ傾向値算出手段によって算出されたずれ傾向値を用いて補正して、当該補正後の前記パラメータの値を用いてゲーム処理を行うゲーム処理手段として機能させるためのゲームプログラム。
Operation data including angular velocity data acquired from the angular velocity sensor each time a predetermined game operation using a controller provided with an angular velocity sensor is executed by a player and a game is executed a plurality of times. A game machine computer for performing game processing based on
Parameter value determining means for determining a value of a predetermined parameter based on angular velocity data acquired from the angular velocity sensor each time the predetermined game operation is performed;
A deviation tendency value indicating how the parameter value determined by the parameter value determining means according to the predetermined game operation tends to deviate from the target value of the parameter required in the game. A deviation tendency value calculating means for calculating based on the value of the parameter determined by the parameter value determining means in response to one or more predetermined game operations performed in the past, and
The parameter value determined by the parameter value determining means is corrected using the deviation tendency value calculated by the deviation tendency value calculating means, and the game process is performed using the corrected parameter value. A game program for functioning as a game processing means.
前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値に基づいて前記ずれ傾向値を算出する、請求項13記載のゲームプログラム。   The deviation tendency value calculation means calculates the deviation tendency value based on the values of the parameters determined by the parameter value determination means in response to a plurality of the predetermined game operations performed in the past. Item 14. A game program according to Item 13. 前記ずれ傾向値算出手段は、過去に行われた複数回の前記所定のゲーム操作に応じて前記パラメータ値決定手段によって決定された各前記パラメータの値と前記目標値との間の差分の代表値を、前記ずれ傾向値として算出する、請求項14記載のゲームプログラム。   The deviation tendency value calculating means is a representative value of a difference between each parameter value and the target value determined by the parameter value determining means in response to a plurality of predetermined game operations performed in the past. The game program according to claim 14, which is calculated as the deviation tendency value. 前記代表値は平均値である、請求項15記載のゲームプログラム。   The game program according to claim 15, wherein the representative value is an average value. 前記ずれ傾向値算出手段は、前記パラメータ値決定手段によって決定された前記パラメータの値から前記ずれ傾向値算出手段によって算出されたずれ傾向値を減算することによって、当該パラメータの値を補正する、請求項15または請求項16に記載のゲームプログラム。   The deviation tendency value calculation means corrects the parameter value by subtracting the deviation tendency value calculated by the deviation tendency value calculation means from the parameter value determined by the parameter value determination means. Item 17. A game program according to item 15 or 16. 前記ゲーム処理手段は、前記ずれ傾向値算出手段によって前記ずれ傾向値がまだ算出されていない間は、前記パラメータ値決定手段によって決定された前記パラメータの値を前記ずれ傾向値で補正することなくそのまま用いてゲーム処理を行う、請求項13記載のゲームプログラム。   The game processing means does not correct the parameter value determined by the parameter value determination means with the deviation tendency value as long as the deviation tendency value is not yet calculated by the deviation tendency value calculation means. The game program of Claim 13 which performs a game process using. 前記ゲーム処理手段は、前記パラメータの値と前記目標値との差分が所定の範囲内であるときに前記ゲーム操作が成功したと判定する判定手段を含む、請求項13記載のゲームプログラム。   The game program according to claim 13, wherein the game processing unit includes a determination unit that determines that the game operation is successful when a difference between the parameter value and the target value is within a predetermined range. 前記パラメータ値決定手段は、前記角速度データが所定の条件を満たしたときに、前記所定のゲーム操作が行われたと判断し、前記角速度センサから取得される角速度データに基づいて前記パラメータの値を決定する、請求項13記載のゲームプログラム。   The parameter value determining means determines that the predetermined game operation has been performed when the angular velocity data satisfies a predetermined condition, and determines the parameter value based on the angular velocity data acquired from the angular velocity sensor. The game program according to claim 13. 前記所定の条件は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値よりも大きいことである、請求項20記載のゲームプログラム。   The game program according to claim 20, wherein the predetermined condition is that the angular velocity indicated by the angular velocity data has a maximum value, and the maximum value of the angular velocity is larger than a predetermined threshold value. 前記ゲームプログラムは、前記角速度センサから取得される角速度データを角速度記憶領域に逐次格納する角速度記憶制御手段として前記コンピュータをさらに機能させ、
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該角速度が極大となる前の所定期間における角速度データを前記角速度記憶領域から読み出して、当該角速度データに基づいて前記コントローラの所定軸回りの角速度を検出し、当該検出された前記コントローラの所定軸回りの角速度を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの所定軸回りの角速度に基づいて、仮想ゲーム空間における所定のオブジェクトの移動方向を変化させる、請求項21記載のゲームプログラム。
The game program causes the computer to further function as angular velocity storage control means for sequentially storing angular velocity data acquired from the angular velocity sensor in an angular velocity storage area,
The parameter value determining means, when the angular velocity indicated by the angular velocity data is maximal and the maximal value of the angular velocity is greater than a predetermined threshold, the angular velocity data in a predetermined period before the angular velocity is maximal. Reading from the angular velocity storage area, detecting the angular velocity around the predetermined axis of the controller based on the angular velocity data, determining the detected angular velocity around the predetermined axis of the controller as the value of the parameter,
The game program according to claim 21, wherein the game processing means changes a moving direction of a predetermined object in the virtual game space based on an angular velocity around the predetermined axis of the controller corrected using the deviation tendency value.
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該角速度の極大値が所定の閾値より大きいときに、当該極大値を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記極大値に基づいて、仮想ゲーム空間における所定のオブジェクトの移動速度および/または到達距離を変化させる、請求項21記載のゲームプログラム。
The parameter value determining means determines the maximum value as the value of the parameter when the magnitude of the angular velocity indicated by the angular velocity data is maximum and the maximum value of the angular velocity is greater than a predetermined threshold value.
The game program according to claim 21, wherein the game processing means changes a moving speed and / or a reach distance of a predetermined object in the virtual game space based on the maximum value corrected using the deviation tendency value.
前記パラメータ値決定手段は、前記角速度データが示す角速度の大きさが極大となり、かつ当該加速度の極大値が所定の閾値より大きいときに、当該時点において前記角速度センサから取得される角速度データに基づいて検出される前記コントローラの姿勢を前記パラメータの値として決定し、
前記ゲーム処理手段は、前記ずれ傾向値を用いて補正した前記コントローラの姿勢に基づいて、仮想ゲーム空間における所定のオブジェクトの移動方向を変化させる、請求項21記載のゲームプログラム。
The parameter value determining means is based on the angular velocity data acquired from the angular velocity sensor at the time when the magnitude of the angular velocity indicated by the angular velocity data is maximal and the maximal value of the acceleration is larger than a predetermined threshold. Determining the detected attitude of the controller as the value of the parameter;
The game program according to claim 21, wherein the game processing means changes a moving direction of a predetermined object in the virtual game space based on the attitude of the controller corrected using the deviation tendency value.
JP2009103231A 2009-04-21 2009-04-21 GAME DEVICE AND GAME PROGRAM Active JP5443042B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2009103231A JP5443042B2 (en) 2009-04-21 2009-04-21 GAME DEVICE AND GAME PROGRAM
US12/504,906 US9352218B2 (en) 2009-04-21 2009-07-17 Game apparatus and computer-readable storage medium
US13/668,759 US8469814B2 (en) 2009-04-21 2012-11-05 Game apparatus and computer-readable storage medium
US13/668,655 US8986119B2 (en) 2009-04-21 2012-11-05 Game apparatus and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009103231A JP5443042B2 (en) 2009-04-21 2009-04-21 GAME DEVICE AND GAME PROGRAM

Publications (2)

Publication Number Publication Date
JP2010252862A true JP2010252862A (en) 2010-11-11
JP5443042B2 JP5443042B2 (en) 2014-03-19

Family

ID=43314499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009103231A Active JP5443042B2 (en) 2009-04-21 2009-04-21 GAME DEVICE AND GAME PROGRAM

Country Status (1)

Country Link
JP (1) JP5443042B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018038694A (en) * 2016-09-09 2018-03-15 株式会社カプコン Game program and game system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7114657B2 (en) * 2020-07-28 2022-08-08 グリー株式会社 Control program, game device, and control method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330017A (en) * 1996-06-13 1997-12-22 Namco Ltd Three-dimensional simulator device and information storage medium
JP2006068027A (en) * 2004-08-31 2006-03-16 Nintendo Co Ltd Game device and game program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330017A (en) * 1996-06-13 1997-12-22 Namco Ltd Three-dimensional simulator device and information storage medium
JP2006068027A (en) * 2004-08-31 2006-03-16 Nintendo Co Ltd Game device and game program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018038694A (en) * 2016-09-09 2018-03-15 株式会社カプコン Game program and game system

Also Published As

Publication number Publication date
JP5443042B2 (en) 2014-03-19

Similar Documents

Publication Publication Date Title
US8469814B2 (en) Game apparatus and computer-readable storage medium
JP5430246B2 (en) GAME DEVICE AND GAME PROGRAM
JP5289031B2 (en) GAME DEVICE AND GAME PROGRAM
JP5131809B2 (en) GAME DEVICE AND GAME PROGRAM
JP5700758B2 (en) GAME DEVICE, GAME PROGRAM, GAME SYSTEM, AND GAME PROCESSING METHOD
US8888594B2 (en) Storage medium storing information processing program, information processing apparatus and information processing method
EP2392389A1 (en) Game system, operating device, and game processing method
US8764564B2 (en) Game system, game processing method, recording medium storing game program, and game device
JP2012239761A (en) Game system, game apparatus, game program, and game processing method
JP5005627B2 (en) Information processing program and information processing apparatus
US8430751B2 (en) Computer-readable storage medium having game program stored therein and game apparatus
JP5358168B2 (en) GAME DEVICE AND GAME PROGRAM
JP5758085B2 (en) GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND GAME PROCESSING METHOD
JP5525177B2 (en) Information processing program and information processing apparatus
JP5443041B2 (en) GAME DEVICE AND GAME PROGRAM
JP5576721B2 (en) GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND GAME METHOD
JP5704770B2 (en) GAME DEVICE, GAME PROGRAM, GAME SYSTEM, AND GAME PROCESSING METHOD
JP5443042B2 (en) GAME DEVICE AND GAME PROGRAM
US8753207B2 (en) Game system, game processing method, recording medium storing game program, and game device
JP5420954B2 (en) GAME DEVICE AND GAME PROGRAM
JP5420955B2 (en) GAME DEVICE AND GAME PROGRAM
JP2012100810A (en) Game system, game device, game program, and game process method

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120330

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131125

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: 20131212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131219

R150 Certificate of patent or registration of utility model

Ref document number: 5443042

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250