[go: nahoru, domu]

JP5392986B2 - Game system and game program - Google Patents

Game system and game program Download PDF

Info

Publication number
JP5392986B2
JP5392986B2 JP2007015532A JP2007015532A JP5392986B2 JP 5392986 B2 JP5392986 B2 JP 5392986B2 JP 2007015532 A JP2007015532 A JP 2007015532A JP 2007015532 A JP2007015532 A JP 2007015532A JP 5392986 B2 JP5392986 B2 JP 5392986B2
Authority
JP
Japan
Prior art keywords
housing
movement
movement vector
game
acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007015532A
Other languages
Japanese (ja)
Other versions
JP2008142509A (en
JP2008142509A5 (en
Inventor
豊和 野中
敏晴 伊豆野
建太郎 西村
健太 田中
則人 伊藤
雅幸 岡田
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 JP2007015532A priority Critical patent/JP5392986B2/en
Priority to US11/984,445 priority patent/US9327192B2/en
Publication of JP2008142509A publication Critical patent/JP2008142509A/en
Publication of JP2008142509A5 publication Critical patent/JP2008142509A5/ja
Application granted granted Critical
Publication of JP5392986B2 publication Critical patent/JP5392986B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ゲームシステムおよびゲームプログラムに関し、より特定的には、コントローラのハウジングの姿勢変化やハウジングに生じる加速度を検出して操作されるゲームシステムおよびゲームプログラムに関する。   The present invention relates to a game system and a game program, and more particularly to a game system and a game program that are operated by detecting a change in attitude of a housing of a controller and an acceleration generated in the housing.

従来、プレイヤが入力装置を操作することによって、ゲームをプレイするゲーム装置が各種開発されている。例えば、プレイヤ操作するゲームコントローラの方向指示入力手段からの出力を用いて、ゲーム処理する装置が開示されている(例えば、特許文献1参照)。上記特許文献1で開示されたゲーム装置は、方向指示入力手段としてジョイスティック37を用いて選手キャラクタの仮想ゲーム世界における移動制御を行いつつ、R1ボタン38を押下することによって当該選手キャラクタがダッシュして移動する。
特開2002−263363号公報
2. Description of the Related Art Conventionally, various game devices that play a game by a player operating an input device have been developed. For example, an apparatus for performing a game using an output from a direction instruction input unit of a game controller operated by a player is disclosed (for example, see Patent Document 1). In the game device disclosed in Patent Document 1, the player character dashes by pressing the R1 button 38 while performing movement control of the player character in the virtual game world using the joystick 37 as direction instruction input means. Moving.
JP 2002-263363 A

しかしながら、上記特許文献1で開示されたゲーム装置は、方向指示入力手段(ジョイスティック37)で決定された選手キャラクタの移動制御の内容を、ボタン(R1ボタン38)押下操作で補正するものであるため、プレイヤの操作が煩雑となる。また、上記特許文献1で開示されたゲーム装置は、仮想ゲーム世界に対するゲーム入力のダイレクト感を効果的にプレイヤに感じさせるようなインターフェースではない。例えば、上記特許文献1で開示されたゲーム装置は、方向指示入力手段を用いた操作によって選手キャラクタの仮想ゲーム世界における移動方向と移動量との両方を入力するため、プレイヤの指先だけの操作となり、ゲーム入力のダイレクト感が得られない。   However, the game device disclosed in Patent Document 1 corrects the content of the movement control of the player character determined by the direction instruction input means (joystick 37) by pressing the button (R1 button 38). The operation of the player becomes complicated. Further, the game device disclosed in Patent Document 1 is not an interface that effectively makes the player feel a direct feeling of game input to the virtual game world. For example, since the game device disclosed in Patent Document 1 inputs both the movement direction and the movement amount of the player character in the virtual game world by an operation using the direction instruction input means, the operation is performed only with the fingertip of the player. , I can not get a direct feeling of game input.

それ故に、本発明の目的は、上述した課題の少なくとも1つを解決するものであり、プレイヤキャラクタの移動制御を直感的かつ容易な操作で多様に制御する、または、ゲーム入力のダイレクト感を効果的に感じさせるゲームシステムおよびゲームプログラムを提供することである。   Therefore, an object of the present invention is to solve at least one of the above-described problems, and to control the movement control of the player character in various ways with intuitive and easy operations, or to achieve a direct feeling of game input. It is providing the game system and game program which make you feel it.

上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。   In order to achieve the above object, the present invention employs the following configuration. Note that the reference numerals in parentheses, step numbers, and the like indicate correspondence with the embodiments described later in order to help understanding of the present invention, and do not limit the scope of the present invention.

第1の発明は、プレイヤが片手で把持可能なハウジング(77)を有するゲームコントローラ(7、76)と、当該ゲームコントローラと接続されるゲーム装置(5)と、当該ハウジングの姿勢を検出する検出部(701)とを含むゲームシステム(3)である。少なくともゲームコントローラは、方向指示部(78a)を備える。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、移動ベクトル制御手段(S43)、補正手段(S46、S52)、および移動制御手段(S21)を備える。移動ベクトル制御手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクト(PC)の移動ベクトルを決定する。補正手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、移動ベクトル制御手段によって決定された移動ベクトルを補正する。移動制御手段は、補正手段によって補正された移動ベクトルに基づいて、オブジェクトを仮想ゲーム世界において移動制御する。なお、方向指示部は、例えば、ジョイスティック、十字キー、または、複数のボタンキー(それぞれに各方向が割り当てられる)とすることができる。   The first invention is a game controller (7, 76) having a housing (77) that a player can hold with one hand, a game device (5) connected to the game controller, and detection for detecting the attitude of the housing. A game system (3) including a section (701). At least the game controller includes a direction instruction section (78a). The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game device includes movement vector control means (S43), correction means (S46, S52), and movement control means (S21). The movement vector control means determines the movement vector of the object (PC) appearing in the virtual game world according to the operation of the direction instruction unit. The correction means corrects the movement vector determined by the movement vector control means in accordance with the change in attitude of the housing from the reference attitude based on the detection by the detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement vector corrected by the correction means. Note that the direction instruction unit may be, for example, a joystick, a cross key, or a plurality of button keys (each direction is assigned to each).

移動ベクトル制御手段は、少なくともオブジェクトの仮想ゲーム世界における移動方向を決定するものであり、それに加えて仮想ゲーム世界における移動量を決定してもよい。補正手段は、移動ベクトル制御手段によって決定された移動ベクトルを補正するが、移動ベクトル制御手段によって決定された移動方向を補正してもよいし、移動ベクトル制御手段が移動量も決定する場合には、当該移動量を補正してもよい。すなわち、以下のバリエーションが考えられる。
・移動ベクトル制御手段が移動方向を決定し、補正手段が移動方向を補正する。
・移動ベクトル制御手段が移動方向および移動量を決定し、補正手段が移動方向を補正する。
・移動ベクトル制御手段が移動方向および移動量を決定し、補正手段が移動量を補正する。
・移動ベクトル制御手段が移動方向および移動量を決定し、補正手段が移動方向および移動量を補正する。
・3次元の仮想ゲーム空間であり、移動ベクトル制御手段が2次元の移動成分(典型的には仮想水平2方向の移動量)を決定し、補正手段が残りの1次元の移動成分(典型的には仮想垂直方向の移動量)を決定する。
The movement vector control means determines at least the moving direction of the object in the virtual game world, and may further determine the movement amount in the virtual game world. The correction means corrects the movement vector determined by the movement vector control means. However, the correction means may correct the movement direction determined by the movement vector control means, or when the movement vector control means also determines the movement amount. The movement amount may be corrected. That is, the following variations can be considered.
The movement vector control means determines the movement direction, and the correction means corrects the movement direction.
The movement vector control means determines the movement direction and movement amount, and the correction means corrects the movement direction.
The movement vector control means determines the movement direction and movement amount, and the correction means corrects the movement amount.
The movement vector control means determines the movement direction and movement amount, and the correction means corrects the movement direction and movement amount.
A three-dimensional virtual game space, in which the movement vector control means determines a two-dimensional movement component (typically the amount of movement in two virtual horizontal directions), and the correction means determines the remaining one-dimensional movement component (typical The amount of movement in the virtual vertical direction is determined.

なお、上述における「移動量」に代えて、「移動速度」や「移動加速度」としてもよい。   Instead of the “movement amount” described above, “movement speed” or “movement acceleration” may be used.

検出部は所定のセンサを含むものであり、補正手段は当該センサの出力値に基づいてハウジングの基準姿勢からの姿勢変化を判断して移動ベクトルを補正する。補正手段は、ハウジングの基準姿勢からの姿勢変化を判断するが、より具体的には、ハウジングが基準姿勢から所定軸周りに回転したことを判断する。この所定軸は、ハウジングの所定軸であってもよいし、現実世界における所定軸であってもよい。すなわち、補正手段は、ハウジングの所定軸周りに当該ハウジングが回転したことを判断してもよいし、現実世界における所定軸周りに当該ハウジングが回転したことを判断してもよい。前者について、例えば、ハウジングの前後軸周り(例えば、ハウジングの長軸周り)の回転(ロール)、ハウジングの左右軸周り(例えば、ハウジングの左右短軸周り)の回転(ピッチ)、ハウジングの上下軸周り(例えば、ハウジングの上下短軸周り)の回転(ヨー)を判断してもよい。また、後者について、例えば、水平軸周りの回転や鉛直軸周りの回転を判断してもよい。補正手段は、基準姿勢からのハウジングの回転角度を算出してもよいが、これは必須ではない。例えば、後述の実施例のように、加速度センサによって所定軸方向にかかる重力加速度を検出する場合、回転角度を算出しなくても、検出した加速度の大小や方向に基づいて、基準姿勢から所定軸周りにハウジングが回転したことを判断することができる。   The detection unit includes a predetermined sensor, and the correction unit determines a posture change from the reference posture of the housing based on the output value of the sensor and corrects the movement vector. The correction unit determines a change in the posture of the housing from the reference posture. More specifically, the correction unit determines that the housing has rotated around the predetermined axis from the reference posture. The predetermined axis may be a predetermined axis of the housing or a predetermined axis in the real world. That is, the correcting means may determine that the housing has rotated around a predetermined axis of the housing, or may determine that the housing has rotated around a predetermined axis in the real world. For the former, for example, rotation (roll) around the front / rear axis of the housing (eg, around the long axis of the housing), rotation (pitch) around the left / right axis of the housing (eg, around the left / right short axis of the housing), vertical axis of the housing Rotation (yaw) around (for example, around the upper and lower short axes of the housing) may be determined. For the latter, for example, rotation around the horizontal axis or rotation around the vertical axis may be determined. The correcting means may calculate the rotation angle of the housing from the reference posture, but this is not essential. For example, when the gravitational acceleration applied to the predetermined axis direction is detected by the acceleration sensor as in the embodiment described later, the predetermined axis is determined from the reference posture based on the detected acceleration magnitude and direction without calculating the rotation angle. It can be determined that the housing has rotated around.

典型的には、検出部は、ハウジングに固設されるセンサである。このセンサとしては、重力方向に対する傾き(以下、単に「傾き」と言う)に応じたデータを出力するセンサ(加速度センサ、傾きセンサ)、方位に応じたデータを出力するセンサ(磁気センサ)、回転運動に応じたデータを出力するセンサ(ジャイロセンサ)などを用いることができる。また、加速度センサおよびジャイロセンサは、多軸検出可能なものだけなく1軸検出のものでもよい。また、これらのセンサを組み合わせて、より正確な検出を行うものであってもかまわない。なお、ハウジングに固定されたカメラを、上記センサとして利用することも可能である。この場合、ハウジングの姿勢の変化に応じてカメラが撮像する撮像画像が変化するので、この画像を解析することにより、ハウジングの基準姿勢からの姿勢変化を判断することができる。   Typically, the detection unit is a sensor fixed to the housing. As this sensor, a sensor (acceleration sensor, tilt sensor) that outputs data according to a tilt with respect to the direction of gravity (hereinafter simply referred to as “tilt”), a sensor (magnetic sensor) that outputs data according to a direction, a rotation A sensor (gyro sensor) that outputs data corresponding to the exercise can be used. Further, the acceleration sensor and the gyro sensor may be not only those that can detect multiple axes but also those that detect one axis. Further, these sensors may be combined to perform more accurate detection. A camera fixed to the housing can be used as the sensor. In this case, since the captured image captured by the camera changes in accordance with the change in the attitude of the housing, the change in the attitude from the reference attitude of the housing can be determined by analyzing this image.

また、検出部は、センサの種類によっては、ハウジングの外部に別設されてもよい。一例として、センサとしてのカメラでハウジングの外部から当該ハウジングを撮影し、撮像画像内に撮像されたハウジングの画像を解析することにより、ハウジングの基準姿勢からの姿勢変化を判断することが可能である。さらに、ハウジングに固設されたユニットとハウジング外部に別設されたユニットとの協働によるシステムを用いてもよい。この例としては、ハウジング外部に発光ユニットを別設し、ハウジングに固設されたカメラで発光ユニットからの光を撮影する。このカメラで撮像された撮像画像を解析することにより、ハウジングの基準姿勢からの姿勢変化を判断することができる。また、他の例としては、ハウジング外部に磁場発生装置を別設し、ハウジングに磁気センサを固設するようなシステムなどが挙げられる。   In addition, the detection unit may be separately provided outside the housing depending on the type of sensor. As an example, it is possible to determine a change in posture from the reference posture of the housing by photographing the housing from the outside of the housing with a camera as a sensor and analyzing the image of the housing imaged in the captured image. . Furthermore, a system in which a unit fixed to the housing and a unit separately provided outside the housing may be used. In this example, a light emitting unit is separately provided outside the housing, and light from the light emitting unit is photographed by a camera fixed to the housing. By analyzing the captured image captured by the camera, it is possible to determine a change in posture from the reference posture of the housing. Another example is a system in which a magnetic field generator is separately provided outside the housing and a magnetic sensor is fixed to the housing.

前述の通り、補正手段は、ハウジングの所定軸の周りに当該ハウジングが回転したことを判断してもよいし(第1種の補正手段)、現実世界における所定軸の周りにハウジングが回転したことを判断してもよい(第2種の補正手段)。   As described above, the correcting means may determine that the housing has rotated around a predetermined axis of the housing (first correcting means), or that the housing has rotated around the predetermined axis in the real world. May be determined (second type correction means).

(1)第1種の補正手段の場合
まず、加速度センサをハウジングに固設する例を説明する。単純な例として、ハウジングの所定方向に生じる加速度を加速度センサで検出する。そして、加速度センサが検出した加速度を用いて、重力加速度成分の変化を分析することによって、重力加速度方向に直交する軸周りにハウジングが回転したことを判断することが可能である。例えば、ハウジングの上下方向に生じる加速度を検出して、重力加速度の当該上下方向成分の変化を分析することによって、ハウジングの左右軸周りに当該ハウジングが回転したことを判断することが可能である。
(1) Case of First Type Correction Unit First, an example in which an acceleration sensor is fixed to a housing will be described. As a simple example, acceleration generated in a predetermined direction of the housing is detected by an acceleration sensor. Then, by analyzing the change in the gravitational acceleration component using the acceleration detected by the acceleration sensor, it is possible to determine that the housing has rotated around an axis orthogonal to the gravitational acceleration direction. For example, it is possible to determine that the housing has rotated about the left and right axes of the housing by detecting the acceleration generated in the vertical direction of the housing and analyzing the change in the vertical component of the gravitational acceleration.

ここで、加速度センサを用いる場合、加速度センサの検出軸がハウジングの姿勢変化における回転軸と一致するケースなど、加速度センサの検出軸の傾きが変化しないハウジングの回転に対しては、重力加速度の検出軸方向の成分が変化しないので、ハウジングの回転を判断することが難しい。しかしながら、加速度センサの検出軸がハウジングの姿勢変化における回転軸と一致しない場合(典型的には、加速度センサの検出軸が鉛直面に沿って傾きを変化するような姿勢変化など)であれば、重力加速度の影響により当該検出軸についての出力値が変化するのでハウジングの回転が判断できる。   Here, when using an acceleration sensor, gravitational acceleration detection is applied to the rotation of the housing where the inclination of the detection axis of the acceleration sensor does not change, such as the case where the detection axis of the acceleration sensor coincides with the rotation axis in the change in the attitude of the housing. Since the axial component does not change, it is difficult to determine the rotation of the housing. However, if the detection axis of the acceleration sensor does not coincide with the rotation axis in the attitude change of the housing (typically, such as an attitude change in which the detection axis of the acceleration sensor changes its inclination along the vertical plane) Since the output value for the detection axis changes due to the gravitational acceleration, the rotation of the housing can be determined.

なお、本願発明が適用されるゲームの分野においては、ゲーム開発者が予め定める正しい操作方法に従って操作したときに正しいゲーム処理が行われるようにしておけば十分であって、それ以外の操作をした場合に正しいゲーム処理が行われないとしても格段の問題は生じない。したがって、ゲームの取扱説明書やゲーム画面などにおいて、正しい操作方法として、ハウジングの姿勢を変化させる方法(より具体的には、どの軸周りに回転操作させるか)を指示しておけば、プレイヤはその指示にしたがってハウジングを回転させる操作する。つまり、ある回転操作を前提として、ハウジングの姿勢が判断できれば十分である。なお、プレイヤが指示された操作から逸脱した操作を行った場合には、ハウジングの姿勢を正確に判断することができないが、その逸脱した程度が許容範囲内であれば、ゲーム処理としてもおおよそ正しい処理結果が得られる。また、ゲーム装置の用途においては、格段の正確性を必要としないことが多いため、そのような場合でも十分な実用性を有する。   In the field of games to which the present invention is applied, it is sufficient that the correct game processing is performed when the game developer operates according to the correct operation method determined in advance, and other operations are performed. Even if correct game processing is not performed, there is no particular problem. Accordingly, in the game instruction manual, game screen, and the like, if a method for changing the attitude of the housing (more specifically, which axis to rotate around) is instructed as a correct operation method, the player can The housing is rotated according to the instruction. That is, it is sufficient if the attitude of the housing can be determined on the assumption of a certain rotation operation. Note that if the player performs an operation that deviates from the instructed operation, the attitude of the housing cannot be accurately determined. However, if the deviating degree is within an allowable range, the game processing is roughly correct. A processing result is obtained. Further, since the game apparatus is often not required to have much accuracy, it has sufficient practicality even in such a case.

なお、加速度センサを用いる場合、ハウジングに作用する重力加速度のみならず、ハウジングの動きに応じて作用する加速度を検出するが、当業者にとって既知の処理により、当該動きに応じて検出された加速度を除去することが可能である。例えば、単純な例としては、加速度センサが検出した加速度の値が重力加速度よりも大きな値(または、十分大きな値)を示すときには、検出された加速度の値が重力加速度を示していないと判断して除去するような処理としてもよい。また、加速度センサが検出した加速度の値の変動が小さいときにのみ、検出された加速度の値が重力加速度を示しているとして、姿勢の分析に採用するような処理としてもよい。さらに、加速度センサが検出した加速度の値の高周波成分を除去してもよい。また、ハウジングを激しく動かす必要のないゲームの場合には、ハウジングの動きに応じて作用する加速度を除去する処理をしなくてもよい。なぜなら、ハウジングの動きに応じた加速度が検出されても、プレイヤがハウジングを激しく動かさなければ、ある程度正しい結果が得られるのであって、十分な実用性を有するからである。   In the case of using an acceleration sensor, not only the gravitational acceleration acting on the housing but also the acceleration acting according to the movement of the housing is detected, but the acceleration detected according to the movement is detected by processing known to those skilled in the art. It is possible to remove. For example, as a simple example, when the acceleration value detected by the acceleration sensor indicates a value (or a sufficiently large value) greater than the gravitational acceleration, it is determined that the detected acceleration value does not indicate the gravitational acceleration. It is good also as a process which removes. Further, only when the variation in the acceleration value detected by the acceleration sensor is small, the detected acceleration value may indicate gravitational acceleration, and the processing may be adopted for posture analysis. Further, the high frequency component of the acceleration value detected by the acceleration sensor may be removed. Further, in the case of a game that does not require the housing to be moved violently, it is not necessary to perform a process for removing the acceleration acting according to the movement of the housing. This is because even if an acceleration corresponding to the movement of the housing is detected, if the player does not move the housing violently, a correct result can be obtained to some extent and it has sufficient practicality.

なお、多軸検出可能な加速度センサを用いて、当該多軸方向にそれぞれ生じた加速度の値を用いる場合には、基準姿勢からのハウジングの回転角度を算出して、より詳細な判断することが可能である。例えば、加速度センサが検出する2つの軸方向の加速度の値を用いて、所定の演算処理をすることにより、ハウジングの回転角度を算出することが可能である。典型的には、2つの軸方向の加速度の値を逆正接関数に代入するなどの、三角関数を利用した演算処理を、ハウジングの回転角度の算出に用いることができる。   In addition, when using the acceleration sensor capable of multi-axis detection and using the acceleration value generated in each of the multi-axis directions, the rotation angle of the housing from the reference posture can be calculated to make a more detailed determination. Is possible. For example, the rotation angle of the housing can be calculated by performing a predetermined calculation process using the values of acceleration in two axial directions detected by the acceleration sensor. Typically, arithmetic processing using a trigonometric function, such as substituting the values of acceleration in two axial directions into the arc tangent function, can be used for calculating the rotation angle of the housing.

また、多軸検出可能な加速度センサを用いる場合には、どの検出軸方向の加速度が変化するかに基づいて、どの検出軸周りにハウジングが回転したかの判定も可能である。また、3軸方向の加速度をそれぞれ検出する加速度センサを用いる場合に、例えば、第1の軸方向の加速度の値と第2の軸方向の加速度の値とを用いて演算処理をすることにより、第3の軸周りにハウジングが回転したことを判断することが可能である。また、第1の軸方向の加速度の値と第3の軸方向の加速度の値とを用いて演算処理をすることにより、第2の軸周りにハウジングが回転したこと判断することが可能である。   When an acceleration sensor capable of multi-axis detection is used, it is possible to determine which detection axis the housing has rotated based on which detection axis direction acceleration changes. In addition, when using an acceleration sensor that detects accelerations in three axial directions, for example, by performing arithmetic processing using the acceleration values in the first axial direction and the acceleration values in the second axial direction, It can be determined that the housing has rotated about the third axis. Further, it is possible to determine that the housing has rotated around the second axis by performing arithmetic processing using the acceleration value in the first axial direction and the acceleration value in the third axial direction. .

なお、ハウジングを実空間で回転移動させると、ハウジングに遠心力が生じる。この遠心力を加速度センサが検出することにより、ハウジングの姿勢変化の判断に利用してもかまわない。すなわち、例えば、ハウジングのある方向に加速度が生じたことが加速度センサにより検出された場合、それに直交する方向に伸びる軸周りにハウジングが回転した可能性があると判定できる。   When the housing is rotated in real space, centrifugal force is generated in the housing. The acceleration sensor may detect the centrifugal force and use it to determine the change in the attitude of the housing. That is, for example, when the acceleration sensor detects that acceleration has occurred in a certain direction of the housing, it can be determined that the housing may have rotated about an axis extending in a direction orthogonal thereto.

次に、ジャイロセンサをハウジングに固設する場合を説明する。この場合、ハウジングの姿勢を変化させる(すなわち、ハウジングをローカル座標系における所定軸周りに回転させる)と、ジャイロセンサはその回転を直接検出して、角速度データを出力する。そして、出力された角速度データに基づいて、基準姿勢からのハウジングの姿勢変化を判断することが可能である。より具体的には、角速度データを用いてハウジング回転角度の変化を判断することが可能である。より典型的には、ハウジングの前後軸周りの回転角度の変化、ハウジングの左右軸周りの回転角度の変化、および/または、ハウジングの上下軸周りの回転角度の変化をそれぞれ判断することが可能である。また、初期状態におけるハウジングの回転角度を設定しておくことにより、ハウジングの前後軸周りの回転角度、ハウジングの左右軸周りの回転角度、および/または、ハウジングの上下軸周りの回転角度を判断することが可能である。   Next, a case where the gyro sensor is fixed to the housing will be described. In this case, when the attitude of the housing is changed (that is, when the housing is rotated around a predetermined axis in the local coordinate system), the gyro sensor directly detects the rotation and outputs angular velocity data. Then, based on the output angular velocity data, it is possible to determine the change in the posture of the housing from the reference posture. More specifically, the change in the housing rotation angle can be determined using the angular velocity data. More typically, it is possible to determine a change in rotation angle around the front and rear axes of the housing, a change in rotation angle around the left and right axes of the housing, and / or a change in rotation angle around the vertical axis of the housing. is there. Further, by setting the rotation angle of the housing in the initial state, the rotation angle around the front and rear axes of the housing, the rotation angle around the left and right axes of the housing, and / or the rotation angle around the vertical axis of the housing is determined. It is possible.

(2)第2種の補正手段の場合
典型的には、3軸方向の加速度をそれぞれ検出可能な加速度センサをハウジングに固設し、各軸方向に生じた加速度の値に基づいて、ハウジングに対する重力方向を判定することにより、水平軸周りのハウジングの回転角を判断することが可能である。または、例えば、3軸方向の加速度をそれぞれ検出可能な加速度センサについて、第1軸方向の加速度の値と第2軸方向の加速度の値とから合成ベクトルを算出する。そして、上記合成ベクトルの大きさと第3軸方向の加速度の値とからなる2次元ベクトルから、水平軸周りの当該第3軸の回転角を判断することも可能である。または、方位センサをハウジングに設けることにより、鉛直軸周りの回転角を判断することが可能である。
(2) In the case of the second type of correction means Typically, an acceleration sensor capable of detecting acceleration in each of the three axial directions is fixed to the housing, and based on the acceleration value generated in each axial direction, By determining the direction of gravity, it is possible to determine the rotation angle of the housing around the horizontal axis. Alternatively, for example, for an acceleration sensor that can detect accelerations in three axial directions, a combined vector is calculated from the acceleration value in the first axial direction and the acceleration value in the second axial direction. It is also possible to determine the rotation angle of the third axis around the horizontal axis from the two-dimensional vector composed of the magnitude of the combined vector and the acceleration value in the third axis direction. Alternatively, it is possible to determine the rotation angle around the vertical axis by providing the azimuth sensor in the housing.

なお、補正手段は、基準姿勢からの姿勢変化量が閾値に到達したときに、移動ベクトルを所定量だけ補正するようなものでもよいし、姿勢変化量に応じて移動ベクトルを補正する量を変化させるようなものでもよい。より具体的には、姿勢変化量が大きくなることに応じて、移動ベクトルの補正量を大きくしてもよい。   The correction unit may correct the movement vector by a predetermined amount when the amount of change in posture from the reference posture reaches the threshold, or change the amount of correction of the movement vector according to the amount of change in posture. It may be something to let you. More specifically, the correction amount of the movement vector may be increased as the posture change amount increases.

さらに、補正手段は、所定軸周りのハウジングの回転に応じて、オブジェクトの仮想ゲーム世界における所定方向への移動量が増加するように移動ベクトルを補正してもよい。ここで、「仮想ゲーム世界における所定方向」とは、仮想ゲーム世界におけるワールド座標系における所定方向であってもよいし、オブジェクトのローカル座標系における所定方向であってもよいし、視点座標系における所定方向であってもよい。また、「方向指示手段により、前方向が指示されたときにオブジェクトが移動する方向」を基準として、所定方向を決定してもよい。典型的には、ハウジングの左右軸周りの当該ハウジングの回転を判断し、その判断に基づいて、オブジェクトの前方向(ローカル座標系における前方向および/または後ろ方向)への移動量を補正してもよい(より具体的には、ハウジングを前に倒すように回転させると、オブジェクトの前方向の移動量が増加するように補正し、および/または、ハウジングを後ろに倒すように回転させると、オブジェクトの後ろ方向の移動量が増加するように補正する。)。また、ハウジングの前後軸周りの当該ハウジングの回転を判断し、その判断に基づいて、オブジェクトの左右方向(ローカル座標系における左右方向)への移動量を補正してもよい。また、ハウジングの前後軸(または上下軸)が水平軸周りに回転したことを判断し、その判断に基づいて、オブジェクトの前方向の移動量を補正してもよい。さらに、ハウジングの左右軸が水平軸周りに回転したことを判断し、その判断に基づいて、オブジェクトの左右方向への移動量を補正してもよい。   Further, the correcting means may correct the movement vector so that the amount of movement of the object in the predetermined direction in the virtual game world increases in accordance with the rotation of the housing around the predetermined axis. Here, the “predetermined direction in the virtual game world” may be a predetermined direction in the world coordinate system in the virtual game world, a predetermined direction in the local coordinate system of the object, or in the viewpoint coordinate system. It may be in a predetermined direction. Further, the predetermined direction may be determined based on “the direction in which the object moves when the front direction is instructed by the direction instruction unit”. Typically, the rotation of the housing about the left and right axis of the housing is determined, and based on the determination, the amount of movement of the object in the forward direction (forward and / or backward direction in the local coordinate system) is corrected. (More specifically, if the housing is rotated to tilt forward, the amount of forward movement of the object is corrected and / or the housing is rotated to tilt backward. Correct so that the amount of backward movement of the object increases.) Further, the rotation of the housing around the front and rear axes of the housing may be determined, and the amount of movement of the object in the left-right direction (the left-right direction in the local coordinate system) may be corrected based on the determination. Further, it may be determined that the front-rear axis (or vertical axis) of the housing has rotated around the horizontal axis, and based on the determination, the amount of forward movement of the object may be corrected. Further, it may be determined that the left and right axes of the housing are rotated around the horizontal axis, and the amount of movement of the object in the left and right direction may be corrected based on the determination.

なお、上述した「オブジェクトの前方向」とは、(A)オブジェクトが向いている方向(典型的には、オブジェクトのローカル座標またはカメラ座標のZ軸方向)、または、(B)オブジェクトの移動方向(「方向指示部の前方向の指示入力に応じてオブジェクトが移動する方向」)である。なお、方向指示部の前方向の指示入力に応じて、オブジェクトが向いている方向に移動する場合には、上記(A)と上記(B)とが一致する。   The above-mentioned “forward direction of the object” means (A) the direction in which the object is facing (typically, the local coordinate of the object or the Z-axis direction of the camera coordinate), or (B) the moving direction of the object. ("The direction in which the object moves in response to an instruction input in the forward direction of the direction indicating unit"). When the object moves in the direction in which the object is directed in response to the forward direction input from the direction indicating unit, (A) and (B) are the same.

移動ベクトル制御手段は、方向指示部の前方向の指示入力に応じて「オブジェクトの前方向」にオブジェクトを移動させる移動ベクトルを決定し、方向指示部の後方向の指示入力に応じて「オブジェクトの前方向」と反対方向にオブジェクトを移動させる移動ベクトルを決定し、方向指示部の左右方向の指示入力に応じて「オブジェクトの前方向」に直交する左右方向にオブジェクトを移動させる移動ベクトルを決定する。なお、「左右方向」は、ローカル座標系における左右方向で定義してもよいし、ワールド座標系における左右方向で定義してもよい。   The movement vector control means determines a movement vector for moving the object in the “forward direction of the object” in response to an instruction input in the forward direction of the direction indicating unit, and “ A movement vector for moving the object in the direction opposite to the “front direction” is determined, and a movement vector for moving the object in the left-right direction orthogonal to the “front direction of the object” is determined according to the input instruction in the left-right direction of the direction indicating unit. . The “left / right direction” may be defined in the left / right direction in the local coordinate system or in the left / right direction in the world coordinate system.

なお、「オブジェクトの前方向」は、ワールド座標系において固定方向としてもよいし、方向指示部の指示入力に応じて変化させてもよい。後者の場合には、オブジェクトの移動ベクトルが決定されたときに、当該移動ベクトルの方向が新たな前方向に設定されるのが典型的である。   The “forward direction of the object” may be a fixed direction in the world coordinate system, or may be changed according to an instruction input from the direction instruction unit. In the latter case, when the movement vector of the object is determined, the direction of the movement vector is typically set to a new forward direction.

また、補正手段は、1つの軸周りのハウジングの回転を判断してもよいし、複数の軸周りのハウジングの回転を判断してもよい。後者の場合、各軸のそれぞれについて「仮想ゲーム世界における所定方向」が設定される。すなわち、軸A周りのハウジングの回転に応じて、仮想ゲーム世界における方向Aのオブジェクトの移動量を補正し、軸B周りのハウジングの回転に応じて、仮想ゲーム世界における方向Bのオブジェクトの移動量を補正する(軸Aと軸Bとは異なり、方向Aと方向Bとは異なる)。ここで、軸Aと軸Bとが直交するように設定し、方向Aと方向Bとが直交するように設定するのが好ましい。なお、3軸以上についてハウジングの回転を判定してもよく、すなわち、軸C周りのハウジングの回転に応じて、方向Cのオブジェクトの移動量を補正してもよい。   Further, the correction means may determine the rotation of the housing around one axis, or may determine the rotation of the housing around a plurality of axes. In the latter case, “a predetermined direction in the virtual game world” is set for each axis. That is, the movement amount of the object in the direction A in the virtual game world is corrected according to the rotation of the housing around the axis A, and the movement amount of the object in the direction B in the virtual game world is corrected according to the rotation of the housing around the axis B. (Axis A and B are different, and direction A and direction B are different). Here, it is preferable that the axis A and the axis B are set to be orthogonal to each other, and the direction A and the direction B are set to be orthogonal to each other. Note that the rotation of the housing may be determined for three or more axes, that is, the amount of movement of the object in the direction C may be corrected according to the rotation of the housing around the axis C.

第2の発明は、上記第1の発明において、補正手段は、ハウジングが所定軸周りに回転したことに応じて、仮想ゲーム世界における所定方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。   In a second aspect based on the first aspect, the correction means sets the movement vector so that the amount of movement of the object in the predetermined direction in the virtual game world increases in response to the rotation of the housing around the predetermined axis. to correct.

第3の発明は、上記第2の発明において、補正手段は、ハウジングの左右軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界におけるオブジェクトの前方向への移動量が増加するように移動ベクトルを補正する。   In a third aspect based on the second aspect, the correction means increases the amount of forward movement of the object in the virtual game world in accordance with the rotation of the housing about the left and right axis of the housing. Correct the movement vector.

第4の発明は、上記第2の発明において、補正手段は、ハウジングの前後軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界におけるオブジェクトの左右方向への移動量が増加するように移動ベクトルを補正する。   In a fourth aspect based on the second aspect, the correction means increases the amount of movement of the object in the left-right direction in the virtual game world according to the rotation of the housing about the front-rear axis of the housing. Correct the movement vector.

第5の発明は、上記第1の発明において、補正手段は、ハウジングの所定軸が当該所定軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における所定方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。   In a fifth aspect based on the first aspect, the correction means is configured to move the object in a predetermined direction in the virtual game world in response to the rotation of the predetermined axis of the housing around an axis orthogonal to the predetermined axis. The movement vector is corrected so that increases.

第6の発明は、上記第1の発明において、補正手段は、ハウジングの第1軸が当該第1軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における第1方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。補正手段は、ハウジングの第1軸とは異なる第2軸が当該第2軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における第1方向とは異なる第2方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。   In a sixth aspect based on the first aspect, the correcting means is configured to detect the object in the first direction in the virtual game world in response to the rotation of the first axis of the housing around an axis orthogonal to the first axis. The movement vector is corrected so that the amount of movement increases. The correcting means is configured to move the object in a second direction different from the first direction in the virtual game world in response to rotation of a second axis different from the first axis of the housing around an axis orthogonal to the second axis. The movement vector is corrected so that the movement amount increases.

第7の発明は、上記第1の発明において、方向指示部は、少なくともスティック(78a)をハウジングの所定方向に傾倒させる入力が可能なものである。移動ベクトル制御手段は、スティックが所定方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングが所定方向に傾くように回転したことに応じて、仮想ゲーム世界におけるオブジェクトの第1方向への移動量が増加するように移動ベクトルを補正する。   In a seventh aspect based on the first aspect, the direction indicating section can input at least the stick (78a) to tilt in a predetermined direction of the housing. The movement vector control means determines a movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction. The correcting unit corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in accordance with the rotation of the housing so as to incline in a predetermined direction.

第8の発明は、上記第1の発明において、方向指示部は、少なくともスティックがハウジングの所定軸周りに回転するように傾倒させる入力が可能なものである。移動ベクトル制御手段は、スティックが所定軸周りに回転する方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングが所定軸周りに回転したことに応じて、仮想ゲーム世界におけるオブジェクトの第1方向への移動量が増加するように移動ベクトルを補正する。   In an eighth aspect based on the first aspect, the direction indicating section is capable of inputting to tilt the stick so that at least the stick rotates about a predetermined axis of the housing. The movement vector control means determines the movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in the direction of rotation around the predetermined axis. The correcting unit corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in accordance with the rotation of the housing around the predetermined axis.

第9の発明は、上記第1の発明において、方向指示部は、少なくともスティックをハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能である。移動ベクトル制御手段は、スティックが所定方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向に移動させるように移動ベクトルを決定し、かつ、スティックが直交する方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向と直交する第2方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングが所定方向に傾くように回転したことに応じて、仮想ゲーム世界におけるオブジェクトの第1方向への移動量が増加するように移動ベクトルを補正し、かつ、ハウジングが直交する方向に傾くように回転したことに応じて、仮想ゲーム世界におけるオブジェクトの第2方向への移動量が増加するように移動ベクトルを補正する。   In a ninth aspect based on the first aspect, the direction indicating section can input at least the stick to tilt in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction. The movement vector control means determines a movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction, and when the stick is tilted in the orthogonal direction The movement vector is determined so as to move the object in the second direction orthogonal to the first direction in the virtual game world. The correction means corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in response to the rotation of the housing in a predetermined direction, and the direction in which the housing is orthogonal The movement vector is corrected so that the amount of movement of the object in the second direction in the virtual game world increases in response to the rotation so as to tilt.

第10の発明は、上記第1の発明において、方向指示部は、少なくともスティックをハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能である。移動ベクトル制御手段は、方向指示部による指示方向に応じて、スティックがハウジングの前方向に傾倒されたときに仮想ゲーム世界においてオブジェクトが移動する方向である基準方向を変更し、オブジェクトを当該基準方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングが前方向に傾いたことに応じて、仮想ゲーム世界におけるオブジェクトの基準方向への移動量が増加するように移動ベクトルを補正する。   In a tenth aspect based on the first aspect, the direction indicating section can input instructions in the front / rear / left / right directions by tilting at least the stick in the front / rear / left / right direction of the housing. The movement vector control means changes the reference direction, which is the direction in which the object moves in the virtual game world when the stick is tilted forward of the housing, according to the direction indicated by the direction indicating unit, and moves the object to the reference direction. The movement vector is determined so as to move to. The correction means corrects the movement vector so that the amount of movement of the object in the reference direction in the virtual game world increases in accordance with the tilt of the housing in the forward direction.

第11の発明は、プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムである。ゲームコントローラは、ハウジングと、方向指示部と、動き検出手段(761)とを備える。ハウジングは、その側周をプレイヤが片手で握持可能な形状および大きさで形成される。方向指示部は、ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、ハウジングの前後左右方向への指示入力するために設けられる。動き検出手段は、ハウジングの動きを検出する。ゲーム装置は、移動方向制御手段、補正手段、および移動制御手段を備える。移動方向制御手段は、方向指示部によりハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、方向指示部によりハウジングの後ろ方向への指示がされたときに、オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、方向指示部によりハウジングの左右方向への指示がされたときに、オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向とする決定する。補正手段は、動き検出手段の検出に基づいてハウジングの前方向に当該ハウジングが回転したことを示すとき、仮想ゲーム世界における前方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。移動制御手段は、仮想ゲーム世界内で、補正手段によって補正された移動ベクトルに基づいてオブジェクトを移動させる。   An eleventh invention is a game system including a game controller operated by a player and a game device connected to the game controller. The game controller includes a housing, a direction indicator, and motion detection means (761). The housing is formed in a shape and size that allows the player to grip the side periphery with one hand. The direction indicating portion is disposed at a position where it can be operated with the thumb of one hand when the player holds the housing with one hand, and is provided for inputting instructions in the front-rear and left-right directions of the housing. The motion detection means detects the motion of the housing. The game device includes a movement direction control unit, a correction unit, and a movement control unit. The movement direction control means sets the forward direction in the virtual game world of the object appearing in the virtual game world as the direction of the movement vector when the direction instruction unit instructs the front of the housing, and the direction indication unit sets the direction of the housing. When the backward direction is instructed, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instructing unit instructs the horizontal direction of the housing, The direction is determined as the direction of the movement vector. The correcting means corrects the movement vector so that the amount of movement of the object in the forward direction in the virtual game world increases when it indicates that the housing has rotated in the forward direction of the housing based on the detection of the movement detecting means. The movement control means moves the object in the virtual game world based on the movement vector corrected by the correction means.

なお、動き検出手段は、ハウジングに設けられる加速度センサ、ハウジングに設けられるジャイロセンサ、ハウジングに設けられる撮影手段で撮影した画像を解析することにより動きを検出するもの(例えば、後述の撮像情報演算部74とマーカ8とにより実現されるようなシステムを含む)、その他、ハウジングに設けられ傾きを検出できる傾きセンサなどとすることができる。なお、ジャイロセンサを採用する場合には、後述のような特別な処理が必要となる。   The motion detection means detects motion by analyzing an image captured by an acceleration sensor provided in the housing, a gyro sensor provided in the housing, and an imaging means provided in the housing (for example, an imaging information calculation unit described later) In addition, a tilt sensor that is provided in the housing and can detect tilt can be used. Note that when a gyro sensor is employed, special processing as described below is required.

また、より具体的には、ハウジングは、その一方側面(右側面または左側面の一方)に片手の掌を接触させ、他方側面(右側面または左側面の他方)に当該片手の指(人差指・中指・薬指・小指)のうちの少なくとも1つ(好ましくはこれらのうちの少なくとも2つであり、また、好ましくは少なくとも中指を含む)を接触させることによって把持し、当該把持した状態で親指が届く範囲に方向指示部が配置される。   More specifically, the housing has the palm of one hand in contact with one side surface (one of the right side or the left side) and the finger of one hand (index finger / Grasping by contacting at least one (preferably at least two of these, preferably including at least the middle finger) of the middle finger, ring finger, and little finger, and the thumb reaches in the gripped state A direction indicator is arranged in the range.

第12の発明は、上記第2〜11の何れかの発明において、移動ベクトル制御手段は、方向指示部で操作された指示方向に応じて、仮想ゲーム世界におけるオブジェクトの前方向を基準とした移動ベクトルの方向を決定する。ゲーム装置は、オブジェクト方向制御手段を、さらに備える。オブジェクト方向制御手段は、移動ベクトル制御手段によって決定され補正手段によって補正された移動ベクトルの方向を、オブジェクトの新たな前方向に設定し、当該前方向に基づいて仮想ゲーム世界におけるオブジェクトの方向を変更する。   In a twelfth aspect based on any one of the second to eleventh aspects, the movement vector control means moves based on the forward direction of the object in the virtual game world according to the pointing direction operated by the direction pointing unit. Determine the direction of the vector. The game apparatus further includes object direction control means. The object direction control means sets the direction of the movement vector determined by the movement vector control means and corrected by the correction means as a new forward direction of the object, and changes the direction of the object in the virtual game world based on the forward direction. To do.

第13の発明は、プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムである。ゲームコントローラは、少なくとも、ハウジング、加速度検出手段、および方向指示部を備える。ハウジングは、プレイヤが片手で把持可能である。加速度検出手段は、ハウジングに生じる加速度を検出する。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、移動ベクトル制御手段、補正手段、および移動制御手段を備える。移動ベクトル制御手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する。補正手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、移動ベクトル制御手段によって決定された移動ベクトルを補正する。移動制御手段は、補正手段によって補正された移動ベクトルに基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A thirteenth aspect of the present invention is a game system including a game controller operated by a player and a game device connected to the game controller. The game controller includes at least a housing, acceleration detection means, and a direction instruction section. The housing can be held by the player with one hand. The acceleration detecting means detects acceleration generated in the housing. The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game device includes movement vector control means, correction means, and movement control means. The movement vector control means determines a movement vector of an object appearing in the virtual game world according to an operation of the direction instruction unit. The correction unit corrects the movement vector determined by the movement vector control unit according to the acceleration generated in the housing based on the detection by the acceleration detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement vector corrected by the correction means.

第14の発明は、上記第13の発明において、補正手段は、ハウジングの所定軸方向に生じた加速度に応じて、仮想ゲーム世界における所定方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。   In a fourteenth aspect based on the thirteenth aspect, the correction means sets the movement vector so that the amount of movement of the object in the predetermined direction in the virtual game world increases in accordance with the acceleration generated in the predetermined axial direction of the housing. to correct.

第15の発明は、上記第14の発明において、補正手段は、ハウジングの前方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの前方向への移動量が増加するように移動ベクトルを補正する。   In a fifteenth aspect based on the fourteenth aspect, the correction means corrects the movement vector so that the amount of movement of the object in the virtual game world increases in accordance with the acceleration generated in the forward direction of the housing. To do.

第16の発明は、上記第14の発明において、補正手段は、ハウジングの左右方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの左右方向への移動量が増加するように移動ベクトルを補正する。   In a sixteenth aspect based on the fourteenth aspect, the correction means corrects the movement vector so that the movement amount of the object in the left-right direction in the virtual game world increases according to the acceleration generated in the left-right direction of the housing. To do.

第17の発明は、上記第13の発明において、補正手段は、ハウジングの第1方向に生じた加速度に応じて、仮想ゲーム世界における第1方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。補正手段は、ハウジングの第1方向とは異なる第2方向に生じた加速度に応じて、仮想ゲーム世界における第1方向とは異なる第2方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。   In a seventeenth aspect based on the thirteenth aspect, the correction means moves the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in accordance with the acceleration generated in the first direction of the housing. Correct. The correction means sets the movement vector so that the amount of movement of the object in the second direction different from the first direction in the virtual game world increases according to the acceleration generated in the second direction different from the first direction of the housing. to correct.

第18の発明は、上記第13の発明において、方向指示部は、少なくともスティックをハウジングの所定方向に傾倒させる入力が可能なものである。移動ベクトル制御手段は、スティックが所定方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングの所定方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの第1方向への移動量が増加するように移動ベクトルを補正する。   In an eighteenth aspect based on the thirteenth aspect, the direction indicating section is capable of inputting at least tilting the stick in a predetermined direction of the housing. The movement vector control means determines a movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction. The correcting unit corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in accordance with the acceleration generated in the predetermined direction of the housing.

第19の発明は、上記第13の発明において、方向指示部は、少なくともスティックをハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能である。移動ベクトル制御手段は、スティックが所定方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向に移動させるように移動ベクトルを決定し、かつ、スティックが直交する方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトを第1方向と直交する第2方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングの所定方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの第1方向への移動量が増加するように移動ベクトルを補正し、かつ、ハウジングの直交する方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの第2方向への移動量が増加するように移動ベクトルを補正する。   In a nineteenth aspect based on the thirteenth aspect, the direction indicating section can input at least the stick to tilt in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction. The movement vector control means determines a movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction, and when the stick is tilted in the orthogonal direction The movement vector is determined so as to move the object in the second direction orthogonal to the first direction in the virtual game world. The correction means corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases according to the acceleration generated in the predetermined direction of the housing, and occurs in the direction orthogonal to the housing. According to the acceleration, the movement vector is corrected so that the movement amount of the object in the second direction in the virtual game world increases.

第20の発明は、上記第13の発明において、方向指示部は、少なくともスティックをハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能である。移動ベクトル制御手段は、方向指示部による指示方向に応じて、スティックがハウジングの前方向に傾倒されたときに仮想ゲーム世界においてオブジェクトが移動する方向である基準方向を変更し、オブジェクトを当該基準方向に移動させるように移動ベクトルを決定する。補正手段は、ハウジングの前方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの基準方向への移動量が増加するように移動ベクトルを補正する。   In a twentieth aspect based on the thirteenth aspect, the direction indicating section can input instructions in the front / rear / right / left directions by tilting at least the stick in the front / rear / left / right direction of the housing. The movement vector control means changes the reference direction, which is the direction in which the object moves in the virtual game world when the stick is tilted forward of the housing, according to the direction indicated by the direction indicating unit, and moves the object to the reference direction. The movement vector is determined so as to move to. The correction means corrects the movement vector so that the amount of movement of the object in the reference direction in the virtual game world increases according to the acceleration generated in the forward direction of the housing.

第21の発明は、プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムである。ゲームコントローラは、ハウジング、方向指示部、および加速度検出手段を備える。ハウジングは、その側周をプレイヤが片手で握持可能な形状および大きさで形成される。方向指示部は、ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、ハウジングの前後左右方向への指示入力するために設けられる。加速度検出手段は、少なくともハウジングの前方向に生じる加速度を検出する。ゲーム装置は、移動ベクトル制御手段、補正手段、および移動制御手段を備える。移動ベクトル制御手段は、方向指示部によりハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、方向指示部によりハウジングの後ろ方向への指示がされたときに、オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、方向指示部によりハウジングの左右方向への指示がされたときに、オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する。補正手段は、加速度検出手段の検出に基づいて、ハウジングの前方向に加速度が生じたときに、仮想ゲーム世界におけるオブジェクトの前方向への移動量が増加するように移動ベクトルを補正する。移動制御手段は、仮想ゲーム世界内で、補正手段によって補正された移動ベクトルに基づいてオブジェクトを移動させる。   A twenty-first invention is a game system including a game controller operated by a player and a game device connected to the game controller. The game controller includes a housing, a direction indicator, and acceleration detection means. The housing is formed in a shape and size that allows the player to grip the side periphery with one hand. The direction indicating portion is disposed at a position where it can be operated with the thumb of one hand when the player holds the housing with one hand, and is provided for inputting instructions in the front-rear and left-right directions of the housing. The acceleration detecting means detects at least an acceleration generated in the forward direction of the housing. The game device includes movement vector control means, correction means, and movement control means. The movement vector control means sets the forward direction in the virtual game world of the object appearing in the virtual game world as the direction of the movement vector when the direction instruction section instructs the housing forward, and the direction instruction section When the backward direction is instructed, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instructing unit instructs the horizontal direction of the housing, The direction is determined as the direction of the movement vector. The correcting means corrects the movement vector so that the amount of movement of the object in the virtual game world increases in the forward direction when acceleration occurs in the forward direction of the housing based on the detection of the acceleration detecting means. The movement control means moves the object in the virtual game world based on the movement vector corrected by the correction means.

第22の発明は、上記第13〜第21の発明の何れかにおいて、移動ベクトル制御手段は、方向指示部で操作された指示方向に応じて、仮想ゲーム世界におけるオブジェクトの前方向を基準とした移動ベクトルの方向を決定する。ゲーム装置は、オブジェクト方向制御手段を、さらに備える。オブジェクト方向制御手段は、移動ベクトル制御手段によって決定され補正手段によって補正された移動ベクトルの方向を、オブジェクトの新たな前方向に設定し、当該前方向に基づいて仮想ゲーム世界におけるオブジェクトの方向を変更する。   In a twenty-second invention according to any one of the thirteenth to twenty-first inventions, the movement vector control means uses the forward direction of the object in the virtual game world as a reference in accordance with the indicated direction operated by the direction indicating unit. Determine the direction of the motion vector. The game apparatus further includes object direction control means. The object direction control means sets the direction of the movement vector determined by the movement vector control means and corrected by the correction means as a new forward direction of the object, and changes the direction of the object in the virtual game world based on the forward direction. To do.

第23の発明は、プレイヤが片手で把持可能なハウジングを有するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムである。少なくともゲームコントローラは、方向指示部を備える。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、移動方向決定手段、移動量決定手段、および移動制御手段を備える。移動方向決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動方向を決定する。移動量決定手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、オブジェクトの移動量を決定する。移動制御手段は、移動方向決定手段によって決定された移動方向、および、移動量決定手段によって決定された移動量に基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A twenty-third invention is a game system including a game controller having a housing that a player can hold with one hand, a game device connected to the game controller, and a detection unit that detects the attitude of the housing. At least the game controller includes a direction instruction unit. The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game apparatus includes a movement direction determining unit, a movement amount determining unit, and a movement control unit. The movement direction determination means determines the movement direction of the object appearing in the virtual game world in accordance with the operation of the direction instruction unit. The movement amount determination means determines the movement amount of the object in accordance with the posture change from the reference posture of the housing based on the detection of the detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement direction determined by the movement direction determination means and the movement amount determined by the movement amount determination means.

第24の発明は、プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムである。ゲームコントローラは、少なくとも、ハウジング、加速度検出手段、および方向指示部を備える。ハウジングは、プレイヤが片手で把持可能である。加速度検出手段は、ハウジングに生じる加速度を検出する。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、移動方向決定手段、移動量決定手段、および移動制御手段を備える。移動方向決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動方向を決定する。移動量決定手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、オブジェクトの移動量を決定する。移動制御手段は、移動方向決定手段によって決定された移動方向、および、移動量決定手段によって決定された移動量に基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A twenty-fourth invention is a game system including a game controller operated by a player and a game device connected to the game controller. The game controller includes at least a housing, acceleration detection means, and a direction instruction section. The housing can be held by the player with one hand. The acceleration detecting means detects acceleration generated in the housing. The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game apparatus includes a movement direction determining unit, a movement amount determining unit, and a movement control unit. The movement direction determination means determines the movement direction of the object appearing in the virtual game world in accordance with the operation of the direction instruction unit. The movement amount determination means determines the movement amount of the object according to the acceleration generated in the housing based on the detection by the acceleration detection means. The movement control means controls the movement of the object in the virtual game world based on the movement direction determined by the movement direction determination means and the movement amount determined by the movement amount determination means.

第25の発明は、プレイヤが片手で把持可能なハウジングを有するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムである。少なくともゲームコントローラは、方向指示部を備える。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、位置決定手段(S43、S171)、変位決定手段(S172、S173)、および移動制御手段(S21)を備える。位置決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における位置を決定する。変位決定手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、オブジェクトの仮想ゲーム世界における変位を決定する。移動制御手段は、位置決定手段によって決定されたオブジェクトの位置を、変位決定手段によって決定された変位だけ変化させて、オブジェクトが移動するように制御する。   A twenty-fifth aspect of the invention is a game system including a game controller having a housing that a player can hold with one hand, a game device connected to the game controller, and a detection unit that detects the attitude of the housing. At least the game controller includes a direction instruction unit. The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game device includes position determining means (S43, S171), displacement determining means (S172, S173), and movement control means (S21). The position determining means determines the position of the object appearing in the virtual game world in the virtual game world according to the operation of the direction instruction unit. The displacement determining means determines the displacement of the object in the virtual game world based on the detection of the detection unit, in accordance with the change in the posture of the housing from the reference posture. The movement control means controls the object to move by changing the position of the object determined by the position determination means by the displacement determined by the displacement determination means.

第26の発明は、上記第25の発明において、変位決定手段は、ハウジングが所定軸周りに回転したことに応じて、仮想ゲーム世界における所定方向へのオブジェクトの変位を決定する。   In a twenty-sixth aspect based on the twenty-fifth aspect, the displacement determining means determines the displacement of the object in a predetermined direction in the virtual game world in response to the rotation of the housing around the predetermined axis.

第27の発明は、上記第25の発明において、変位決定手段は、ハウジングの左右軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界におけるオブジェクトの前方向へ当該オブジェクトが変位するように変位を決定する。   In a twenty-seventh aspect based on the twenty-fifth aspect, the displacement determining means causes the object to be displaced in the forward direction of the object in the virtual game world in response to the rotation of the housing about the left-right axis of the housing. Determine the displacement.

第28の発明は、上記第25の発明において、変位決定手段は、ハウジングの前後軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界におけるオブジェクトの左右方向へ当該オブジェクトが変位するように変位を決定する。   In a twenty-eighth aspect based on the twenty-fifth aspect, the displacement determining means causes the object to be displaced in the left-right direction of the object in the virtual game world in response to the rotation of the housing about the longitudinal axis of the housing. Determine the displacement.

第29の発明は、上記第25の発明において、変位決定手段は、ハウジングの所定軸が当該所定軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における所定方向へオブジェクトが変位するように変位を決定する。   In a twenty-ninth aspect based on the twenty-fifth aspect, the displacement determining means displaces the object in a predetermined direction in the virtual game world in response to a rotation of a predetermined axis of the housing about an axis orthogonal to the predetermined axis. The displacement is determined as follows.

第30の発明は、上記第25の発明において、変位決定手段は、ハウジングの第1軸が当該第1軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定する。変位決定手段は、ハウジングの第1軸とは異なる第2軸が当該第2軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における第1方向とは異なる第2方向へオブジェクトが変位するように変位を決定する。   In a thirtieth aspect based on the twenty-fifth aspect, the displacement determining means moves the object in the first direction in the virtual game world in response to the rotation of the first axis of the housing around an axis orthogonal to the first axis. The displacement is determined so that is displaced. In response to the rotation of the second axis different from the first axis of the housing around the axis orthogonal to the second axis, the displacement determining means moves the object in a second direction different from the first direction in the virtual game world. The displacement is determined so as to be displaced.

第31の発明は、上記第25の発明において、方向指示部は、少なくともスティックをハウジングの所定方向に傾倒させる入力が可能である。位置決定手段は、スティックが所定方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界における第1方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングが所定方向に傾くように回転したことに応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定する。   In a thirty-first aspect based on the twenty-fifth aspect, the direction indicating section can input at least tilt the stick in a predetermined direction of the housing. The position determining means determines a new position by moving the position of the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction. The displacement determining means determines the displacement so that the object is displaced in the first direction in the virtual game world in response to the rotation of the housing so as to incline in a predetermined direction.

第32の発明は、上記第25の発明において、方向指示部は、少なくともスティックがハウジングの所定軸周りに回転するように傾倒させる入力が可能である。位置決定手段は、スティックが所定軸周りに回転する方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界における第1方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングが所定軸周りに回転したことに応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定する。   In a thirty-second aspect based on the twenty-fifth aspect, the direction indicator can be input so that at least the stick is tilted so as to rotate around a predetermined axis of the housing. The position determination means determines a new position by moving the position of the object in the first direction in the virtual game world when the stick is tilted in the direction of rotation around the predetermined axis. The displacement determining means determines the displacement so that the object is displaced in the first direction in the virtual game world in response to the rotation of the housing around the predetermined axis.

第33の発明は、上記第25の発明において、方向指示部は、少なくともスティックをハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能である。位置決定手段は、スティックが所定方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界における第1方向に移動させて新たな位置を決定し、かつ、スティックが直交する方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界において第1方向と直交する第2方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングが所定方向に傾くように回転したことに応じて、第1方向へオブジェクトが変位するように変位を決定し、かつ、ハウジングが直交する方向に傾くように回転したことに応じて、第2方向へオブジェクトが変位するように変位を決定する。   In a thirty-third aspect based on the twenty-fifth aspect, the direction indicating section can input at least the stick to tilt in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction. The position determining means determines a new position by moving the position of the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction, and when the stick is tilted in the orthogonal direction In addition, the position of the object is moved in a second direction orthogonal to the first direction in the virtual game world to determine a new position. The displacement determining means determines the displacement so that the object is displaced in the first direction in response to the rotation of the housing so as to incline in a predetermined direction, and the fact that the housing has been rotated so as to incline in the orthogonal direction. In response, the displacement is determined so that the object is displaced in the second direction.

第34の発明は、上記第25の発明において、方向指示部は、少なくともスティックをハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能である。位置決定手段は、方向指示部による指示方向に応じて、スティックがハウジングの前後左右方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界において前後左右方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングが左右方向に傾いたことに応じて、仮想ゲーム世界におけるオブジェクトの左右方向に当該オブジェクトが変位するように変位を決定する。   In a thirty-fourth aspect based on the twenty-fifth aspect, the direction indicating section is capable of inputting instructions in the front-rear and left-right directions by tilting at least the stick in the front-rear and left-right directions of the housing. The position determining means determines a new position by moving the position of the object in the virtual game world in the front / rear / left / right direction when the stick is tilted in the front / rear / left / right direction of the housing in accordance with the direction indicated by the direction indicating unit. . The displacement determining means determines the displacement so that the object is displaced in the left-right direction of the object in the virtual game world in response to the housing being tilted in the left-right direction.

第35の発明は、プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムである。ゲームコントローラは、少なくとも、ハウジング、加速度検出手段、および方向指示部を備える。ハウジングは、プレイヤが片手で把持可能である。加速度検出手段は、前記ハウジングに生じる加速度を検出する。方向指示部は、ハウジングに設けられ、方向指示入力するために設けられる。ゲーム装置は、位置決定手段、変位決定手段、および移動制御手段を備える。位置決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における位置を決定する。変位決定手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、オブジェクトの仮想ゲーム世界における変位を決定する。移動制御手段は、位置決定手段によって決定されたオブジェクトの位置を、変位決定手段によって決定された変位だけ変化させて、オブジェクトが移動するように制御する。   A thirty-fifth aspect of the present invention is a game system including a game controller operated by a player and a game device connected to the game controller. The game controller includes at least a housing, acceleration detection means, and a direction instruction section. The housing can be held by the player with one hand. The acceleration detecting means detects an acceleration generated in the housing. The direction instruction section is provided in the housing and is provided for inputting a direction instruction. The game device includes position determining means, displacement determining means, and movement control means. The position determining means determines the position of the object appearing in the virtual game world in the virtual game world according to the operation of the direction instruction unit. The displacement determining means determines the displacement of the object in the virtual game world according to the acceleration generated in the housing based on the detection by the acceleration detecting means. The movement control means controls the object to move by changing the position of the object determined by the position determination means by the displacement determined by the displacement determination means.

第36の発明は、上記第35の発明において、変位決定手段は、ハウジングの前後方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの前後方向へ当該オブジェクトが変位するように変位を決定する。   In a thirty-sixth aspect based on the thirty-fifth aspect, the displacement determining means determines the displacement so that the object is displaced in the front-rear direction of the object in the virtual game world according to the acceleration generated in the front-rear direction of the housing. .

第37の発明は、上記第35の発明において、変位決定手段は、ハウジングの第1方向に生じた加速度に応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定する。変位決定手段は、ハウジングの第1方向とは異なる第2方向に生じた加速度に応じて、仮想ゲーム世界における第1方向とは異なる第2方向へオブジェクトが変位するように変位を決定する。   In a thirty-seventh aspect based on the thirty-fifth aspect, the displacement determining means determines the displacement so that the object is displaced in the first direction in the virtual game world according to the acceleration generated in the first direction of the housing. The displacement determining means determines the displacement so that the object is displaced in a second direction different from the first direction in the virtual game world according to the acceleration generated in the second direction different from the first direction of the housing.

第38の発明は、上記第35の発明において、方向指示部は、少なくともスティックをハウジングの所定方向に傾倒させる入力が可能である。位置決定手段は、スティックが所定方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界における第1方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングの所定方向に生じた加速度に応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定する。   In a thirty-eighth aspect based on the thirty-fifth aspect, the direction indicating section can input at least tilt the stick in a predetermined direction of the housing. The position determining means determines a new position by moving the position of the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction. The displacement determining means determines the displacement so that the object is displaced in the first direction in the virtual game world according to the acceleration generated in the predetermined direction of the housing.

第39の発明は、上記第35の発明において、方向指示部は、少なくともスティックをハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能である。位置決定手段は、スティックが所定方向に傾倒されたときに、オブジェクトの位置を仮想ゲーム世界における第1方向に移動させて新たな位置を決定し、かつ、スティックが直交する方向に傾倒されたときに、オブジェクトの位置を第1方向と直交する第2方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングの所定方向に生じた加速度に応じて、仮想ゲーム世界における第1方向へオブジェクトが変位するように変位を決定し、かつ、ハウジングの直交する方向に生じた加速度に応じて、仮想ゲーム世界における第2方向へオブジェクトが変位するように変位を決定する。   In a thirty-ninth aspect based on the thirty-fifth aspect, the direction indicating section can input at least the stick to tilt in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction. The position determining means determines a new position by moving the position of the object in the first direction in the virtual game world when the stick is tilted in a predetermined direction, and when the stick is tilted in the orthogonal direction Then, the position of the object is moved in a second direction orthogonal to the first direction to determine a new position. The displacement determining means determines the displacement so that the object is displaced in the first direction in the virtual game world in accordance with the acceleration generated in a predetermined direction of the housing, and the displacement determination means responds to the acceleration generated in the orthogonal direction of the housing. The displacement is determined so that the object is displaced in the second direction in the virtual game world.

第40の発明は、上記第35の発明において、方向指示部は、少なくともスティックをハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能である。位置決定手段は、方向指示部による指示方向に応じて、スティックがハウジングの前後左右方向に傾倒されたときに、仮想ゲーム世界においてオブジェクトの位置を前後左右方向に移動させて新たな位置を決定する。変位決定手段は、ハウジングの左右方向に生じた加速度に応じて、仮想ゲーム世界におけるオブジェクトの左右方向に当該オブジェクトが変位するように変位を決定する。   In a thirty-fourth aspect based on the thirty-fifth aspect, the direction indicating section is capable of inputting instructions in the front-rear and left-right directions by tilting at least the stick in the front-rear and left-right directions of the housing. The position determining means determines a new position by moving the position of the object in the virtual game world in the front / rear / left / right direction when the stick is tilted in the front / rear / left / right direction of the housing according to the direction indicated by the direction indicating unit. . The displacement determining means determines the displacement so that the object is displaced in the left-right direction of the object in the virtual game world according to the acceleration generated in the left-right direction of the housing.

第41の発明は、上記第25〜第40の発明の何れかにおいて、位置決定手段は、方向指示部で操作された指示方向に応じて、仮想ゲーム世界におけるオブジェクトの前方向を基準として、オブジェクトの新たな位置を決定する。ゲーム装置は、オブジェクト方向制御手段を、さらに備える。オブジェクト方向制御手段は、位置決定手段がオブジェクトの位置を移動させた仮想ゲーム世界における方向を、オブジェクトの新たな前方向に設定し、当該前方向に基づいて仮想ゲーム世界におけるオブジェクトの方向を変更する。   In a forty-first aspect according to any one of the twenty-fifth to forty-first aspects, the position determining means determines the object based on the forward direction of the object in the virtual game world according to the indicated direction operated by the direction indicating unit. Determine the new position. The game apparatus further includes object direction control means. The object direction control means sets the direction in the virtual game world to which the position determination means has moved the position of the object as a new forward direction of the object, and changes the direction of the object in the virtual game world based on the forward direction. .

第42の発明は、上記第6または第30の発明において、第1軸と第2軸とは、互いに直交する。第1方向と第2方向とは、仮想ゲーム世界において互いに直交する。   In a forty-second aspect based on the sixth or thirtieth aspect, the first axis and the second axis are orthogonal to each other. The first direction and the second direction are orthogonal to each other in the virtual game world.

第43の発明は、上記第17または第37の発明において、ハウジングの第1方向と第2方向とは、互いに直交する。仮想ゲーム世界における第1方向と第2方向とは、仮想ゲーム世界において互いに直交する。   In a forty-third aspect based on the seventeenth or thirty-seventh aspect, the first direction and the second direction of the housing are orthogonal to each other. The first direction and the second direction in the virtual game world are orthogonal to each other in the virtual game world.

第44の発明は、上記第1、第13、第23〜第25、および第35の発明の何れかにおいて、ハウジングは、当該ハウジングの側周をプレイヤが片手で握持可能な形状および大きさで形成される。   In a forty-fourth aspect of the invention, in any one of the first, thirteenth, twenty-third to twenty-fifth, and thirty-fifth aspects, the housing has a shape and size that allows the player to grip the side periphery of the housing with one hand. Formed with.

第45の発明は、上記第44の発明において、ハウジングは、当該ハウジングの側周をプレイヤが片手で握持したときに、当該片手の親指で操作可能な位置に方向指示部が配設される。   In a forty-fifth aspect based on the forty-fourth aspect, when the player holds the side periphery of the housing with one hand, the direction indicating portion is disposed at a position where the player can operate with the thumb of the one hand. .

第46の発明は、プレイヤが片手で把持可能なハウジングおよび当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムにおいて、当該ゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、移動ベクトル制御手段、補正手段、および移動制御手段として、コンピュータを機能させる。移動ベクトル制御手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する。補正手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、移動ベクトル制御手段によって決定された移動ベクトルを補正する。移動制御手段は、補正手段によって補正された移動ベクトルに基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A forty-sixth aspect of the present invention is directed to a game controller including a housing that can be held by a player with one hand and a direction instruction unit provided in the housing for inputting a direction instruction, a game device connected to the game controller, In a game system including a detection unit that detects a posture of a housing, the game program is executed by a computer of the game device. The game program causes the computer to function as movement vector control means, correction means, and movement control means. The movement vector control means determines a movement vector of an object appearing in the virtual game world according to an operation of the direction instruction unit. The correction means corrects the movement vector determined by the movement vector control means in accordance with the change in attitude of the housing from the reference attitude based on the detection by the detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement vector corrected by the correction means.

第47の発明は、その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジング、当該ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、ハウジングの前後左右方向への指示入力するための方向指示部、および当該ハウジングの動きを検出する動き検出手段を備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、移動方向制御手段、補正手段、および移動制御手段として、コンピュータを機能させる。移動方向制御手段は、方向指示部によりハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、方向指示部によりハウジングの後ろ方向への指示がされたときに、オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、方向指示部によりハウジングの左右方向への指示がされたときに、オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向とする決定する。補正手段は、動き検出手段の検出に基づいてハウジングの前方向に当該ハウジングが回転したことを示すとき、仮想ゲーム世界における前方向へのオブジェクトの移動量が増加するように移動ベクトルを補正する。移動制御手段は、仮想ゲーム世界内で、補正手段によって補正された移動ベクトルに基づいてオブジェクトを移動させる。   A forty-seventh aspect of the present invention is a housing formed in a shape and size that allows a player to grip the side periphery with one hand, and a position arrangement that can be operated with the thumb of one hand when the player holds the housing with one hand. A game program to be executed by a computer of a game device connected to a game controller provided with a direction controller for inputting instructions in the front and rear, left and right directions of the housing, and a motion detection means for detecting the movement of the housing. . The game program causes the computer to function as movement direction control means, correction means, and movement control means. The movement direction control means sets the forward direction in the virtual game world of the object appearing in the virtual game world as the direction of the movement vector when the direction instruction unit instructs the front of the housing, and the direction indication unit sets the direction of the housing. When the backward direction is instructed, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instructing unit instructs the horizontal direction of the housing, The direction is determined as the direction of the movement vector. The correcting means corrects the movement vector so that the amount of movement of the object in the forward direction in the virtual game world increases when it indicates that the housing has rotated in the forward direction of the housing based on the detection of the movement detecting means. The movement control means moves the object in the virtual game world based on the movement vector corrected by the correction means.

第48の発明は、プレイヤが片手で把持可能なハウジング、当該ハウジングに生じる加速度を検出する加速度検出手段、および当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、移動ベクトル制御手段、補正手段、および移動制御手段として、コンピュータを機能させる。移動ベクトル制御手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する。補正手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、移動ベクトル制御手段によって決定された移動ベクトルを補正する。移動制御手段は、補正手段によって補正された移動ベクトルに基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A forty-eighth aspect of the present invention is a game controller including a housing that can be held by a player with one hand, acceleration detecting means for detecting acceleration generated in the housing, and a direction indicating unit provided in the housing for inputting a direction instruction A game program to be executed by a computer of a connected game device. The game program causes the computer to function as movement vector control means, correction means, and movement control means. The movement vector control means determines a movement vector of an object appearing in the virtual game world according to an operation of the direction instruction unit. The correction unit corrects the movement vector determined by the movement vector control unit according to the acceleration generated in the housing based on the detection by the acceleration detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement vector corrected by the correction means.

第49の発明は、その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジング、当該ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、ハウジングの前後左右方向への指示入力するための方向指示部、および少なくとも当該ハウジングの前方向に生じる加速度を検出する加速度検出手段を備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、移動ベクトル制御手段、補正手段、および移動制御手段として、コンピュータを機能させる。移動ベクトル制御手段は、方向指示部によりハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、方向指示部によりハウジングの後ろ方向への指示がされたときに、オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、方向指示部によりハウジングの左右方向への指示がされたときに、オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する。補正手段は、加速度検出手段の検出に基づいて、ハウジングの前方向に加速度が生じたときに、仮想ゲーム世界におけるオブジェクトの前方向への移動量が増加するように移動ベクトルを補正する。移動制御手段は、仮想ゲーム世界内で、補正手段によって補正された移動ベクトルに基づいてオブジェクトを移動させる。   According to a forty-ninth aspect of the present invention, there is provided a housing formed in a shape and size that allows the player to grip the side periphery with one hand, and a position arrangement that can be operated with the thumb of the one hand when the player holds the housing with one hand. Executed in a computer of a game apparatus connected to a game controller provided with a direction indicating unit for inputting instructions in the front-rear and left-right directions of the housing, and at least acceleration detecting means for detecting acceleration generated in the front direction of the housing It is a game program to let you. The game program causes the computer to function as movement vector control means, correction means, and movement control means. The movement vector control means sets the forward direction in the virtual game world of the object appearing in the virtual game world as the direction of the movement vector when the direction instruction section instructs the housing forward, and the direction instruction section When the backward direction is instructed, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instructing unit instructs the horizontal direction of the housing, The direction is determined as the direction of the movement vector. The correcting means corrects the movement vector so that the amount of movement of the object in the virtual game world increases in the forward direction when acceleration occurs in the forward direction of the housing based on the detection of the acceleration detecting means. The movement control means moves the object in the virtual game world based on the movement vector corrected by the correction means.

第50の発明は、プレイヤが片手で把持可能なハウジングおよび当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムにおいて、当該ゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、
移動方向決定手段、移動量決定手段、および移動制御手段として、コンピュータを機能させる。移動方向決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動方向を決定する。移動量決定手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、オブジェクトの移動量を決定する。移動制御手段は、移動方向決定手段によって決定された移動方向、および、移動量決定手段によって決定された移動量に基づいて、オブジェクトを仮想ゲーム世界において移動制御する。
According to a fifty-th aspect of the present invention, there is provided a game controller including a housing that can be held by a player with one hand and a direction instruction unit provided in the housing for inputting a direction instruction, a game device connected to the game controller, In a game system including a detection unit that detects a posture of a housing, the game program is executed by a computer of the game device. The game program
The computer is caused to function as a movement direction determination unit, a movement amount determination unit, and a movement control unit. The movement direction determination means determines the movement direction of the object appearing in the virtual game world in accordance with the operation of the direction instruction unit. The movement amount determination means determines the movement amount of the object in accordance with the posture change from the reference posture of the housing based on the detection of the detection unit. The movement control means controls the movement of the object in the virtual game world based on the movement direction determined by the movement direction determination means and the movement amount determined by the movement amount determination means.

第51の発明は、プレイヤが片手で把持可能なハウジング、当該ハウジングに生じる加速度を検出する加速度検出手段、および当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、移動方向決定手段、移動量決定手段、および移動制御手段として、コンピュータを機能させる。移動方向決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動方向を決定する。移動量決定手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、オブジェクトの移動量を決定する。移動制御手段は、移動方向決定手段によって決定された移動方向、および、移動量決定手段によって決定された移動量に基づいて、オブジェクトを仮想ゲーム世界において移動制御する。   A fifty-first aspect of the present invention is a game controller comprising a housing that can be held by a player with one hand, acceleration detecting means for detecting acceleration generated in the housing, and a direction indicating unit provided in the housing for inputting a direction instruction A game program to be executed by a computer of a connected game device. The game program causes the computer to function as a movement direction determination unit, a movement amount determination unit, and a movement control unit. The movement direction determination means determines the movement direction of the object appearing in the virtual game world in accordance with the operation of the direction instruction unit. The movement amount determination means determines the movement amount of the object according to the acceleration generated in the housing based on the detection by the acceleration detection means. The movement control means controls the movement of the object in the virtual game world based on the movement direction determined by the movement direction determination means and the movement amount determined by the movement amount determination means.

第52の発明は、プレイヤが片手で把持可能なハウジングおよび当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムにおいて、当該ゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、位置決定手段、変位決定手段、および移動制御手段として、コンピュータを機能させる。位置決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における位置を決定する。変位決定手段は、検出部の検出に基づき、ハウジングの基準姿勢からの姿勢変化に応じて、オブジェクトの仮想ゲーム世界における変位を決定する。移動制御手段は、位置決定手段によって決定されたオブジェクトの位置を、変位決定手段によって決定された変位だけ変化させて、オブジェクトが移動するように制御する。   According to a 52nd aspect of the present invention, there is provided a game controller including a housing that can be held by a player with one hand and a direction instruction unit that is provided in the housing for inputting a direction instruction, a game device connected to the game controller, In a game system including a detection unit that detects a posture of a housing, the game program is executed by a computer of the game device. The game program causes the computer to function as position determining means, displacement determining means, and movement control means. The position determining means determines the position of the object appearing in the virtual game world in the virtual game world according to the operation of the direction instruction unit. The displacement determining means determines the displacement of the object in the virtual game world based on the detection of the detection unit, in accordance with the change in the posture of the housing from the reference posture. The movement control means controls the object to move by changing the position of the object determined by the position determination means by the displacement determined by the displacement determination means.

第53の発明は、プレイヤが片手で把持可能なハウジング、当該ハウジングに生じる加速度を検出する加速度検出手段、および当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムである。ゲームプログラムは、位置決定手段、変位決定手段、および移動制御手段として、コンピュータを機能させる。位置決定手段は、方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における位置を決定する。変位決定手段は、加速度検出手段の検出に基づき、ハウジングに生じた加速度に応じて、オブジェクトの仮想ゲーム世界における変位を決定する。移動制御手段は、位置決定手段によって決定されたオブジェクトの位置を、変位決定手段によって決定された変位だけ変化させて、オブジェクトが移動するように制御する。   A 53rd invention is a game controller comprising a housing that can be held by a player with one hand, an acceleration detecting means for detecting an acceleration generated in the housing, and a direction indicating section provided in the housing for inputting a direction instruction. A game program to be executed by a computer of a connected game device. The game program causes the computer to function as position determining means, displacement determining means, and movement control means. The position determining means determines the position of the object appearing in the virtual game world in the virtual game world according to the operation of the direction instruction unit. The displacement determining means determines the displacement of the object in the virtual game world according to the acceleration generated in the housing based on the detection by the acceleration detecting means. The movement control means controls the object to move by changing the position of the object determined by the position determination means by the displacement determined by the displacement determination means.

上記第1の発明によれば、方向指示部の操作で決定されたオブジェクトの移動制御の内容(移動ベクトル)が、当該方向指示部が設けられたハウジングの姿勢で補正されるため、プレイヤの操作が容易となる。したがって、プレイヤキャラクタ等のオブジェクトの移動のための入力にダイレクト感があり、直感的かつ容易な操作で多様に制御することができる。   According to the first aspect of the invention, the content (movement vector) of the object movement control determined by the operation of the direction indicating unit is corrected by the attitude of the housing provided with the direction indicating unit. Becomes easy. Therefore, the input for moving the object such as the player character has a direct feeling and can be controlled in various ways with intuitive and easy operations.

上記第2〜第6の発明によれば、ハウジングが回転するように姿勢変化したことに応じて、その回転軸に応じた仮想ゲーム世界の方向への移動量が増加するようなオブジェクトの移動制御が可能となる。   According to the second to sixth inventions, the movement control of the object is performed such that the amount of movement in the direction of the virtual game world corresponding to the rotation axis increases in accordance with the change of the posture so that the housing rotates. Is possible.

上記第7〜第11の発明によれば、方向指示部のスティック操作の傾倒方向とハウジングの姿勢変化の方向とを適切に対応付けることにより、より直感的かつ容易な操作で多様に制御することができる。   According to the seventh to eleventh aspects, by appropriately associating the tilt direction of the stick operation of the direction indicating unit with the direction of the posture change of the housing, various controls can be performed with a more intuitive and easy operation. it can.

上記第12の発明によれば、設定された移動ベクトルの方向にオブジェクトの前方向を向けて移動制御することができる。   According to the twelfth aspect of the present invention, movement control can be performed with the front direction of the object directed in the direction of the set movement vector.

上記第13〜第22の発明によれば、方向指示部の操作で決定されたオブジェクトの移動制御の内容(移動ベクトル)が、当該方向指示部が設けられたハウジングに生じる加速度を用いて補正されるため、プレイヤの操作が容易となる。したがって、プレイヤキャラクタ等のオブジェクトの移動制御を直感的かつ容易な操作で多様に制御することができ、上述したゲームシステムと同様の効果が得られる。   According to the thirteenth to twenty-second aspects, the content (movement vector) of the movement control of the object determined by the operation of the direction indicating unit is corrected using the acceleration generated in the housing provided with the direction indicating unit. Therefore, the player can easily operate. Therefore, the movement control of the object such as the player character can be variously controlled by an intuitive and easy operation, and the same effect as the above-described game system can be obtained.

上記第23の発明によれば、方向指示部の操作でオブジェクトの移動方向を決定し、当該方向指示部が設けられたハウジングの姿勢に応じてオブジェクトの移動量が決定されるようなプレイヤの操作が容易なゲームが可能となり、ゲーム入力のダイレクト感をプレイヤに効果的に感じさせることができる。   According to the twenty-third aspect, the player's operation is such that the movement direction of the object is determined by the operation of the direction instruction section, and the movement amount of the object is determined according to the attitude of the housing provided with the direction instruction section. This makes it possible to make the game easier and to make the player feel the direct feeling of the game input effectively.

上記第24の発明によれば、方向指示部の操作でオブジェクトの移動方向を決定し、当該方向指示部が設けられたハウジングに生じる加速度に応じてオブジェクトの移動量が決定されるようなプレイヤの操作が容易なゲームが可能となり、ゲーム入力のダイレクト感をプレイヤに効果的に感じさせることができる。   According to the twenty-fourth aspect, a player's movement direction is determined by an operation of a direction indicating unit, and the amount of movement of the object is determined according to the acceleration generated in a housing provided with the direction indicating unit. A game that is easy to operate is possible, and the player can feel the direct feeling of the game input effectively.

上記第25〜第34の発明によれば、方向指示部の操作でオブジェクトの基本的な位置を決定し、当該方向指示部が設けられたハウジングの姿勢によって当該基本的な位置からオブジェクトが変位するようなゲームが可能となる。したがって、プレイヤキャラクタ等のオブジェクトの移動制御を直感的かつ容易な操作で多様に制御することができ、違和感のない操作性が得られる。また、上述したゲームシステムと同様の効果が得られる。   According to the twenty-fifth to thirty-fourth aspects of the present invention, the basic position of the object is determined by operating the direction indicating unit, and the object is displaced from the basic position depending on the attitude of the housing provided with the direction indicating unit. Such a game becomes possible. Therefore, the movement control of the object such as the player character can be variously controlled by an intuitive and easy operation, and operability without a sense of incongruity can be obtained. Further, the same effect as the above-described game system can be obtained.

上記第35〜第40の発明によれば、方向指示部の操作でオブジェクトの基本的な位置を決定し、当該方向指示部が設けられたハウジングに生じる加速度によって当該基本的な位置からオブジェクトが変位するようなゲームが可能となる。したがって、プレイヤキャラクタ等のオブジェクトの移動制御を直感的かつ容易な操作で多様に制御することができ、違和感のない操作性が得られる。また、上述したゲームシステムと同様の効果が得られる。   According to the 35th to 40th aspects of the invention, the basic position of the object is determined by operating the direction indicator, and the object is displaced from the basic position by the acceleration generated in the housing provided with the direction indicator. Such a game becomes possible. Therefore, the movement control of the object such as the player character can be variously controlled by an intuitive and easy operation, and operability without a sense of incongruity can be obtained. Further, the same effect as the above-described game system can be obtained.

上記第41の発明によれば、オブジェクトが基本的な位置へ移動する方向にオブジェクトの前方向を向けて移動制御することができる。   According to the forty-first aspect, movement control can be performed with the front direction of the object directed in the direction in which the object moves to the basic position.

上記第42および第43の発明によれば、ハウジングの姿勢を判断するための2つの軸が直交し、当該姿勢に応じて仮想ゲーム世界に反映するための2つの軸も直交しており、それらの軸を対応付けて移動制御を行うことができる。したがって、実空間内に設定した仮想的な平面を仮想ゲーム世界内の仮想的な平面に対応させて、オブジェクトの移動制御を行うことができ、よりダイレクト感のあるゲーム入力とすることができる。   According to the forty-second and forty-third aspects of the present invention, the two axes for determining the attitude of the housing are orthogonal, and the two axes for reflecting in the virtual game world according to the attitude are also orthogonal, The movement control can be performed in association with the axes. Therefore, the movement of the object can be controlled by making the virtual plane set in the real space correspond to the virtual plane in the virtual game world, and the game input can be made more direct.

上記第44の発明によれば、プレイヤがハウジングを片手で包み込むように把持することができ、プレイヤの一方の手自体を自由に動かしてプレイすることができる。   According to the forty-fourth aspect of the present invention, the player can hold the housing so as to wrap it with one hand, and can play by freely moving one hand of the player itself.

上記第45の発明によれば、プレイヤがハウジングを片手で包み込むように把持することができ、プレイヤの一方の手自体を自由に動かしながら、従来のコントローラと同じように親指による入力を行うことができる。   According to the forty-fifth aspect of the present invention, the player can hold the housing so as to wrap it with one hand, and can perform input with the thumb as in the conventional controller while freely moving one hand of the player itself. it can.

また、本発明のゲームプログラムによれば、上述したゲームシステムと同様の効果を得ることができる。   Moreover, according to the game program of this invention, the effect similar to the game system mentioned above can be acquired.

図1を参照して、本発明の一実施形態に係るゲーム装置について説明する。以下、説明を具体的にするために、当該ゲーム装置の一例の据置型のゲーム装置を含むゲームシステムについて説明する。なお、図1は据置型のゲーム装置3を含むゲームシステム1の外観図であり、図2はゲーム装置本体5のブロック図である。以下、当該ゲームシステム1について説明する。   A game device according to an embodiment of the present invention will be described with reference to FIG. In the following, a game system including a stationary game apparatus as an example of the game apparatus will be described in order to make the description more specific. FIG. 1 is an external view of a game system 1 including a stationary game apparatus 3, and FIG. 2 is a block diagram of the game apparatus body 5. Hereinafter, the game system 1 will be described.

図1において、ゲームシステム1は、表示手段の一例の家庭用テレビジョン受像機(以下、モニタと記載する)2と、当該モニタ2に接続コードを介して接続する据置型のゲーム装置3とから構成される。モニタ2は、ゲーム装置本体5から出力された音声信号を音声出力するためのスピーカ2aを備える。また、ゲーム装置3は、本願発明のゲームプログラムを記録した光ディスク4と、当該光ディスク4のゲームプログラムを実行してゲーム画面をモニタ2に表示出力させるためのコンピュータを搭載したゲーム装置本体5と、ゲーム画面に表示されたキャラクタ等を操作するゲームに必要な操作情報をゲーム装置本体5に与えるためのコントローラ7とを備えている。   In FIG. 1, a game system 1 includes a home television receiver (hereinafter referred to as a monitor) 2 as an example of display means, and a stationary game apparatus 3 connected to the monitor 2 via a connection cord. Composed. The monitor 2 includes a speaker 2a for outputting the audio signal output from the game apparatus body 5 as audio. The game apparatus 3 includes a game apparatus main body 5 equipped with an optical disk 4 on which the game program of the present invention is recorded, and a computer for executing the game program on the optical disk 4 to display and output a game screen on the monitor 2; And a controller 7 for providing the game apparatus body 5 with operation information necessary for a game for operating a character or the like displayed on the game screen.

また、ゲーム装置本体5は、通信ユニット6を内蔵する。通信ユニット6は、コントローラ7から無線送信されるデータを受信し、ゲーム装置本体5からコントローラ7へデータを送信して、コントローラ7とゲーム装置本体5とを無線通信によって接続する。さらに、ゲーム装置本体5には、当該ゲーム装置本体5に対して交換可能に用いられる情報記憶媒体の一例の光ディスク4が脱着される。ゲーム装置本体5の前部主面には、当該ゲーム装置本体5の電源ON/OFFスイッチ、ゲーム処理のリセットスイッチ、光ディスク4を脱着する投入口、およびゲーム装置本体5の投入口から光ディスク4を取り出すイジェクトスイッチ等が設けられている。   In addition, the game apparatus body 5 includes a communication unit 6. The communication unit 6 receives data wirelessly transmitted from the controller 7, transmits data from the game apparatus body 5 to the controller 7, and connects the controller 7 and the game apparatus body 5 by wireless communication. Further, an optical disk 4 as an example of an information storage medium that is used interchangeably with respect to the game apparatus body 5 is detached from the game apparatus body 5. On the front main surface of the game apparatus main body 5, the power ON / OFF switch of the game apparatus main body 5, the game process reset switch, the insertion slot for attaching / detaching the optical disk 4, and the optical disk 4 from the insertion opening of the game apparatus main body 5 An eject switch to be taken out is provided.

また、ゲーム装置本体5には、セーブデータ等のデータを固定的に記憶するバックアップメモリとして機能するフラッシュメモリ38が搭載される。ゲーム装置本体5は、光ディスク4に記憶されたゲームプログラム等を実行することによって、その結果をゲーム画像としてモニタ2に表示する。さらに、ゲーム装置本体5は、フラッシュメモリ38に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ2に表示することもできる。そして、ゲーム装置本体5のプレイヤは、モニタ2に表示されたゲーム画像を見ながら、コントローラ7を操作することによって、ゲーム進行を楽しむことができる。   In addition, the game apparatus body 5 is equipped with a flash memory 38 that functions as a backup memory for storing data such as save data in a fixed manner. The game apparatus main body 5 displays the result as a game image on the monitor 2 by executing a game program or the like stored on the optical disc 4. Furthermore, the game apparatus body 5 can reproduce the game state executed in the past by using the save data stored in the flash memory 38 and display the game image on the monitor 2. Then, the player of the game apparatus body 5 can enjoy the progress of the game by operating the controller 7 while viewing the game image displayed on the monitor 2.

コントローラ7は、通信ユニット6を内蔵するゲーム装置本体5へ、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて操作情報等の送信データを無線送信する。コントローラ7は、2つのコントロールユニット(コアユニット70およびサブユニット76)が屈曲自在な接続ケーブル79を介して互いに接続されて構成されており、主にモニタ2に表示されるゲーム空間に登場するプレイヤオブジェクトを操作するための操作手段である。コアユニット70およびサブユニット76は、それぞれ複数の操作ボタン、キー、およびスティック等の操作部が設けられている。また、後述により明らかとなるが、コアユニット70は、当該コアユニット70から見た画像を撮像するための撮像情報演算部74を備えている。また、撮像情報演算部74の撮像対象の一例として、モニタ2の表示画面近傍に2つのLEDモジュール8Lおよび8R(以下、マーカ8Lおよび8Rと記載する)が設置される。これらマーカ8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力する。なお、本実施例では、コアユニット70とサブユニット76を屈曲自在なケーブルで接続したが、サブユニット76に無線ユニットを搭載することで、接続ケーブル79をなくすこともできる。例えば、無線ユニットとしてBluetooth(登録商標)ユニットをサブユニット76に搭載することで、サブユニット76からコアユニット70へ操作データを送信することが可能になる。また、コントローラ7(例えば、コアユニット70)は、ゲーム装置本体5の通信ユニット6から無線送信された送信データを通信部75で受信して、当該送信データに応じた音や振動を発生させることもできる。   The controller 7 wirelessly transmits transmission data such as operation information to the game apparatus body 5 incorporating the communication unit 6 by using, for example, Bluetooth (registered trademark) technology. The controller 7 is configured by connecting two control units (a core unit 70 and a subunit 76) to each other via a flexible connection cable 79, and a player appearing in a game space mainly displayed on the monitor 2. It is an operation means for operating the object. Each of the core unit 70 and the subunit 76 is provided with a plurality of operation units such as operation buttons, keys, and sticks. Further, as will be apparent from the description below, the core unit 70 includes an imaging information calculation unit 74 for capturing an image viewed from the core unit 70. In addition, as an example of an imaging target of the imaging information calculation unit 74, two LED modules 8L and 8R (hereinafter referred to as markers 8L and 8R) are installed near the display screen of the monitor 2. These markers 8L and 8R each output infrared light toward the front of the monitor 2. In the present embodiment, the core unit 70 and the subunit 76 are connected by a bendable cable, but the connection cable 79 can be eliminated by mounting a wireless unit on the subunit 76. For example, by mounting a Bluetooth (registered trademark) unit as a wireless unit in the subunit 76, operation data can be transmitted from the subunit 76 to the core unit 70. Further, the controller 7 (for example, the core unit 70) receives the transmission data wirelessly transmitted from the communication unit 6 of the game apparatus body 5 by the communication unit 75, and generates sound and vibration corresponding to the transmission data. You can also.

図2において、ゲーム装置本体5は、各種プログラムを実行する例えばCPU(セントラルプロセッシングユニット)30を備える。CPU30は、図示しないブートROMに記憶された起動プログラムを実行し、メインメモリ33等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムの実行し、そのゲームプログラムに応じたゲーム処理等を行うものである。CPU30には、メモリコントローラ31を介して、GPU(Graphics Processing Unit)32、メインメモリ33、DSP(Digital Signal Processor)34、およびARAM(Audio RAM)35などが接続される。また、メモリコントローラ31には、所定のバスを介して、通信ユニット6、ビデオI/F(インターフェース)37、フラッシュメモリ38、オーディオI/F39、およびディスクI/F41が接続され、それぞれのインターフェースにモニタ2、スピーカ2a、およびディスクドライブ40が接続されている。   In FIG. 2, the game apparatus body 5 includes, for example, a CPU (Central Processing Unit) 30 that executes various programs. The CPU 30 executes a startup program stored in a boot ROM (not shown), initializes a memory such as the main memory 33, and the like, then executes a game program stored in the optical disc 4, and according to the game program Game processing and the like. A CPU (Graphics Processing Unit) 32, a main memory 33, a DSP (Digital Signal Processor) 34, an ARAM (Audio RAM) 35, and the like are connected to the CPU 30 via a memory controller 31. The memory controller 31 is connected to a communication unit 6, a video I / F (interface) 37, a flash memory 38, an audio I / F 39, and a disk I / F 41 via a predetermined bus. A monitor 2, a speaker 2a, and a disk drive 40 are connected.

GPU32は、CPU30の命令に基づいて画像処理を行うものあり、例えば、3Dグラフィックスの表示に必要な計算処理を行う半導体チップで構成される。GPU32は、図示しない画像処理専用のメモリやメインメモリ33の一部の記憶領域を用いて画像処理を行う。GPU32は、これらを用いてモニタ2に表示すべきゲーム画像データやムービ映像を生成し、適宜メモリコントローラ31およびビデオI/F37を介してモニタ2に出力する。   The GPU 32 performs image processing based on an instruction from the CPU 30, and is configured by a semiconductor chip that performs calculation processing necessary for displaying 3D graphics, for example. The GPU 32 performs image processing using a memory dedicated to image processing (not shown) and a partial storage area of the main memory 33. The GPU 32 generates game image data and movie video to be displayed on the monitor 2 using these, and outputs them to the monitor 2 through the memory controller 31 and the video I / F 37 as appropriate.

メインメモリ33は、CPU30で使用される記憶領域であって、CPU30の処理に必要なゲームプログラム等を適宜記憶する。例えば、メインメモリ33は、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このメインメモリ33に記憶されたゲームプログラムや各種データ等が、CPU30によって実行される。   The main memory 33 is a storage area used by the CPU 30 and stores game programs and the like necessary for the processing of the CPU 30 as appropriate. For example, the main memory 33 stores a game program read from the optical disc 4 by the CPU 30 and various data. The game program and various data stored in the main memory 33 are executed by the CPU 30.

DSP34は、ゲームプログラム実行時にCPU30において生成されるサウンドデータ等を処理するものであり、そのサウンドデータ等を記憶するためのARAM35が接続される。ARAM35は、DSP34が所定の処理(例えば、先読みしておいたゲームプログラムやサウンドデータの記憶)を行う際に用いられる。DSP34は、ARAM35に記憶されたサウンドデータを読み出し、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aに出力させる。   The DSP 34 processes sound data generated by the CPU 30 when the game program is executed, and is connected to an ARAM 35 for storing the sound data. The ARAM 35 is used when the DSP 34 performs a predetermined process (for example, storage of a pre-read game program or sound data). The DSP 34 reads the sound data stored in the ARAM 35 and outputs the sound data to the speaker 2 a included in the monitor 2 via the memory controller 31 and the audio I / F 39.

メモリコントローラ31は、データ転送を統括的に制御するものであり、上述した各種I/Fが接続される。上述したように通信ユニット6は、コントローラ7からの送信データを受信し、当該送信データをCPU30へ出力する。また、通信ユニット6は、CPU30から出力された送信データをコントローラ7の通信部75へ送信する。ビデオI/F37には、モニタ2が接続される。オーディオI/F39にはモニタ2に内蔵されるスピーカ2aが接続され、DSP34がARAM35から読み出したサウンドデータやディスクドライブ40から直接出力されるサウンドデータをスピーカ2aから出力可能に接続される。ディスクI/F41には、ディスクドライブ40が接続される。ディスクドライブ40は、所定の読み出し位置に配置された光ディスク4に記憶されたデータを読み出し、ゲーム装置本体5のバスやオーディオI/F39に出力する。   The memory controller 31 controls the overall data transfer and is connected to the various I / Fs described above. As described above, the communication unit 6 receives transmission data from the controller 7 and outputs the transmission data to the CPU 30. Further, the communication unit 6 transmits the transmission data output from the CPU 30 to the communication unit 75 of the controller 7. A monitor 2 is connected to the video I / F 37. A speaker 2a built in the monitor 2 is connected to the audio I / F 39 so that sound data read out from the ARAM 35 by the DSP 34 or sound data directly output from the disk drive 40 can be output from the speaker 2a. A disk drive 40 is connected to the disk I / F 41. The disk drive 40 reads data stored on the optical disk 4 arranged at a predetermined reading position, and outputs the data to the bus of the game apparatus body 5 and the audio I / F 39.

次に、図3および図4を参照して、コントローラ7について説明する。なお、図3は、コントローラ7の外観構成を示す斜視図である。図4は、図3のコントローラ7の接続ケーブル79をコアユニット70から脱着する状態を示す斜視図である。   Next, the controller 7 will be described with reference to FIGS. 3 and 4. FIG. 3 is a perspective view showing an external configuration of the controller 7. FIG. 4 is a perspective view showing a state where the connection cable 79 of the controller 7 of FIG. 3 is detached from the core unit 70.

図3において、コントローラ7は、コアユニット70とサブユニット76とが接続ケーブル79で接続されて構成されている。コアユニット70は、ハウジング71を有しており、当該ハウジング71に複数の操作部72が設けられている。一方、サブユニット76は、ハウジング77を有しており、当該ハウジング77に複数の操作部78が設けられている。そして、コアユニット70とサブユニット76とは、接続ケーブル79によって接続されている。   In FIG. 3, the controller 7 is configured by connecting a core unit 70 and a subunit 76 with a connection cable 79. The core unit 70 includes a housing 71, and a plurality of operation units 72 are provided in the housing 71. On the other hand, the subunit 76 has a housing 77, and a plurality of operation portions 78 are provided in the housing 77. The core unit 70 and the subunit 76 are connected by a connection cable 79.

図4において、接続ケーブル79の一方端にはコアユニット70のコネクタ73に着脱自在なコネクタ791が設けられており、接続ケーブル79の他方端は固定的にサブユニット76と接続されている。そして、接続ケーブル79のコネクタ791は、コアユニット70の後面に設けられたコネクタ73と嵌合し、コアユニット70とサブユニット76とが当該接続ケーブル79を介して接続される。   In FIG. 4, a connector 791 detachably attached to the connector 73 of the core unit 70 is provided at one end of the connection cable 79, and the other end of the connection cable 79 is fixedly connected to the subunit 76. The connector 791 of the connection cable 79 is fitted with the connector 73 provided on the rear surface of the core unit 70, and the core unit 70 and the subunit 76 are connected via the connection cable 79.

次に、図5および図6を参照して、コアユニット70について説明する。なお、図5は、コアユニット70の上面後方から見た斜視図である。図6は、コアユニット70を下面前方から見た斜視図である。   Next, the core unit 70 will be described with reference to FIGS. 5 and 6. FIG. 5 is a perspective view of the core unit 70 as viewed from the upper rear side. FIG. 6 is a perspective view of the core unit 70 as seen from the lower front side.

図5および図6において、コアユニット70は、例えばプラスチック成型によって形成されたハウジング71を有している。ハウジング71は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。   5 and 6, the core unit 70 includes a housing 71 formed by plastic molding, for example. The housing 71 has a substantially rectangular parallelepiped shape whose longitudinal direction is the front-rear direction, and is a size that can be gripped with one hand of an adult or a child as a whole.

ハウジング71上面の中央前面側に、十字キー72aが設けられる。この十字キー72aは、十字型の4方向プッシュスイッチであり、矢印で示す4つの方向(前後左右)に対応する操作部分が十字の突出片にそれぞれ90°間隔で配置される。プレイヤが十字キー72aのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えばプレイヤが十字キー72aを操作することによって、仮想ゲーム世界に登場するプレイヤキャラクタ等の移動方向を指示したり、カーソルの移動方向を指示したりすることができる。   A cross key 72 a is provided on the center front side of the upper surface of the housing 71. The cross key 72a is a cross-shaped four-direction push switch, and operation portions corresponding to the four directions (front and rear, left and right) indicated by arrows are arranged at 90 ° intervals on the cross protruding pieces, respectively. The player selects one of the front, rear, left and right directions by pressing one of the operation portions of the cross key 72a. For example, when the player operates the cross key 72a, it is possible to instruct the moving direction of the player character or the like appearing in the virtual game world, or to instruct the moving direction of the cursor.

なお、十字キー72aは、上述したプレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、リング状に4方向の操作部分を備えたプッシュスイッチとその中央に設けられたセンタスイッチとを複合した複合スイッチを上記十字キー72aの代わりに設けてもかまわない。また、ハウジング71上面から突出した傾倒可能なスティックを倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー72aの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー72aの代わりに設けてもかまわない。また、少なくとも4つの方向(前後左右)をそれぞれ示すスイッチに対して、プレイヤによって押下されたスイッチに応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。   Note that the cross key 72a is an operation unit that outputs an operation signal in response to the above-described direction input operation of the player, but may be an operation unit of another mode. For example, instead of the cross key 72a, a composite switch in which a push switch having a four-direction operation portion in a ring shape and a center switch provided at the center thereof may be provided. Further, an operation unit that outputs an operation signal according to the tilt direction by tilting a tiltable stick protruding from the upper surface of the housing 71 may be provided instead of the cross key 72a. Furthermore, an operation unit that outputs an operation signal corresponding to the sliding direction by sliding a horizontally movable disk-shaped member may be provided instead of the cross key 72a. Further, a touch pad may be provided instead of the cross key 72a. Further, an operation unit that outputs an operation signal in response to a switch pressed by the player may be provided instead of the cross key 72a for switches indicating at least four directions (front / rear / left / right).

ハウジング71上面の十字キー72aより後面側に、複数の操作ボタン72b〜72gが設けられる。操作ボタン72b〜72gは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン72b〜72gに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン72b〜72dには、1番ボタン、2番ボタン、およびAボタン等としての機能が割り当てられる。また、操作ボタン72e〜72gには、マイナスボタン、ホームボタン、およびプラスボタン等としての機能が割り当てられる。これら操作ボタン72b〜72gは、ゲーム装置3が実行するゲームプログラムに応じてそれぞれの機能が割り当てられるが、詳細は後述する。なお、図5に示した配置例では、操作ボタン72b〜72dは、ハウジング71上面の中央前後方向に沿って並設されている。また、操作ボタン72e〜72gは、ハウジング71上面の左右方向に沿って操作ボタン72bおよび72dの間に並設されている。そして、操作ボタン72fは、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。   A plurality of operation buttons 72 b to 72 g are provided on the rear surface side of the cross key 72 a on the upper surface of the housing 71. The operation buttons 72b to 72g are operation units that output operation signals assigned to the operation buttons 72b to 72g when the player presses the button head. For example, functions as a first button, a second button, and an A button are assigned to the operation buttons 72b to 72d. Further, functions as a minus button, a home button, a plus button, and the like are assigned to the operation buttons 72e to 72g. Each of these operation buttons 72b to 72g is assigned a function according to a game program executed by the game apparatus 3, and will be described in detail later. In the arrangement example shown in FIG. 5, the operation buttons 72 b to 72 d are arranged side by side along the center front-rear direction on the upper surface of the housing 71. Further, the operation buttons 72e to 72g are arranged in parallel between the operation buttons 72b and 72d along the left-right direction of the upper surface of the housing 71. The operation button 72f is a type of button whose upper surface is buried in the upper surface of the housing 71 and is not accidentally pressed by the player.

また、ハウジング71上面の十字キー72aより前面側に、操作ボタン72hが設けられる。操作ボタン72hは、遠隔からゲーム装置本体の電源をオン/オフする電源スイッチである。この操作ボタン72hも、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。 An operation button 72h is provided on the front surface side of the cross key 72a on the upper surface of the housing 71. The operation button 72h is a power switch for remotely turning on / off the game apparatus 5 main body. This operation button 72h is also a type of button whose upper surface is buried in the upper surface of the housing 71 and that the player does not accidentally press.

また、ハウジング71上面の操作ボタン72cより後面側に、複数のLED702が設けられる。ここで、コントローラ7は、他のコントローラ7と区別するためにコントローラ種別(コントローラ識別番号)が設けられている。例えば、LED702は、コントローラ7に現在設定されている上記コントローラ種別をプレイヤに通知するために用いられる。具体的には、コアユニット70から通信ユニット6へ送信データを送信する際、上記コントローラ種別に応じて複数のLED702のうち、種別に対応するLEDが点灯する。   A plurality of LEDs 702 are provided on the rear surface side of the operation button 72 c on the upper surface of the housing 71. Here, the controller 7 is provided with a controller type (controller identification number) to distinguish it from other controllers 7. For example, the LED 702 is used to notify the player of the controller type currently set in the controller 7. Specifically, when transmitting transmission data from the core unit 70 to the communication unit 6, among the plurality of LEDs 702, the LED corresponding to the type is lit according to the controller type.

また、ハウジング71上面には、操作ボタン72bおよび操作ボタン72e〜72gの間に後述するスピーカ(図7のスピーカ706)からの音を外部に放出するための音抜き孔が形成されている。   Further, on the upper surface of the housing 71, a sound release hole is formed between the operation button 72b and the operation buttons 72e to 72g for emitting sound from a speaker (speaker 706 in FIG. 7) described later to the outside.

一方、ハウジング71下面には、凹部が形成されている。後述で明らかとなるが、ハウジング71下面の凹部は、プレイヤがコアユニット70を把持したときに当該プレイヤの人差し指や中指が位置するような位置に形成される。そして、上記凹部の傾斜面には、操作ボタン72iが設けられる。操作ボタン72iは、例えばBボタンとして機能する操作部であり、サッカーゲームにおけるシュートのトリガスイッチや選手の切り替え操作等に用いられる。   On the other hand, a recess is formed on the lower surface of the housing 71. As will be described later, the recess on the lower surface of the housing 71 is formed at a position where the player's index finger or middle finger is positioned when the player holds the core unit 70. An operation button 72i is provided on the inclined surface of the recess. The operation button 72i is, for example, an operation unit that functions as a B button, and is used for a shot trigger switch or a player switching operation in a soccer game.

また、ハウジング71前面には、撮像情報演算部74の一部を構成する撮像素子743が設けられる。ここで、撮像情報演算部74は、コアユニット70が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大200フレーム/秒程度のサンプリング周期であるため比較的高速なコアユニット70の動きでも追跡して解析することができる。この撮像情報演算部74の詳細な構成については、後述する。また、ハウジング71の後面には、コネクタ73が設けられている。コネクタ73は、例えば32ピンのエッジコネクタであり、接続ケーブル79のコネクタ791と嵌合して接続するために利用される。   An imaging element 743 that constitutes a part of the imaging information calculation unit 74 is provided on the front surface of the housing 71. Here, the imaging information calculation unit 74 is a system for analyzing the image data captured by the core unit 70, discriminating a place where the luminance is high, and detecting the position of the center of gravity or the size of the place, For example, since the maximum sampling period is about 200 frames / second, even a relatively fast movement of the core unit 70 can be tracked and analyzed. The detailed configuration of the imaging information calculation unit 74 will be described later. A connector 73 is provided on the rear surface of the housing 71. The connector 73 is a 32-pin edge connector, for example, and is used for fitting and connecting with the connector 791 of the connection cable 79.

ここで、以下の説明を具体的にするために、コアユニット70に対して設定する座標系について定義する。図5および図6に示すように、互いに直交するXYZ軸をコアユニット70に対して定義する。具体的には、コアユニット70の前後方向となるハウジング71の長手方向をZ軸とし、コアユニット70の前面(撮像情報演算部74が設けられている面)方向をZ軸正方向とする。また、コアユニット70の上下方向をY軸とし、ハウジング71の上面(操作ボタン72aが設けられた面)方向をY軸正方向とする。さらに、コアユニット70の左右方向をX軸とし、ハウジング71の右側面(図6では表されずに図5で表されている側面)方向をX軸正方向とする。   Here, in order to make the following description concrete, a coordinate system set for the core unit 70 is defined. As shown in FIGS. 5 and 6, XYZ axes orthogonal to each other are defined with respect to the core unit 70. Specifically, the longitudinal direction of the housing 71 that is the front-rear direction of the core unit 70 is the Z axis, and the front surface (surface on which the imaging information calculation unit 74 is provided) of the core unit 70 is the Z axis positive direction. In addition, the vertical direction of the core unit 70 is defined as the Y axis, and the upper surface (surface on which the operation buttons 72a are provided) of the housing 71 is defined as the Y axis positive direction. Further, the left-right direction of the core unit 70 is taken as the X axis, and the right side surface (side face shown in FIG. 5 but not shown in FIG. 6) is taken as the X-axis positive direction.

次に、図7および図8を参照して、コアユニット70の内部構造について説明する。なお、図7は、コアユニット70の上筐体(ハウジング71の一部)を外した状態を後面側から見た斜視図である。図8は、コアユニット70の下筐体(ハウジング71の一部)を外した状態を前面側から見た斜視図である。ここで、図8に示す基板700は、図7に示す基板700の裏面から見た斜視図となっている。   Next, the internal structure of the core unit 70 will be described with reference to FIGS. 7 and 8. FIG. 7 is a perspective view of the state in which the upper housing (a part of the housing 71) of the core unit 70 is removed as viewed from the rear side. FIG. 8 is a perspective view of the state in which the lower housing (a part of the housing 71) of the core unit 70 is removed as seen from the front side. Here, the substrate 700 shown in FIG. 8 is a perspective view seen from the back surface of the substrate 700 shown in FIG.

図7において、ハウジング71の内部には基板700が固設されており、当該基板700の上主面上に操作ボタン72a〜72h、加速度センサ701、LED702、およびアンテナ754等が設けられる。そして、これらは、基板700等に形成された配線(図示せず)によってマイコン751等(図8、図11参照)に接続される。また、図示しない無線モジュール753(図11参照)およびアンテナ754によって、コアユニット70がワイヤレスコントローラとして機能する。なお、ハウジング71内部には図示しない水晶振動子が設けられており、後述するマイコン751の基本クロックを生成する。また、基板700の上主面上に、スピーカ706およびアンプ708が設けられる。加速度センサ701が、基板700の中央部ではなく周辺部に設けられていることにより、コアユニット70の長手方向を軸とした回転に応じて、重力加速度の方向変化に加え、遠心力による成分の含まれる加速度を検出することができるので、所定の演算により、検出される加速度データからコアユニット70の回転を良好な感度で判定することができる。   In FIG. 7, a substrate 700 is fixed inside the housing 71, and operation buttons 72a to 72h, an acceleration sensor 701, an LED 702, an antenna 754, and the like are provided on the upper main surface of the substrate 700. These are connected to the microcomputer 751 and the like (see FIGS. 8 and 11) by wiring (not shown) formed on the substrate 700 and the like. Further, the core unit 70 functions as a wireless controller by a wireless module 753 (see FIG. 11) and an antenna 754 (not shown). A quartz oscillator (not shown) is provided inside the housing 71, and generates a basic clock for the microcomputer 751, which will be described later. A speaker 706 and an amplifier 708 are provided on the upper main surface of the substrate 700. Since the acceleration sensor 701 is provided not at the center of the substrate 700 but at the periphery, in addition to the change in the direction of gravitational acceleration according to the rotation about the longitudinal direction of the core unit 70, the component due to the centrifugal force Since the included acceleration can be detected, the rotation of the core unit 70 can be determined with good sensitivity from the detected acceleration data by a predetermined calculation.

一方、図8において、基板700の下主面上の前端縁に撮像情報演算部74が設けられる。撮像情報演算部74は、コアユニット70の前方から順に赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744によって構成されており、それぞれ基板700の下主面に取り付けられる。また、基板700の下主面上の後端縁にコネクタ73が取り付けられる。さらに、基板700の下主面上にサウンドIC707およびマイコン751が設けられている。サウンドIC707は、基板700等に形成された配線によってマイコン751およびアンプ708と接続され、ゲーム装置本体5から送信されたサウンドデータに応じてアンプ708を介してスピーカ706に音声信号を出力する。そして、基板700の下主面上には、バイブレータ704が取り付けられる。このバイブレータ704は、例えば振動モータやソレノイドである。バイブレータ704が作動することによってコアユニット70に振動が発生するので、それを把持しているプレイヤの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。バイブレータ704は、ハウジング71のやや前方寄りに配置されるため、プレイヤが把持している状態において、ハウジング71が大きく振動することになり、振動を感じやすくなる。   On the other hand, in FIG. 8, an imaging information calculation unit 74 is provided at the front edge on the lower main surface of the substrate 700. The imaging information calculation unit 74 includes an infrared filter 741, a lens 742, an imaging element 743, and an image processing circuit 744 in order from the front of the core unit 70, and is attached to the lower main surface of the substrate 700. A connector 73 is attached to the rear edge on the lower main surface of the substrate 700. Further, a sound IC 707 and a microcomputer 751 are provided on the lower main surface of the substrate 700. The sound IC 707 is connected to the microcomputer 751 and the amplifier 708 through wiring formed on the substrate 700 or the like, and outputs an audio signal to the speaker 706 via the amplifier 708 according to the sound data transmitted from the game apparatus body 5. A vibrator 704 is attached on the lower main surface of the substrate 700. The vibrator 704 is, for example, a vibration motor or a solenoid. Since the vibration is generated in the core unit 70 by the operation of the vibrator 704, the vibration is transmitted to the hand of the player holding it, and a so-called vibration-compatible game can be realized. Since the vibrator 704 is arranged slightly forward of the housing 71, the housing 71 vibrates greatly when the player is holding it, and it is easy to feel the vibration.

図9および図10を参照して、サブユニット76について説明する。なお、図9は、サブユニット76の一例を示す斜視図である。図10は、図9のサブユニット76の上筐体(ハウジング77の一部)を外した状態を示す斜視図である。   The subunit 76 will be described with reference to FIGS. 9 and 10. FIG. 9 is a perspective view showing an example of the subunit 76. FIG. 10 is a perspective view showing a state in which the upper casing (a part of the housing 77) of the subunit 76 shown in FIG. 9 is removed.

図9において、サブユニット76は、例えばプラスチック成型によって形成されたハウジング77を有している。ハウジング77は、その前後方向を長手方向とし、サブユニット76において最太部となる頭部を前方に形成した流線型の立体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。さらに言えば、サブユニット76のハウジング77は、プレイヤの片手の手のひらおよび親指以外の指により包み込むように把持することが可能であり、当該把持をしたときにプレイヤの親指がスティック78aに位置するようにその形状が設計される。   In FIG. 9, the subunit 76 has a housing 77 formed by plastic molding, for example. The housing 77 has a streamlined three-dimensional shape in which the front-rear direction is the longitudinal direction and the head portion that is the thickest part of the subunit 76 is formed in the front. The housing 77 is large enough to be grasped by one hand of an adult or a child as a whole. That's it. Furthermore, the housing 77 of the subunit 76 can be gripped so as to be wrapped with fingers other than the palm of one hand and thumb of the player, and the player's thumb is positioned on the stick 78a when the grip is held. The shape is designed.

ハウジング77上面の上記最太部近傍に、スティック78aが設けられる。スティック78aは、ハウジング77上面から突出した傾倒可能なスティックを倒すことによって、傾倒方向(さらには、付加的に傾倒量)を検出し、それに応じて操作信号を出力する操作部である。例えば、プレイヤがスティック先端を360°任意の方向に傾倒することによって任意の方向や位置を指定することができ、仮想ゲーム世界に登場するプレイヤキャラクタ等の移動方向を指示したり、カーソルの移動方向を指示したりすることができる。また、プレイヤは、スティック78aの傾倒量によって、プレイヤキャラクタやカーソル等の移動量を指示することができる。   A stick 78 a is provided in the vicinity of the thickest portion on the upper surface of the housing 77. The stick 78a is an operation unit that detects a tilt direction (and additionally an amount of tilt) by tilting a tiltable stick that protrudes from the upper surface of the housing 77, and outputs an operation signal accordingly. For example, the player can specify an arbitrary direction and position by tilting the tip of the stick in an arbitrary direction of 360 °, and can instruct the moving direction of a player character or the like appearing in the virtual game world, or the moving direction of the cursor Can be instructed. Further, the player can instruct the amount of movement of the player character, cursor, etc., by the amount of tilt of the stick 78a.

なお、スティック78aは、プレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、上述した十字キーやリング状に4方向の操作部分を備えたプッシュスイッチとその中央に設けられたセンタスイッチとを複合した複合スイッチを上記スティック78aの代わりに設けてもかまわない。また、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記スティック78aの代わりに設けてもかまわない。また、タッチパッドを、上記スティック78aの代わりに設けてもかまわない。また、少なくとも4つの方向(前後左右)をそれぞれ示すスイッチに対して、プレイヤによって押下されたスイッチに応じて操作信号を出力する操作部を上記スティック78aの代わりに設けてもかまわない。   The stick 78a is an operation unit that outputs an operation signal in response to a player's direction input operation, but may be an operation unit of another mode. For example, instead of the stick 78a, a composite switch that combines the above-described push switch having a four-way operation portion in a ring shape and a center switch provided at the center thereof may be provided. In addition, an operation unit that outputs an operation signal corresponding to the sliding direction by sliding a horizontally movable disk-shaped member may be provided instead of the stick 78a. Further, a touch pad may be provided instead of the stick 78a. Further, an operation unit that outputs an operation signal in accordance with a switch pressed by the player may be provided instead of the stick 78a for switches indicating at least four directions (front, rear, left, and right).

サブユニット76のハウジング77の前面に、複数の操作ボタン78dおよび78eが設けられる。操作ボタン78dおよび78eは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン78dおよび78eに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン78dおよび78eには、XボタンおよびYボタン等としての機能が割り当てられる。これら操作ボタン78dおよび78eは、ゲーム装置3が実行するゲームプログラムに応じてそれぞれの機能が割り当てられるが、本発明の説明とは直接関連しないため詳細な説明を省略する。なお、図9に示した配置例では、操作ボタン78dおよび78eは、ハウジング77前面の上下方向に沿って並設されている。   A plurality of operation buttons 78d and 78e are provided on the front surface of the housing 77 of the subunit 76. The operation buttons 78d and 78e are operation units that output operation signals assigned to the operation buttons 78d and 78e when the player presses the head of the button. For example, functions as an X button and a Y button are assigned to the operation buttons 78d and 78e. These operation buttons 78d and 78e are assigned respective functions according to the game program executed by the game apparatus 3, but are not directly related to the description of the present invention, and thus detailed description thereof is omitted. In the arrangement example shown in FIG. 9, the operation buttons 78 d and 78 e are arranged side by side along the vertical direction of the front surface of the housing 77.

図10において、ハウジング77の内部には基板が固設されており、当該基板の上主面上にスティック78aおよび加速度センサ761等が設けられる。そして、これらは、基板等に形成された配線(図示せず)を介して接続ケーブル79と接続されている。加速度センサ761は、ハウジング77の長手方向の中央部かつ短手方向の中央部に配置されるのが好ましい。また、プレイヤがハウジング77を片手の手のひらおよび親指以外の指により包み込むように把持したときに、当該手のひらと指によって囲まれる空間(好ましくは、当該空間のほぼ中心)に配置されるのが好ましい。   In FIG. 10, a substrate is fixed inside the housing 77, and a stick 78a and an acceleration sensor 761 are provided on the upper main surface of the substrate. These are connected to the connection cable 79 via wiring (not shown) formed on the substrate or the like. The acceleration sensor 761 is preferably disposed at the center portion of the housing 77 in the longitudinal direction and the center portion in the short direction. In addition, when the player holds the housing 77 so as to wrap the housing 77 with fingers other than the palm of one hand and the thumb, it is preferable that the player is disposed in a space surrounded by the palm and the finger (preferably substantially at the center of the space).

ここで、以下の説明を具体的にするために、サブユニット76に対して設定する座標系について定義する。図9に示すように、互いに直交するXYZ軸をサブユニット76に対して定義する。具体的には、サブユニット76の前後方向となるハウジング77の長手方向をZ軸とし、サブユニット76の前面(操作ボタン78dおよび78eが設けられている面)方向をZ軸正方向とする。また、サブユニット76の上下方向をY軸とし、ハウジング77の上面方向(スティック78aが突出する方向)をY軸正方向とする。さらに、サブユニット76の左右方向をX軸とし、ハウジング77の右側面(図9では表されない側面)方向をX軸正方向とする。   Here, in order to make the following description concrete, a coordinate system set for the subunit 76 is defined. As shown in FIG. 9, XYZ axes orthogonal to each other are defined for the subunit 76. Specifically, the longitudinal direction of the housing 77, which is the front-rear direction of the subunit 76, is taken as the Z axis, and the front surface (surface on which the operation buttons 78d and 78e are provided) of the subunit 76 is taken as the positive Z axis direction. The vertical direction of the subunit 76 is defined as the Y axis, and the upper surface direction of the housing 77 (the direction in which the stick 78a protrudes) is defined as the Y axis positive direction. Further, the left-right direction of the subunit 76 is taken as the X-axis, and the right side surface (side surface not shown in FIG. 9) direction of the housing 77 is taken as the positive X-axis direction.

次に、図11を参照して、コントローラ7の内部構成について説明する。なお、図11は、コントローラ7の構成を示すブロック図である。   Next, the internal configuration of the controller 7 will be described with reference to FIG. FIG. 11 is a block diagram showing the configuration of the controller 7.

図11において、コアユニット70は、上述した操作部72、撮像情報演算部74、加速度センサ701、バイブレータ704、スピーカ706、サウンドIC707、およびアンプ708の他に、その内部に通信部75を備えている。また、サブユニット7は、上述した操作部78および加速度センサ761を備えており、接続ケーブル79とコネクタ791および73とを介して、マイコン751と接続されている。 In FIG. 11, the core unit 70 includes a communication unit 75 in addition to the above-described operation unit 72, imaging information calculation unit 74, acceleration sensor 701, vibrator 704, speaker 706, sound IC 707, and amplifier 708. Yes. Further, the subunit 7 6 is provided with an operation unit 78 and the acceleration sensor 761 described above, via the connection cable 79 and connectors 791 and 73 are connected to the microcomputer 751.

撮像情報演算部74は、赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744を含んでいる。赤外線フィルタ741は、コアユニット70の前方から入射する光から赤外線のみを通過させる。レンズ742は、赤外線フィルタ741を透過した赤外線を集光して撮像素子743へ出射する。撮像素子743は、例えばCMOSセンサやあるいはCCDのような固体撮像素子であり、レンズ742が集光した赤外線を撮像する。したがって、撮像素子743は、赤外線フィルタ741を通過した赤外線だけを撮像して画像データを生成する。撮像素子743で生成された画像データは、画像処理回路744で処理される。具体的には、画像処理回路744は、撮像素子743から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部75へ出力する。なお、これらの撮像情報演算部74は、コアユニット70のハウジング71に固設されており、ハウジング71自体の方向を変えることによってその撮像方向を変更することができる。   The imaging information calculation unit 74 includes an infrared filter 741, a lens 742, an imaging element 743, and an image processing circuit 744. The infrared filter 741 allows only infrared light to pass through from light incident from the front of the core unit 70. The lens 742 condenses the infrared light that has passed through the infrared filter 741 and outputs the condensed infrared light to the image sensor 743. The imaging element 743 is a solid-state imaging element such as a CMOS sensor or a CCD, for example, and images the infrared rays collected by the lens 742. Therefore, the image sensor 743 captures only the infrared light that has passed through the infrared filter 741 and generates image data. Image data generated by the image sensor 743 is processed by an image processing circuit 744. Specifically, the image processing circuit 744 processes the image data obtained from the image sensor 743 to detect high-luminance portions, and transmits processing result data indicating the result of detecting their position coordinates and area to the communication unit 75. Output to. The imaging information calculation unit 74 is fixed to the housing 71 of the core unit 70, and the imaging direction can be changed by changing the direction of the housing 71 itself.

コアユニット70は、3軸(X、Y、Z軸)の加速度センサ701を備えていることが好ましい。また、サブユニット76は、3軸(X、Y、Z軸)の加速度センサ761を備えていることが好ましい。この3軸の加速度センサ701および761は、それぞれ3方向、すなわち、上下方向、左右方向、および前後方向(上述したXYZ軸方向)で直線加速度を検知する。また、他の実施形態においては、ゲーム処理に用いる制御信号の種類によっては、上下および左右方向(または他の対になった方向)のそれぞれに沿った直線加速度のみを検知する2軸の加速度検出手段や何れか1軸に沿った直線加速度のみを検知する1軸の加速度検出手段を使用してもよい。例えば、この1軸〜3軸の加速度センサ701および761は、アナログ・デバイセズ株式会社(Analog Devices, Inc.)またはSTマイクロエレクトロニクス社(STMicroelectronics N.V.)から入手可能であるタイプのものでもよい。加速度センサ701および761は、シリコン微細加工されたMEMS(Micro Electro Mechanical Systems:微小電子機械システム)の技術に基づいた静電容量式(静電容量結合式)であることが好ましい。しかしながら、既存の加速度検出手段の技術(例えば、圧電方式や圧電抵抗方式)あるいは将来開発される他の適切な技術を用いて1軸〜3軸の加速度センサ701および761が提供されてもよい。   The core unit 70 preferably includes a triaxial (X, Y, Z axis) acceleration sensor 701. The subunit 76 preferably includes a triaxial (X, Y, Z axis) acceleration sensor 761. The three-axis acceleration sensors 701 and 761 detect linear acceleration in three directions, that is, the up-down direction, the left-right direction, and the front-rear direction (the XYZ axis directions described above). In other embodiments, depending on the type of control signal used in the game process, biaxial acceleration detection that detects only linear acceleration along each of the vertical and horizontal directions (or other paired directions). A uniaxial acceleration detecting means for detecting only linear acceleration along any one of the means may be used. For example, the 1-axis to 3-axis acceleration sensors 701 and 761 may be of a type available from Analog Devices, Inc. or ST Microelectronics NV. . The acceleration sensors 701 and 761 are preferably of a capacitive type (capacitive coupling type) based on a MEMS (Micro Electro Mechanical Systems) technique in which silicon is micromachined. However, the 1-axis to 3-axis acceleration sensors 701 and 761 may be provided by using the existing acceleration detecting technology (for example, piezoelectric method or piezoresistive method) or other appropriate technology developed in the future.

当業者には公知であるように、加速度センサ701および761に用いられるような加速度検出手段は、加速度センサの持つ各軸に対応する直線に沿った加速度(直線加速度)のみを検知することができる。つまり、加速度センサ701および761からの直接の出力は、その1軸〜3軸のそれぞれに沿った直線加速度(静的または動的)を示す信号である。このため、加速度センサ701および761は、非直線状(例えば、円弧状)の経路に沿った動き、回転、回転運動、角変位、傾斜、位置、または姿勢等の物理特性を直接検知することはできない。   As known to those skilled in the art, the acceleration detecting means used in the acceleration sensors 701 and 761 can detect only acceleration (linear acceleration) along a straight line corresponding to each axis of the acceleration sensor. . That is, the direct outputs from the acceleration sensors 701 and 761 are signals indicating linear acceleration (static or dynamic) along each of the first to third axes. Therefore, the acceleration sensors 701 and 761 cannot directly detect physical characteristics such as movement, rotation, rotational movement, angular displacement, inclination, position, or posture along a non-linear (eg, arc) path. Can not.

しかしながら、加速度センサ701および761から出力される加速度の信号に基づいて、ゲーム装置のプロセッサ(例えばCPU30)、コントローラ7またはサブユニット76のプロセッサ(例えばマイコン751)等のコンピュータが処理を行うことによって、コアユニット70およびサブユニット76に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。   However, based on acceleration signals output from the acceleration sensors 701 and 761, a computer such as a processor of the game device (for example, the CPU 30), a controller 7 or a processor of the subunit 76 (for example, the microcomputer 751) performs processing. One skilled in the art will readily understand from the description herein that additional information regarding the core unit 70 and subunit 76 can be inferred or calculated (determined).

例えば、加速度センサ701および761を搭載するコアユニット70およびサブユニット76が静的な状態であることを前提としてコンピュータ側で処理する場合(すなわち、加速度センサ701および761によって検出される加速度が重力加速度のみであるとして処理する場合)、コアユニット70およびサブユニット76が現実に静的な状態であれば、検出された加速度に基づいてコアユニット70およびサブユニット76の姿勢が重力方向に対して傾いているか否か、またはどの程度傾いているかを知ることができる。具体的には、加速度センサ701および761の検出軸が鉛直下方向を向いている状態を基準としたとき、当該検出軸方向に1G(重力加速度)が作用しているか否かだけでコアユニット70およびサブユニット76が鉛直下方向に対して傾いているか否かを知ることができる。また、上記検出軸方向に作用している加速度の大きさによって、コアユニット70およびサブユニット76が鉛直下方向に対してどの程度傾いているかも知ることができる。また、多軸方向の加速度を検出可能な加速度センサ701および761の場合には、さらに各軸に対して検出された加速度の信号に対して処理を施すことによって、重力方向に対してコアユニット70およびサブユニット76がどの程度傾いているかをより詳細に知ることができる。この場合において、加速度センサ701および761からの出力に基づいて、プロセッサがコアユニット70およびサブユニット76の傾き角度のデータを算出する処理を行ってもよいが、当該傾き角度のデータを算出する処理を行うことなく、加速度センサ701および761からの出力に基づいて、おおよそのコアユニット70およびサブユニット76の傾き具合を推定するような処理としてもよい。このように、加速度センサ701および761をプロセッサと組み合わせて用いることによって、コアユニット70およびサブユニット76の傾き、姿勢、または位置を判定することができる。   For example, when processing is performed on the computer side on the assumption that the core unit 70 and the subunit 76 on which the acceleration sensors 701 and 761 are mounted are in a static state (that is, the acceleration detected by the acceleration sensors 701 and 761 is a gravitational acceleration). If the core unit 70 and the subunit 76 are actually in a static state, the posture of the core unit 70 and the subunit 76 is inclined with respect to the direction of gravity based on the detected acceleration. It is possible to know whether or not it is tilted. Specifically, when the detection axes of the acceleration sensors 701 and 761 are oriented vertically downward, the core unit 70 is determined only by whether 1G (gravity acceleration) is acting in the detection axis direction. In addition, it is possible to know whether or not the subunit 76 is inclined with respect to the vertically downward direction. Further, it can be determined how much the core unit 70 and the subunit 76 are inclined with respect to the vertical downward direction by the magnitude of the acceleration acting in the detection axis direction. In the case of the acceleration sensors 701 and 761 capable of detecting the acceleration in the multi-axis direction, the core unit 70 is further processed in the gravity direction by further processing the acceleration signals detected for the respective axes. It is possible to know in detail how much the subunit 76 is inclined. In this case, the processor may perform the process of calculating the tilt angle data of the core unit 70 and the subunit 76 based on the outputs from the acceleration sensors 701 and 761, but the process of calculating the tilt angle data. It is good also as a process which estimates the inclination condition of the approximate core unit 70 and the subunit 76 based on the output from the acceleration sensors 701 and 761 without performing. In this way, by using the acceleration sensors 701 and 761 in combination with the processor, the inclination, posture, or position of the core unit 70 and the subunit 76 can be determined.

一方、加速度センサ701および761が動的な状態であることを前提とする場合には、当該加速度センサ701および761が重力加速度成分に加えて加速度センサ701および761の動きに応じた加速度を検出するので、重力加速度成分を所定の処理により除去すれば、コアユニット70およびサブユニット76の動き方向等を知ることができる。具体的には、加速度センサ701および761を備えるコアユニット70およびサブユニット76がプレイヤの手で動的に加速されて動かされる場合に、加速度センサ701および761によって生成される加速度信号を処理することによって、コアユニット70およびサブユニット76の様々な動きおよび/または位置を算出することができる。なお、加速度センサ701および761が動的な状態であることを前提とする場合であっても、加速度センサ701および761の動きに応じた加速度を所定の処理により除去すれば、重力方向に対するコアユニット70およびサブユニット76の傾きを知ることが可能である。   On the other hand, when it is assumed that the acceleration sensors 701 and 761 are in a dynamic state, the acceleration sensors 701 and 761 detect acceleration corresponding to the movement of the acceleration sensors 701 and 761 in addition to the gravitational acceleration component. Therefore, if the gravitational acceleration component is removed by a predetermined process, the movement directions of the core unit 70 and the subunit 76 can be known. Specifically, when the core unit 70 and the subunit 76 including the acceleration sensors 701 and 761 are dynamically accelerated and moved by the player's hand, the acceleration signals generated by the acceleration sensors 701 and 761 are processed. Thus, various movements and / or positions of the core unit 70 and the subunit 76 can be calculated. Even if it is assumed that the acceleration sensors 701 and 761 are in a dynamic state, if the acceleration corresponding to the movement of the acceleration sensors 701 and 761 is removed by a predetermined process, the core unit in the direction of gravity 70 and the inclination of the subunit 76 can be known.

他の実施例では、加速度センサ701および761は、信号をマイコン751に出力する前に内蔵の加速度検出手段から出力される加速度信号に対して所望の処理を行うための、組込み式の信号処理装置または他の種類の専用の処理装置をそれぞれ備えていてもよい。例えば、組込み式または専用の処理装置は、加速度センサ701および761が静的な加速度(例えば、重力加速度)を検出するためのものである場合、検知された加速度信号をそれに相当する傾斜角に変換するものであってもよい。加速度センサ701および761でそれぞれ検知された加速度を示すデータは、通信部75に出力される。   In another embodiment, the acceleration sensors 701 and 761 are built-in signal processing devices for performing desired processing on the acceleration signal output from the built-in acceleration detecting means before outputting the signal to the microcomputer 751. Alternatively, other types of dedicated processing apparatuses may be provided. For example, the built-in or dedicated processing device converts the detected acceleration signal into a corresponding tilt angle when the acceleration sensors 701 and 761 are for detecting static acceleration (for example, gravitational acceleration). You may do. Data indicating the acceleration detected by the acceleration sensors 701 and 761 is output to the communication unit 75.

ここで、コアユニット70やサブユニット76を把持してプレイヤが振った場合、振り始めは加速して振り終わりは減速となる。したがって、コアユニット70やサブユニット76には、振り始めで振っている方向と同じ方向の加速度が生じた後、徐々に加速度の大きさが減少して、振り終わりで振っている方向とは逆の方向に加速度が生じる。一方、一般的に、加速度センサ701および761から出力される加速度ベクトル(あるいは、加速度の正負)は、コアユニット70やサブユニット76の加速方向とは真逆のベクトルとなる。   Here, when the player swings while holding the core unit 70 or the subunit 76, the swing start is accelerated and the swing end is decelerated. Accordingly, after the acceleration in the same direction as the direction in which the core unit 70 and the subunit 76 are swung is generated, the magnitude of the acceleration gradually decreases, and the direction in which the wave is swung at the end of the swing is reversed. Acceleration occurs in the direction of. On the other hand, generally, acceleration vectors (or positive and negative accelerations) output from the acceleration sensors 701 and 761 are vectors opposite to the acceleration directions of the core unit 70 and the subunit 76.

他の実施形態の例では、加速度センサ701および761の代わりに、少なくとも一方を回転素子または振動素子などを内蔵したジャイロセンサを用いてもよい。この実施形態で使用されるMEMSジャイロセンサの一例として、アナログ・デバイセズ株式会社から入手可能なものがある。加速度センサ701および761と異なり、ジャイロセンサは、それが内蔵する少なくとも一つのジャイロ素子の軸を中心とした回転(または角速度)を直接検知することができる。このように、ジャイロセンサと加速度センサとは基本的に異なるので、個々の用途のためにいずれの装置が選択されるかによって、これらの装置からの出力信号に対して行う処理を適宜変更する必要がある。   In an example of another embodiment, instead of the acceleration sensors 701 and 761, a gyro sensor including at least one of a rotation element or a vibration element may be used. An example of a MEMS gyro sensor used in this embodiment is available from Analog Devices, Inc. Unlike the acceleration sensors 701 and 761, the gyro sensor can directly detect rotation (or angular velocity) about the axis of at least one gyro element incorporated therein. As described above, since the gyro sensor and the acceleration sensor are basically different from each other, it is necessary to appropriately change the processing to be performed on the output signals from these devices depending on which device is selected for each application. There is.

具体的には、加速度センサの代わりにジャイロセンサを用いて傾きや姿勢を算出する場合には、大幅な変更を行う。すなわち、ジャイロセンサを用いる場合、検出開始の状態において傾きの値を初期化する。そして、当該ジャイロセンサから出力される角速度データを積分する。次に、初期化された傾きの値からの傾きの変化量を算出する。この場合、算出される傾きは、角度に対応する値が算出されることになる。一方、加速度センサによって傾きを算出する場合には、重力加速度のそれぞれの軸に関する成分の値を、所定の基準と比較することによって傾きを算出するので、算出される傾きはベクトルで表すことが可能であり、初期化を行わずとも、加速度検出手段を用いて検出される絶対的な方向を検出することが可能である。また、傾きとして算出される値の性質は、ジャイロセンサが用いられる場合には角度であるのに対して、加速度センサが用いられる場合にはベクトルであるという違いがある。したがって、加速度センサに代えてジャイロセンサが用いられる場合、当該傾きのデータに対して、2つのデバイスの違いを考慮した所定の変換を行う必要がある。加速度検出手段とジャイロスコープとの基本的な差異と同様にジャイロスコープの特性は当業者に公知であるので、本明細書ではさらなる詳細を省略する。ジャイロセンサは、回転を直接検知できることによる利点を有する一方、一般的には、加速度センサは、本実施形態で用いるようなコントローラに適用される場合、ジャイロセンサに比べて費用効率が良いという利点を有する。   Specifically, when the inclination or posture is calculated using a gyro sensor instead of the acceleration sensor, a significant change is made. That is, when the gyro sensor is used, the inclination value is initialized in the detection start state. Then, the angular velocity data output from the gyro sensor is integrated. Next, a change amount of the inclination from the initialized inclination value is calculated. In this case, the calculated inclination is a value corresponding to the angle. On the other hand, when the inclination is calculated by the acceleration sensor, the inclination is calculated by comparing the value of the component relating to each axis of the gravitational acceleration with a predetermined reference, so the calculated inclination can be expressed by a vector. Thus, it is possible to detect the absolute direction detected using the acceleration detecting means without performing initialization. In addition, the property of the value calculated as the inclination is an angle when a gyro sensor is used, but a vector when an acceleration sensor is used. Therefore, when a gyro sensor is used instead of the acceleration sensor, it is necessary to perform predetermined conversion in consideration of the difference between the two devices with respect to the tilt data. Since the characteristics of the gyroscope as well as the basic differences between the acceleration detection means and the gyroscope are known to those skilled in the art, further details are omitted here. While the gyro sensor has the advantage of being able to directly detect rotation, in general, the acceleration sensor has the advantage of being more cost effective than the gyro sensor when applied to a controller as used in this embodiment. Have.

通信部75は、マイクロコンピュータ(Micro Computer:マイコン)751、メモリ752、無線モジュール753、およびアンテナ754を含んでいる。マイコン751は、処理の際にメモリ752を記憶領域として用いながら、送信データを無線送信する無線モジュール753を制御する。また、マイコン751は、アンテナ754を介して無線モジュール753が受信したゲーム装置本体5からのデータに応じて、サウンドIC707およびバイブレータ704の動作を制御する。サウンドIC707は、通信部75を介してゲーム装置本体5から送信されたサウンドデータ等を処理する。また、マイコン751は、通信部75を介してゲーム装置本体5から送信された振動データ(例えば、バイブレータ704をONまたはOFFする信号)等に応じて、バイブレータ704を作動させる。また、メモリ752または図示しない不揮発記憶手段には、コアユニット70ごとに固有に設定される識別番号データが記憶される。   The communication unit 75 includes a microcomputer (microcomputer) 751, a memory 752, a wireless module 753, and an antenna 754. The microcomputer 751 controls the wireless module 753 that wirelessly transmits transmission data while using the memory 752 as a storage area during processing. The microcomputer 751 controls the operation of the sound IC 707 and the vibrator 704 in accordance with data from the game apparatus body 5 received by the wireless module 753 via the antenna 754. The sound IC 707 processes sound data transmitted from the game apparatus body 5 via the communication unit 75. Further, the microcomputer 751 activates the vibrator 704 in accordance with vibration data (for example, a signal for turning the vibrator 704 on or off) transmitted from the game apparatus body 5 via the communication unit 75. Further, identification number data uniquely set for each core unit 70 is stored in the memory 752 or the non-volatile storage means (not shown).

コアユニット70に設けられた操作部72からの操作信号(コアキーデータ)、加速度センサ701からの加速度信号(コア加速度データ)、および撮像情報演算部74からの処理結果データは、マイコン751に出力される。また、接続ケーブル79を介して、サブユニット76に設けられた操作部78からの操作信号(サブキーデータ)および加速度センサ761からの加速度信号(サブ加速度データ)は、マイコン751に出力される。マイコン751は、入力した各データ(コアキーデータ、サブキーデータ、コア加速度データ、サブ加速度データ、処理結果データ)を通信ユニット6へ送信する送信データとして一時的にメモリ752に格納する。ここで、通信部75から通信ユニット6への無線送信は、所定の周期毎に行われるが、ゲームの処理は1/60秒を単位として行われることが一般的であるので、それよりも短い周期でデータを収集して送信を行うことが必要となる。具体的には、ゲームの処理単位は16.7ms(1/60秒)であり、ブルートゥース(Bluetooth;登録商標)で構成される通信部75の送信間隔は5msである。マイコン751は、通信ユニット6への送信タイミングが到来すると、メモリ752に格納されている送信データを一連の操作情報として、コントローラ7に固有のコントローラ識別番号を付与して無線モジュール753へ出力する。そして、無線モジュール753は、例えばブルートゥース(登録商標)の技術に基づいて、所定周波数の搬送波を用いて操作情報で変調し、その微弱電波信号をアンテナ754から放射する。つまり、コアユニット70に設けられた操作部72からのコアキーデータ、サブユニット76に設けられた操作部78からのサブキーデータ、コアユニット70に設けられた加速度センサ701からのコア加速度データ、サブユニット76に設けられた加速度センサ761からのサブ加速度データ、撮像情報演算部74からの処理結果データ、およびコントローラ識別番号は、無線モジュール753で微弱電波信号に変調されてコアユニット70から放射される。そして、ゲーム装置3の通信ユニット6でその微弱電波信号を受信し、ゲーム装置3で当該微弱電波信号を復調や復号することによって、一連の操作情報(コアキーデータ、サブキーデータ、コア加速度データ、サブ加速度データ、および処理結果データ)およびコントローラ識別番号を取得することができる。そして、ゲーム装置3のCPU30は、取得した操作情報およびコントローラ識別番号とゲームプログラムとに基づいて、ゲーム処理を行う。   An operation signal (core key data) from the operation unit 72 provided in the core unit 70, an acceleration signal (core acceleration data) from the acceleration sensor 701, and processing result data from the imaging information calculation unit 74 are output to the microcomputer 751. Is done. In addition, an operation signal (sub key data) from the operation unit 78 provided in the subunit 76 and an acceleration signal (sub acceleration data) from the acceleration sensor 761 are output to the microcomputer 751 via the connection cable 79. The microcomputer 751 temporarily stores the input data (core key data, sub key data, core acceleration data, sub acceleration data, and processing result data) in the memory 752 as transmission data to be transmitted to the communication unit 6. Here, the wireless transmission from the communication unit 75 to the communication unit 6 is performed at predetermined intervals, but since the game processing is generally performed in units of 1/60 seconds, it is shorter than that. It is necessary to collect and transmit data at periodic intervals. Specifically, the processing unit of the game is 16.7 ms (1/60 seconds), and the transmission interval of the communication unit 75 configured by Bluetooth (registered trademark) is 5 ms. When the transmission timing to the communication unit 6 arrives, the microcomputer 751 assigns a unique controller identification number to the controller 7 and outputs the transmission data stored in the memory 752 as a series of operation information to the wireless module 753. The wireless module 753 modulates the operation information using a carrier wave having a predetermined frequency based on, for example, Bluetooth (registered trademark) technology, and radiates the weak radio signal from the antenna 754. That is, the core key data from the operation unit 72 provided in the core unit 70, the sub key data from the operation unit 78 provided in the subunit 76, the core acceleration data from the acceleration sensor 701 provided in the core unit 70, the sub The sub acceleration data from the acceleration sensor 761 provided in the unit 76, the processing result data from the imaging information calculation unit 74, and the controller identification number are modulated into weak radio signals by the wireless module 753 and radiated from the core unit 70. . Then, the weak radio signal is received by the communication unit 6 of the game apparatus 3, and the weak radio signal is demodulated and decoded by the game apparatus 3, whereby a series of operation information (core key data, sub key data, core acceleration data, Sub-acceleration data and processing result data) and a controller identification number can be acquired. Then, the CPU 30 of the game apparatus 3 performs a game process based on the acquired operation information, the controller identification number, and the game program.

図12に示すように、ゲームシステム1でコントローラ7を用いてゲームをプレイするためには、プレイヤは、一方の手(例えば右手)でコアユニット70を把持し(図13および図14参照)、他方の手(例えば左手)でサブユニット76を把持する(図16参照)。そして、プレイヤは、コアユニット70の前面(撮像情報演算部74が撮像する光の入射口側)がモニタ2に向くようにコアユニット70を把持する。一方、モニタ2の表示画面近傍には、2つのマーカ8Lおよび8Rが設置される。これらマーカ8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力する。   As shown in FIG. 12, in order to play a game using the controller 7 in the game system 1, the player holds the core unit 70 with one hand (for example, the right hand) (see FIGS. 13 and 14). The subunit 76 is held with the other hand (for example, the left hand) (see FIG. 16). Then, the player holds the core unit 70 so that the front surface of the core unit 70 (the light entrance side of the light imaged by the imaging information calculation unit 74) faces the monitor 2. On the other hand, in the vicinity of the display screen of the monitor 2, two markers 8L and 8R are installed. These markers 8L and 8R each output infrared light toward the front of the monitor 2.

プレイヤがその前面がモニタ2に向くようにコアユニット70を把持することによって、撮像情報演算部74には2つのマーカ8Lおよび8Rが出力した赤外光が入射する。そして、赤外線フィルタ741およびレンズ742を介して、入射した赤外光を撮像素子743が撮像し、当該撮像画像を画像処理回路744が処理する。ここで、撮像情報演算部74では、マーカ8Lおよび8Rから出力される赤外線成分を検出することで、当該マーカ8Lおよび8Rの位置や面積情報を取得する。具体的には、撮像情報演算部74は、撮像素子743が撮像した画像データを解析して、面積情報からマーカ8Lおよび8Rからの赤外光ではあり得ない画像を除外し、輝度が高い位置をマーカ8Lおよび8Rそれぞれの位置として判別する。そして、撮像情報演算部74は、判別されたそれらの位置座標やそれらの重心座標等を取得し、上記処理結果データとして出力する。このような処理結果データをゲーム装置3へ送信することによって、ゲーム装置3では、上記位置座標や重心座標に基づいて、マーカ8Lおよび8Rに対する撮像情報演算部74、すなわちコアユニット70の動き、姿勢、位置等に関連のある操作信号を得ることができる。具体的には、コアユニット70が動かされることによって、通信部75から送信される画像内の高輝度点の位置が変化するため、高輝度点の位置の変化に対応させた方向入力や座標入力を行うことで、コアユニット70の移動方向に沿った方向入力や座標入力を行うことができる。   When the player holds the core unit 70 so that the front surface thereof faces the monitor 2, infrared light output from the two markers 8 </ b> L and 8 </ b> R enters the imaging information calculation unit 74. Then, the imaging device 743 captures the incident infrared light through the infrared filter 741 and the lens 742, and the image processing circuit 744 processes the captured image. Here, the imaging information calculation unit 74 acquires the position and area information of the markers 8L and 8R by detecting infrared components output from the markers 8L and 8R. Specifically, the imaging information calculation unit 74 analyzes the image data captured by the imaging element 743, excludes images that cannot be infrared light from the markers 8L and 8R from the area information, and has a high luminance position. Are determined as the positions of the markers 8L and 8R, respectively. Then, the imaging information calculation unit 74 acquires the determined position coordinates, the center-of-gravity coordinates, and the like, and outputs them as the processing result data. By transmitting such processing result data to the game apparatus 3, the game apparatus 3 moves and postures the imaging information calculation unit 74 for the markers 8 </ b> L and 8 </ b> R, that is, the core unit 70, based on the position coordinates and the barycentric coordinates. An operation signal related to the position or the like can be obtained. Specifically, since the position of the high luminance point in the image transmitted from the communication unit 75 changes when the core unit 70 is moved, direction input and coordinate input corresponding to the change in the position of the high luminance point are performed. By performing the above, direction input and coordinate input along the moving direction of the core unit 70 can be performed.

このように、コアユニット70の撮像情報演算部74によって固定的に設置されたマーカ(実施例では、2つのマーカ8Lおよび8Rからの赤外光)を撮像することによって、ゲーム装置3におけるゲーム処理において、コアユニット70の動き、姿勢、位置等に関連した処理結果データを用いることが可能となり、ボタンを押下するような操作ボタンや操作キーとは異なったより直感的な操作入力となる。また、上述したように上記マーカは、モニタ2の表示画面近傍に設置されているため、マーカに対する位置をモニタ2の表示画面に対するコアユニット70の動き、姿勢、位置等に換算することも容易に行うことができる。つまり、コアユニット70の動き、姿勢、位置等による処理結果データは、モニタ2の表示画面に直接作用する操作入力として用いることができる。   Thus, the game processing in the game apparatus 3 is performed by imaging the marker (in the embodiment, infrared light from the two markers 8L and 8R) fixedly installed by the imaging information calculation unit 74 of the core unit 70. In this case, it is possible to use processing result data related to the movement, posture, position, etc. of the core unit 70, and it becomes a more intuitive operation input that is different from the operation buttons and operation keys that press the button. Further, as described above, since the marker is installed in the vicinity of the display screen of the monitor 2, it is easy to convert the position relative to the marker into the movement, posture, position, etc. of the core unit 70 relative to the display screen of the monitor 2. It can be carried out. That is, the processing result data based on the movement, posture, position, etc. of the core unit 70 can be used as an operation input that directly acts on the display screen of the monitor 2.

図13および図14を参照して、プレイヤがコアユニット70を一方の手で把持した状態について説明する。なお、図13は、プレイヤがコアユニット70を右手で把持した状態をコアユニット70の前面側から見た一例である。図14は、プレイヤがコアユニット70を右手で把持した状態をコアユニット70の左側面側から見た一例である。   A state where the player holds the core unit 70 with one hand will be described with reference to FIGS. 13 and 14. FIG. 13 is an example of a state where the player holds the core unit 70 with the right hand as viewed from the front side of the core unit 70. FIG. 14 shows an example in which the player holds the core unit 70 with his right hand as viewed from the left side of the core unit 70.

図13および図14に示すように、コアユニット70は、全体として大人や子供の片手で把持可能な大きさである。そして、プレイヤの親指をコアユニット70の上面(例えば、十字キー72a付近)に添え、プレイヤの人差し指をコアユニット70下面の凹部(例えば、操作ボタン72i付近)に添えたとき、コアユニット70の前面に設けられている撮像情報演算部74の光入射口がプレイヤの前方方向に露出する。なお、このようなコアユニット70に対する把持状態は、プレイヤの左手であっても同様に行えることは言うまでもない。   As shown in FIGS. 13 and 14, the core unit 70 has a size that can be gripped with one hand of an adult or a child as a whole. When the player's thumb is attached to the upper surface of the core unit 70 (for example, in the vicinity of the cross key 72a) and the player's index finger is applied to the concave portion (for example, in the vicinity of the operation button 72i) of the core unit 70, the front surface of the core unit 70 is obtained. The light incident port of the imaging information calculation unit 74 provided in is exposed in the forward direction of the player. Needless to say, such a gripping state with respect to the core unit 70 can be similarly performed even with the left hand of the player.

ここで、図15に示すように、マーカ8Lおよび8Rは、それぞれ視野角θ1を有している。また、撮像素子743は、視野角θ2を有している。例えば、マーカ8Lおよび8Rの視野角θ1は共に34°(半値角)であり、撮像素子743の視野角θ2は41°である。そして、撮像素子743の視野角θ2の中にマーカ8Lおよび8Rが共に存在し、マーカ8Lの視野角θ1の中でかつマーカ8Rの視野角θ1の中に撮像素子743が存在するとき、ゲーム装置本体5は、2つのマーカ8Lおよび8Rによる高輝度点に関する位置データを用いてコアユニット70の位置を判定する。   Here, as shown in FIG. 15, the markers 8L and 8R each have a viewing angle θ1. Further, the image sensor 743 has a viewing angle θ2. For example, the viewing angles θ1 of the markers 8L and 8R are both 34 ° (half-value angle), and the viewing angle θ2 of the image sensor 743 is 41 °. When the markers 8L and 8R are both present in the viewing angle θ2 of the image sensor 743, and the image sensor 743 is present in the viewing angle θ1 of the marker 8L and in the viewing angle θ1 of the marker 8R, the game device The main body 5 determines the position of the core unit 70 using the position data regarding the high luminance point by the two markers 8L and 8R.

一方、撮像素子743の視野角θ2の中に1つのマーカ8Lまたは8Rだけが存在するとき、またはマーカ8Lの視野角θ1およびマーカ8Rの視野角θ1の何れか一方の中に撮像素子743が存在するとき、2つのマーカ8Lおよび8Rの何れか一方だけによる高輝度点に関する位置データを用いてコアユニット70の位置を判定する。   On the other hand, when there is only one marker 8L or 8R in the viewing angle θ2 of the imaging device 743, or there is an imaging device 743 in either the viewing angle θ1 of the marker 8L or the viewing angle θ1 of the marker 8R. When this is done, the position of the core unit 70 is determined using the position data relating to the high luminance point by only one of the two markers 8L and 8R.

また、上述したようにコアユニット70に設けられた加速度センサ701からの出力(コア加速度データ)を用いることによって、コアユニット70の傾き、姿勢、または位置を決定することができる。つまり、プレイヤがコアユニット70を把持した手を上下左右等に動かすことによって、コアユニット70は、プレイヤの手の運動や向きに応じた操作入力手段として機能する。   Further, by using the output (core acceleration data) from the acceleration sensor 701 provided in the core unit 70 as described above, the inclination, posture, or position of the core unit 70 can be determined. That is, when the player moves the hand holding the core unit 70 up, down, left, and right, the core unit 70 functions as an operation input unit according to the movement and orientation of the player's hand.

次に、図16を参照して、プレイヤがサブユニット76を一方の手で把持した状態について説明する。なお、図16は、プレイヤがサブユニット76を左手で把持した状態をサブユニット76の右側面側から見た一例である。   Next, a state where the player holds the subunit 76 with one hand will be described with reference to FIG. FIG. 16 shows an example in which the player holds the subunit 76 with his left hand as viewed from the right side of the subunit 76.

図16に示すように、サブユニット76は、全体として大人や子供の片手で把持可能な大きさである。例えば、プレイヤの親指をサブユニット76の上面(例えば、スティック78a付近)に添え、プレイヤの人差し指をサブユニット76前面(例えば、操作ボタン78dおよび78e付近)に添え、プレイヤの中指、薬指、および小指をサブユニット76下面に添えるように、サブユニット76を把持することが可能である。なお、このようなサブユニット76に対する把持状態は、プレイヤの右手であっても同様に行えることは言うまでもない。このように、サブユニット76は、プレイヤが片手で把持した状態でスティック78aや操作ボタン78dおよび78e等の操作部78を容易に操作することができる。このように、サブユニット76の本体(ハウジング77)は、サブユニット76全体の側周をプレイヤが片手で握持可能な形状および大きさで形成される。   As shown in FIG. 16, the subunit 76 has a size that can be grasped with one hand of an adult or a child as a whole. For example, the player's thumb is attached to the upper surface of the subunit 76 (for example, near the stick 78a), the player's index finger is attached to the front surface of the subunit 76 (for example, near the operation buttons 78d and 78e), and the player's middle finger, ring finger, and little finger It is possible to hold the subunit 76 so that is attached to the lower surface of the subunit 76. Needless to say, such a gripping state with respect to the subunit 76 can be similarly performed even with the right hand of the player. In this way, the subunit 76 can easily operate the operation unit 78 such as the stick 78a and the operation buttons 78d and 78e while being held by the player with one hand. As described above, the main body (housing 77) of the subunit 76 is formed in a shape and size that allows the player to grip the side periphery of the entire subunit 76 with one hand.

また、上述したようにサブユニット76に設けられた加速度センサ761からの出力(サブ加速度データ)を用いることによって、サブユニット76の傾き、姿勢、または位置を決定することができる。つまり、プレイヤがサブユニット76を把持した手を上下左右等に動かすことによって、サブユニット76は、プレイヤの手の運動や向きに応じた操作入力手段として機能する。   Further, by using the output (sub acceleration data) from the acceleration sensor 761 provided in the subunit 76 as described above, the inclination, posture, or position of the subunit 76 can be determined. That is, when the player moves his / her hand holding the subunit 76 up / down / left / right, the subunit 76 functions as an operation input means corresponding to the movement and direction of the player's hand.

本発明を適用して実現するゲームの一例として、仮想ゲーム空間で行うサッカーゲームがある。以下、サッカーゲームを一例として、ゲームシステム1において行われるゲーム処理の詳細を説明する。なお、図17は、ゲーム装置本体5のメインメモリ33に記憶される主なデータを示す図である。   An example of a game realized by applying the present invention is a soccer game played in a virtual game space. Hereinafter, the details of the game process performed in the game system 1 will be described using a soccer game as an example. FIG. 17 is a diagram showing main data stored in the main memory 33 of the game apparatus body 5.

図17に示すように、メインメモリ33には、操作情報Da、コントローラ識別番号データDb、移動ベクトルデータDc、姿勢ベクトルデータDd、指示座標データDe、仮想空間位置座標データDf、指示対象選手データDg、位置データDh、および画像データDi等が記憶される。なお、後述するように、各コントローラ7は、監督モードまたは一時監督モードのときに、当該コントローラ7の座標入力により特定の選手キャラクタの動作を制御することができるが、当該特定の選手キャラクタのことを指示対象選手と呼ぶ。なお、メインメモリ33には、図17に示す情報に含まれるデータの他、ゲームに登場するオブジェクト等に関するデータや仮想ゲーム空間に関するデータ等、ゲーム処理に必要なデータが記憶される。これらのデータは、光ディスク4に記憶されるゲームプログラムをCPU30が実行することにより生成されるデータである。   As shown in FIG. 17, in the main memory 33, operation information Da, controller identification number data Db, movement vector data Dc, posture vector data Dd, instruction coordinate data De, virtual space position coordinate data Df, instruction target player data Dg , Position data Dh, image data Di, and the like are stored. As will be described later, each controller 7 can control the movement of a specific player character by inputting the coordinates of the controller 7 in the manager mode or the temporary manager mode. Is called the target player. In addition to the data included in the information shown in FIG. 17, the main memory 33 stores data necessary for the game process, such as data related to objects appearing in the game and data related to the virtual game space. These data are data generated when the CPU 30 executes a game program stored on the optical disc 4.

操作情報Daは、コントローラ7から送信データとして送信されてくる一連の操作情報であり、最新の操作情報に更新される。操作情報Daには、上述の処理結果データに相当する第1座標データDa1および第2座標データDa2が含まれる。第1座標データDa1は、撮像素子743が撮像した撮像画像に対して、2つのマーカ8Lおよび8Rのうちの一方の画像の位置(撮像画像内における位置)を表す座標のデータである。第2座標データDa2は、他方のマーカの画像の位置(撮像画像内における位置)を表す座標のデータである。例えば、マーカの画像の位置は、撮像画像におけるXY座標系によって表される。   The operation information Da is a series of operation information transmitted as transmission data from the controller 7, and is updated to the latest operation information. The operation information Da includes first coordinate data Da1 and second coordinate data Da2 corresponding to the processing result data described above. The first coordinate data Da1 is coordinate data representing the position (position in the captured image) of one of the two markers 8L and 8R with respect to the captured image captured by the image sensor 743. The second coordinate data Da2 is coordinate data representing the position of the image of the other marker (position in the captured image). For example, the position of the marker image is represented by an XY coordinate system in the captured image.

また、操作情報Daには、撮像画像から得られる処理結果データの一例の座標データ(第1座標データDa1および第2座標データDa2)の他、キーデータDa3および加速度データDa4等が含まれる。具体的には、キーデータDa3は、操作部72から得られるコアキーデータおよび操作部78から得られるサブキーデータである。また、加速度データDa4は、加速度センサ701から得られるコア加速度データおよび加速度センサ761から得られるサブ加速度データである。なお、ゲーム装置3に備える通信ユニット6は、コントローラ7から所定間隔例えば5msごとに送信される操作情報Daを受信し、通信ユニット6に備える図示しないバッファに蓄えられる。その後、ゲーム処理間隔である例えば1フレーム毎(1/60秒)に読み出され、その最新の情報がメインメモリ33に記憶される。また、操作情報Daには、最新の操作情報のみならず、必要に応じて、過去の所定時間分の操作情報が履歴として格納される。また、複数のコントローラ7によって、ゲーム装置本体5が操作される場合、各コントローラ7からそれぞれ送信された操作情報がコントローラ識別番号毎に対応付けられて、操作情報Daに格納される。   The operation information Da includes key data Da3, acceleration data Da4, and the like in addition to coordinate data (first coordinate data Da1 and second coordinate data Da2) as an example of processing result data obtained from the captured image. Specifically, the key data Da <b> 3 is core key data obtained from the operation unit 72 and subkey data obtained from the operation unit 78. The acceleration data Da4 is core acceleration data obtained from the acceleration sensor 701 and sub-acceleration data obtained from the acceleration sensor 761. The communication unit 6 provided in the game apparatus 3 receives operation information Da transmitted from the controller 7 at a predetermined interval, for example, every 5 ms, and is stored in a buffer (not shown) provided in the communication unit 6. Thereafter, the game processing interval is read, for example, every frame (1/60 seconds), and the latest information is stored in the main memory 33. In the operation information Da, not only the latest operation information but also operation information for a predetermined past time is stored as a history as necessary. Further, when the game apparatus body 5 is operated by the plurality of controllers 7, the operation information transmitted from each controller 7 is associated with each controller identification number and stored in the operation information Da.

コントローラ識別番号データDbは、後述する操作チームおよび操作モード別に操作情報を採用するコントローラ識別番号が記述される。例えば、コントローラ識別番号データDbは、チームAの選手モード用コントローラ識別番号Db1、チームAの監督モード用コントローラ識別番号Db2、チームBの選手モード用コントローラ識別番号Db3、およびチームBの監督モード用コントローラ識別番号Db4等が記述される。なお、コントローラ識別番号データDbは、コアユニット70内に記憶される識別番号データ(前述)が当該コアユニット70から送信されて記憶されたものである。また、コントローラ識別番号Dbは、常にすべてが設定されている必要はなく、プレイヤの希望がなかったものについては未設定を示す情報が設定される。また、未設定を示す情報が設定されたチーム・モードについては、コンピュータ制御するようにしてもかまわない。また、3以上のチームが存在するようなゲームであれば、そのチーム数に応じたコントローラ識別番号データDbが設定される。また、チームの概念が無いゲームであれば、選手モード用コントローラが少なくとも1つ設定されればよい。なお、1つのコントローラの識別番号データを、複数のコントローラ識別番号データDbに設定してもよい。この場合には、例えば、1つのコントローラの操作により、選手モードの処理と監督モードの処理とを実行できる。   The controller identification number data Db describes a controller identification number that employs operation information for each operation team and operation mode described later. For example, the controller identification number data Db includes team A player mode controller identification number Db1, team A manager mode controller identification number Db2, team B player mode controller identification number Db3, and team B manager mode controller identification number Db2. An identification number Db4 and the like are described. The controller identification number data Db is obtained by transmitting identification number data (described above) stored in the core unit 70 from the core unit 70 and storing it. The controller identification number Db does not always have to be set all the time, and information indicating that the controller identification number Db has not been set is set for those not desired by the player. In addition, the team mode in which information indicating non-setting is set may be controlled by a computer. If the game has three or more teams, controller identification number data Db corresponding to the number of teams is set. If the game has no team concept, at least one player mode controller may be set. Note that the identification number data of one controller may be set in a plurality of controller identification number data Db. In this case, for example, the player mode process and the manager mode process can be executed by operating one controller.

移動ベクトルデータDcは、仮想ゲーム空間に登場する各選手キャラクタやボールオブジェクトがそれぞれ仮想ゲーム空間内を移動する方向や速度を示す移動ベクトルデータである。例えば、移動ベクトルデータDcは、プレイヤキャラクタPCの移動ベクトルデータDc1、ノンプレイヤキャラクタNPCの移動ベクトルデータDc2、指示対象選手の移動ベクトルデータDc3、およびボールオブジェクトBの移動ベクトルデータDc4等が記述される。なお、本実施例では、仮想ゲーム空間は3次元空間である。しかしながら、本実施例には2次元空間のゲームにも適用可能な要素が含まれることは、当業者には容易に把握可能である。   The movement vector data Dc is movement vector data indicating the direction and speed in which each player character or ball object appearing in the virtual game space moves in the virtual game space. For example, the movement vector data Dc includes movement vector data Dc1 of the player character PC, movement vector data Dc2 of the non-player character NPC, movement vector data Dc3 of the instruction target player, movement vector data Dc4 of the ball object B, and the like. . In this embodiment, the virtual game space is a three-dimensional space. However, it can be easily understood by those skilled in the art that this embodiment includes elements that can also be applied to a game in a two-dimensional space.

姿勢ベクトルデータDdは、仮想ゲーム空間におけるプレイヤキャラクタPCの上体の姿勢を示すデータである。例えば、姿勢ベクトルデータDdは、プレイヤキャラクタ座標系において、プレイヤキャラクタPCの腰から頭に向かうベクトルデータ(姿勢ベクトルデータVc)が記述される。この姿勢ベクトルデータVcは、3次元ベクトルである。   The posture vector data Dd is data indicating the posture of the upper body of the player character PC in the virtual game space. For example, the posture vector data Dd describes vector data (posture vector data Vc) from the waist to the head of the player character PC in the player character coordinate system. This posture vector data Vc is a three-dimensional vector.

指示座標データDeは、第1座標データDa1および第2座標データDa2に基づいて得られるモニタ2の画面座標系に基づいた指示座標を示すデータである。例えば、指示座標は、第1座標データDa1から第2座標データDa2への方向を示す方向データ(例えば、第1座標データDa1の位置を始点とし第2座標データDa2の位置を終点とするベクトルデータ)や第1座標データDa1と第2座標データDa2との中点を示す中点座標データに基づいて算出される。ここで、2つのマーカ(マーカ8Lおよび8R)の画像を1つの対象画像としてみた場合、中点座標データは、対象画像の位置を示すことになる。仮想空間位置座標データDfは、上記指示座標に対応する仮想ゲーム空間の仮想空間位置を示す座標データである。仮想空間位置座標データDfは、指示座標データDe、仮想カメラのパラメータ、および仮想空間の構成データ(地形データやオブジェクト位置データ)に基づいて算出される。なお、複数のコントローラ7によって、ゲーム装置本体5が操作される場合、各コントローラ7からそれぞれ送信された第1座標データDa1および第2座標データDa2に基づいて算出された指示座標および仮想空間位置がそれぞれコントローラ識別番号毎に対応付けられて、指示座標データDeおよび仮想空間位置座標データDfに格納される。   The designated coordinate data De is data indicating designated coordinates based on the screen coordinate system of the monitor 2 obtained based on the first coordinate data Da1 and the second coordinate data Da2. For example, the designated coordinates are direction data indicating the direction from the first coordinate data Da1 to the second coordinate data Da2 (for example, vector data having the position of the first coordinate data Da1 as the start point and the position of the second coordinate data Da2 as the end point). ) Or the midpoint coordinate data indicating the midpoint between the first coordinate data Da1 and the second coordinate data Da2. Here, when the images of the two markers (markers 8L and 8R) are viewed as one target image, the midpoint coordinate data indicates the position of the target image. The virtual space position coordinate data Df is coordinate data indicating the virtual space position of the virtual game space corresponding to the indicated coordinates. The virtual space position coordinate data Df is calculated based on the designated coordinate data De, the parameters of the virtual camera, and the configuration data (terrain data and object position data) of the virtual space. When the game apparatus body 5 is operated by a plurality of controllers 7, the indicated coordinates and the virtual space position calculated based on the first coordinate data Da1 and the second coordinate data Da2 respectively transmitted from the controllers 7 are Each is associated with each controller identification number and stored in the designated coordinate data De and the virtual space position coordinate data Df.

指示対象選手データDgは、各コントローラ7の指示対象選手を示すデータである。例えば、指示対象選手データDgは、チームAの選手モード用コントローラ7の指示対象選手を示すデータDg1、チームAの監督モード用コントローラ7の指示対象選手を示すデータDg2、チームBの選手モード用コントローラ7の指示対象選手を示すデータDg3、およびチームBの監督モード用コントローラ7の指示対象選手を示すデータDg4等が記述される。   The instruction target player data Dg is data indicating an instruction target player of each controller 7. For example, the instruction target player data Dg includes data Dg1 indicating an instruction target player of the team A player mode controller 7, data Dg2 indicating an instruction target player of the team A manager mode controller 7, and a player mode controller of the team B 7 data Dg3 indicating the instruction target player 7 and data Dg4 indicating the instruction target player of the team B manager mode controller 7 are described.

位置データDhは、仮想ゲーム空間に登場するキャラクタやオブジェクトがそれぞれ配置される位置を示す仮想ゲーム空間における座標データである。画像データDiは、仮想ゲーム空間に登場するキャラクタやオブジェクトや背景を生成するための画像データである。   The position data Dh is coordinate data in the virtual game space that indicates the positions at which characters and objects appearing in the virtual game space are respectively arranged. The image data Di is image data for generating characters, objects, and backgrounds appearing in the virtual game space.

次に、図18〜図29を参照して、ゲーム装置本体5において行われるゲーム処理の詳細を説明する。なお、図18は、ゲーム装置本体5において実行されるゲーム処理の流れを示すフローチャートである。図19は、図18におけるステップ15のサブユニット移動処理の詳細な動作を示すサブルーチンである。図20は、図18におけるステップ16のパス処理の詳細な動作を示すサブルーチンである。図21は、図18におけるステップ17の第1シュート処理の詳細な動作を示すサブルーチンである。図22は、図18におけるステップ18の第2シュート処理の詳細な動作を示すサブルーチンである。図23は、図18におけるステップ19の一時監督モード処理の詳細な動作を示すサブルーチンである。図24は、図18におけるステップ20の監督モード処理の詳細な動作を示すサブルーチンである。図25は、モニタ2に表示されるゲーム画像の一例である。図26は、プレイヤキャラクタPCに設定される姿勢ベクトルVcを説明するための図である。図27は、パスの目標位置TPと領域AおよびBを説明するための図である。図28は、ボールオブジェクトBが移動する軌道の一例を示す図である。図29は、ノンプレイヤキャラクタNPCに設定される移動ベクトルVmnpcの一例を示す図である。なお、図18〜図24に示すフローチャートにおいては、ゲーム処理のうち、仮想ゲーム空間において、サッカーゲームが実行される処理について主に説明し、本願発明と直接関連しない他のゲーム処理については詳細な説明を省略する。また、図18〜図24では、CPU30が実行する各ステップを「S」と略称する。なお、図25に示される仮想ゲーム空間の座標軸は、左右方向(水平方向でありかつタッチラインが伸びる方向)がX方向であり、上下方向(垂直方向)がY方向であり、奥行き方向(水平方向でありかつゴールラインが伸びる方向)がZ方向として説明する。   Next, with reference to FIGS. 18 to 29, details of the game process performed in the game apparatus body 5 will be described. FIG. 18 is a flowchart showing a flow of game processing executed in the game apparatus body 5. FIG. 19 is a subroutine showing the detailed operation of the subunit movement process at step 15 in FIG. FIG. 20 is a subroutine showing the detailed operation of the pass process of step 16 in FIG. FIG. 21 is a subroutine showing the detailed operation of the first chute process in step 17 in FIG. FIG. 22 is a subroutine showing the detailed operation of the second chute process at step 18 in FIG. FIG. 23 is a subroutine showing the detailed operation of the temporary supervisory mode process in step 19 in FIG. FIG. 24 is a subroutine showing the detailed operation of the supervisor mode processing in step 20 in FIG. FIG. 25 is an example of a game image displayed on the monitor 2. FIG. 26 is a diagram for explaining the posture vector Vc set for the player character PC. FIG. 27 is a diagram for explaining the target position TP and the areas A and B of the path. FIG. 28 is a diagram illustrating an example of a trajectory along which the ball object B moves. FIG. 29 is a diagram showing an example of the movement vector Vmnpc set for the non-player character NPC. In the flowcharts shown in FIG. 18 to FIG. 24, the processing in which the soccer game is executed in the virtual game space in the virtual game space will be mainly described, and other game processing not directly related to the present invention will be described in detail. Description is omitted. In FIG. 18 to FIG. 24, each step executed by the CPU 30 is abbreviated as “S”. The coordinate axes of the virtual game space shown in FIG. 25 are the X direction in the left-right direction (the horizontal direction and the direction in which the touch line extends), the Y direction in the vertical direction (vertical direction), and the depth direction (horizontal). The direction is the direction in which the goal line extends) is described as the Z direction.

ゲーム装置本体5の電源が投入されると、ゲーム装置本体5のCPU30は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ33等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリ33に読み込まれ、CPU30によって当該ゲームプログラムの実行が開始される。図18〜図24に示すフローチャートは、以上の処理が完了した後に当該ゲームプログラムをCPU30が実行することにより行われるゲーム処理を示すフローチャートである。   When the power of the game apparatus body 5 is turned on, the CPU 30 of the game apparatus body 5 executes a startup program stored in a boot ROM (not shown), thereby initializing each unit such as the main memory 33. Then, the game program stored in the optical disc 4 is read into the main memory 33, and the CPU 30 starts executing the game program. The flowchart shown in FIGS. 18-24 is a flowchart which shows the game process performed when CPU30 runs the said game program after the above process is completed.

図18において、CPU30は、ゲーム処理の初期設定処理を行い(ステップ10)、処理を次のステップに進める。例えば、当該サッカーゲームは、選手キャラクタがチームAとチームBとに別れてゲームが進行し、プレイヤが何れか一方のチーム(チームXとする)の選手キャラクタを操作することが可能となっている。そして、プレイヤは、チームXの選手キャラクタを直接的に操作する選手モードと、チームXの選手キャラクタを総合的に統率する監督モードとによって、操作モードを選択することが可能である。なお、選手モードと監督モードとの両方を設けることは必須ではなく、選手モードのみでも良いし、監督モードのみでもよい。したがって、上記ステップ10において、CPU30は、各チームおよび各モードで操作するコントローラ7をそれぞれ区別して管理するために、チームAの選手モード用コントローラ識別番号、チームAの監督モード用コントローラ識別番号、チームBの選手モード用コントローラ識別番号、およびチームBの監督モード用コントローラ識別番号を設定して、コントローラ識別番号データDbに記述する。   In FIG. 18, the CPU 30 performs an initial setting process for the game process (step 10), and advances the process to the next step. For example, in the soccer game, the player character is divided into team A and team B, and the game progresses, so that the player can operate the player character of any one team (referred to as team X). . The player can select an operation mode by a player mode in which the player character of team X is directly operated and a manager mode in which the player character of team X is comprehensively commanded. Note that it is not essential to provide both the player mode and the manager mode, and only the player mode or the manager mode may be used. Accordingly, in step 10 above, the CPU 30 distinguishes and manages each team and the controller 7 operated in each mode, so that the team A player mode controller identification number, the team A manager mode controller identification number, The B player mode controller identification number and the team B manager mode controller identification number are set and described in the controller identification number data Db.

具体的には、使用するコントローラ7(複数の場合はそれぞれ)の操作により、モニタ2上に表示されるメニュ画面においてチーム(AまたはB)およびモード(選手または監督)を選択し、当該選択をしたコントローラ7内に記憶される識別番号データが、対応するコントローラ識別番号Dbに設定される。例えば、あるコントローラ7の操作により、チームAを選択し、選手モードを選択した場合、そのコントローラ7の識別番号が、チームAの選手モード用コントローラ識別番号Db1に設定される。また、上記ステップ10においては、CPU30は、サッカーゲームを開始する前の初期設定(ゲームフィールドの設定、各選手キャラクタ、ボールオブジェクトの初期配置等)を行って、メインメモリ33に記述された各データを更新する。   More specifically, a team (A or B) and a mode (player or manager) are selected on the menu screen displayed on the monitor 2 by operating the controller 7 to be used (in the case of a plurality of each), and the selection is performed. The identification number data stored in the controller 7 is set to the corresponding controller identification number Db. For example, when a team A is selected by operating a certain controller 7 and a player mode is selected, the identification number of the controller 7 is set to the player identification number Db1 of the team A. In step 10, the CPU 30 performs initial settings (game field setting, initial arrangement of each player character, ball object, etc.) before starting the soccer game, and each data described in the main memory 33. Update.

次に、CPU30は、ゲームを開始するか否かを判断する(ステップ11)。ゲームを開始する条件としては、例えば、ゲーム開始となる条件が満たされたことや、プレイヤがゲームを開始する操作を行ったこと等がある。CPU30は、ゲームを開始しない場合に上記ステップ11の処理を繰り返し、ゲームを開始する場合に次のステップ12に処理を進める。   Next, the CPU 30 determines whether or not to start the game (step 11). The conditions for starting the game include, for example, that a condition for starting the game is satisfied, and that the player has performed an operation for starting the game. The CPU 30 repeats the process of step 11 when the game is not started, and advances the process to the next step 12 when the game is started.

ステップ12〜ステップ24の各処理は、上述したゲームの処理単位(例えば、1/60秒)毎に繰り返される処理であり、チームAおよびチームBそれぞれ(チームX)について行われる処理である。以下の説明では、チームAおよびチームBそれぞれについて行う処理を、チームXについて行う処理として記載する。   Each process of step 12 to step 24 is a process that is repeated for each processing unit (for example, 1/60 seconds) of the above-described game, and is a process performed for each of team A and team B (team X). In the following description, processing performed for each of team A and team B is described as processing performed for team X.

ステップ12において、CPU30は、コントローラ7(複数の場合はそれぞれ)から操作情報を受信して、各コントローラ識別番号別に操作情報Daに格納する。次に、CPU30は、コントローラ識別番号データDbを参照して、チームXについて選手モード用のコントローラ識別番号Dbが設定されているか否かを判断する(ステップ13)。そして、CPU30は、チームXについて選手モード用のコントローラ識別番号Dbが設定されている場合、次のステップ14に処理を進める。一方、CPU30は、チームXについて選手モード用のコントローラ識別番号Dbが設定されていない場合、次のステップ25に処理を進める。   In step 12, the CPU 30 receives the operation information from the controller 7 (in the case of a plurality of each), and stores it in the operation information Da for each controller identification number. Next, the CPU 30 refers to the controller identification number data Db to determine whether or not the player mode controller identification number Db is set for the team X (step 13). And CPU30 advances a process to the following step 14, when the controller identification number Db for player modes is set about the team X. FIG. On the other hand, when the player mode controller identification number Db is not set for the team X, the CPU 30 proceeds to the next step 25.

ステップ14において、CPU30は、チームXの各ノンプレイヤキャラクタNPCの移動ベクトルVmnpcを所定の自動移動アルゴリズムを用いて設定して、移動ベクトルデータDcに格納する。次に、CPU30は、サブユニット移動処理(ステップ15)、パス処理(ステップ16)、第1シュート処理(ステップ17)、第2シュート処理(ステップ18)、一時監督モード処理(ステップ19)、および監督モード処理(ステップ20)を経て、処理をステップ21に進める。なお、ステップ15〜ステップ20で行う詳細な処理については、後述する。   In step 14, the CPU 30 sets the movement vector Vmnpc of each non-player character NPC of the team X using a predetermined automatic movement algorithm, and stores it in the movement vector data Dc. Next, the CPU 30 performs subunit movement processing (step 15), pass processing (step 16), first shoot processing (step 17), second shoot processing (step 18), temporary supervision mode processing (step 19), and After the supervisor mode process (step 20), the process proceeds to step 21. Detailed processing performed in steps 15 to 20 will be described later.

例えば、図25に示すように、プレイヤがチームAに所属する選手キャラクタPA(白抜き図形で示す)を選手モードで操作し、チームBに所属するコンピュータ制御の選手キャラクタPB(塗りつぶし図形で示す)とサッカーゲームで対戦する場合を想定する。この場合、プレイヤは、選手キャラクタPAの何れか(図25においては、選手キャラクタPA1)をプレイヤキャラクタPCとして直接的に操作し、他の選手キャラクタPAがノンプレイヤキャラクタNPCとなる。また、選手キャラクタPBは、全てノンプレイヤキャラクタNPCとなる。そして、選手キャラクタの何れかがボールオブジェクトBをキープしているチームが攻撃側のチームであり(図25においては、プレイヤキャラクタPA1がボールオブジェクトBをキープしているのでチームAが攻撃側のチーム)と、他方のチームが守備側のチームである(図25においては、チームB)。ここで、CPU30は、上記ステップ14において、チームXが守備側の場合(チームXがチームBの場合)、ボールオブジェクトBをキープしている選手キャラクタ(プレイヤキャラクタPA1)の位置データを基準とする所定範囲に配置されたチームX(チームB)の選手キャラクタ(図25においては、選手キャラクタPB1)の移動ベクトルを、ボールオブジェクトBをキープしている選手キャラクタの上体の姿勢ベクトル(後述)に応じて設定する。具体的には、本実施例では、CPU30は、上記所定範囲に配置された選手キャラクタの移動ベクトルを、「ボールオブジェクトBをキープしている選手キャラクタ(PA1)の姿勢ベクトルを仮想水平面に投影したベクトルA(X成分が姿勢ベクトルのX成分に等しく、Y成分が0で、Z成分が姿勢ベクトルのZ成分に等しいベクトル)」に基づいた方向になるように設定する。なお、前述の自動移動アルゴリズムによって設定された当該選手キャラクタの移動ベクトルを、当該ベクトルAで補正(典型的には加算)してもよい。   For example, as shown in FIG. 25, a player operates a player character PA belonging to team A (indicated by a white figure) in the player mode, and a computer-controlled player character PB belonging to team B (indicated by a solid figure). And a soccer game are assumed. In this case, the player directly operates one of the player characters PA (player character PA1 in FIG. 25) as the player character PC, and the other player character PA becomes the non-player character NPC. Further, the player characters PB are all non-player characters NPC. The team that one of the player characters keeps the ball object B is the attacking team (in FIG. 25, the player character PA1 keeps the ball object B, so the team A is the attacking team. ) And the other team is the defensive team (Team B in FIG. 25). Here, when the team X is the defensive side (when the team X is the team B) in the above step 14, the CPU 30 uses the position data of the player character (player character PA1) keeping the ball object B as a reference. The movement vector of the player character (player character PB1 in FIG. 25) of the team X (team B) arranged in the predetermined range is used as the posture vector (described later) of the player character holding the ball object B. Set accordingly. Specifically, in this embodiment, the CPU 30 projects the movement vector of the player character arranged in the predetermined range as “the posture vector of the player character (PA1) keeping the ball object B onto the virtual horizontal plane. The vector A (the X component is equal to the X component of the posture vector, the Y component is 0, and the Z component is equal to the Z component of the posture vector) ”is set. Note that the movement vector of the player character set by the automatic movement algorithm described above may be corrected (typically added) by the vector A.

一方、ステップ13においてNoの場合(すなわち、チームXの選手モード用のコントローラ7が未設定の場合)、ステップ25において、CPU30は、チームXの全選手キャラクタの移動ベクトルVmnpcを所定の自動移動アルゴリズムを用いて設定して、移動ベクトルデータDcに格納する(つまり、チームXに選手モード用のコントローラ7が設定されていないため、チームXの全選手キャラクタがノンプレイヤキャラクタNPCとなる)。なお、上記ステップ25においても、上記ステップ14と同様に上記所定範囲に配置された選手キャラクタの移動ベクトルの上記姿勢ベクトルに応じた設定または補正が行われる。次に、CPU30は、監督モード処理(ステップ20)を経て、処理をステップ21に進める。 On the other hand, step if the flop 1 3 No (i.e., if the controller 7 for players mode team X is not set), at step 25, CPU 30 may all competitors automatic movement vector Vmnpc predetermined character team X It is set using a movement algorithm and stored in movement vector data Dc (that is, since no player mode controller 7 is set for team X, all player characters of team X become non-player characters NPC). In step 25, as in step 14, the setting or correction of the movement vector of the player character arranged in the predetermined range is performed according to the posture vector. Next, the CPU 30 advances the process to step 21 through the supervisory mode process (step 20).

ステップ21において、CPU30は、移動ベクトルデータDcに記述された各移動ベクトルデータに基づいて、各キャラクタやオブジェクトを仮想ゲーム空間内で移動させ、ゲーム画像をモニタ2に表示する。次に、CPU30は、移動ベクトルデータDcに記述された各移動ベクトルデータを、それぞれ所定量減衰させて移動ベクトルデータDcを更新する(ステップ22)。そして、CPU30は、ゴール処理、ファウル処理、プレイヤキャラクタPCの切替処理等、サッカーゲームで行われる他の処理を行って(ステップ23)、処理を次のステップに進める。   In step 21, the CPU 30 moves each character or object in the virtual game space based on each movement vector data described in the movement vector data Dc, and displays a game image on the monitor 2. Next, the CPU 30 updates the movement vector data Dc by attenuating each movement vector data described in the movement vector data Dc by a predetermined amount (step 22). Then, the CPU 30 performs other processes performed in the soccer game such as a goal process, a foul process, and a player character PC switching process (step 23), and advances the process to the next step.

次に、CPU30は、ゲームを終了するか否かを判断する(ステップ24)。ゲームを終了する条件としては、例えば、ゲームオーバーとなる条件が満たされたことや、プレイヤがゲームを終了する操作を行ったこと等がある。CPU30は、ゲームを終了しない場合に上記ステップ12に戻って処理を繰り返し、ゲームを終了する場合に当該フローチャートによる処理を終了する。   Next, the CPU 30 determines whether or not to end the game (step 24). The conditions for ending the game include, for example, that a condition for game over is satisfied, and that the player has performed an operation for ending the game. The CPU 30 returns to step 12 when the game is not finished and repeats the process, and when the game is finished, the process according to the flowchart is finished.

次に、図19を参照して、上記ステップ15におけるサブユニット移動処理について、詳細な動作を説明する。   Next, with reference to FIG. 19, the detailed operation of the subunit movement process in step 15 will be described.

図19において、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれる最新のサブキーデータを参照し(ステップ41)、処理を次のステップに進める。ここで、上記ステップ12において、操作情報Daは、各コントローラ識別番号別にそれぞれのコントローラ7から送信された操作情報が格納されており、コントローラIDデータDbには、チームXの選手モード用コントローラ識別番号が記述されている。したがって、CPU30は、コントローラIDデータDbに記述されたチームXの選手モード用コントローラ識別番号に基づいて、操作情報Daから選手モード用サブユニットから送信された操作情報を抽出することが可能となる。   In FIG. 19, the CPU 30 refers to the latest subkey data included in the operation information transmitted from the player mode subunit of the team X from the operation information Da (step 41), and advances the processing to the next step. Here, in step 12 above, the operation information Da stores the operation information transmitted from each controller 7 for each controller identification number, and the controller ID data Db contains the player X controller identification number for the player mode. Is described. Therefore, the CPU 30 can extract the operation information transmitted from the player mode subunit from the operation information Da, based on the player mode controller identification number of the team X described in the controller ID data Db.

次に、CPU30は、上記ステップ41で参照した選手モード用サブユニットのサブキーデータに基づいて、プレイヤから方向指示入力があるか否かを判断する(ステップ42)。上述したように、サブユニット76は、スティック78aが設けられており、プレイヤが傾倒可能なスティック78aを倒すことによって方向指示入力が可能である。そして、CPU30は、プレイヤから方向指示入力がある場合、次のステップ43に処理を進める。一方、CPU30は、プレイヤから方向指示入力がない場合、次のステップ47に処理を進める。   Next, the CPU 30 determines whether or not there is a direction instruction input from the player based on the sub key data of the player mode subunit referred to in the step 41 (step 42). As described above, the subunit 76 is provided with the stick 78a, and a direction instruction can be input by tilting the stick 78a that can be tilted by the player. Then, when there is a direction instruction input from the player, the CPU 30 proceeds to the next step 43. On the other hand, if there is no direction instruction input from the player, the CPU 30 proceeds to the next step 47.

ステップ43において、CPU30は、チームXの選手モード用サブユニット76からの方向指示入力に基づいて、チームXのプレイヤキャラクタPCの移動ベクトルVmpcを算出して、移動ベクトルデータDcを更新し、処理を次のステップに進める。例えば、図26に示すように、仮想ゲーム空間におけるプレイヤキャラクタPCの移動方向および移動速度を示すデータとして、移動ベクトルVmpcが設定される。上記ステップ43において、CPU30は、移動ベクトルデータDcに格納されているプレイヤキャラクタPCの現在の移動ベクトルVmpcを基準として、スティック78aの傾倒方向に応じて決定される仮想ゲーム空間における方向で、かつスティック78aの傾倒角度に応じた大きさの新たな移動ベクトルVmpcを算出する。この処理によって、プレイヤが操作するチームXのプレイヤキャラクタPCは、当該プレイヤが所持するサブユニット76のスティック78aを操作することによって、仮想ゲーム空間における移動方向および移動速度が制御される。   In step 43, the CPU 30 calculates the movement vector Vmpc of the player character PC of the team X based on the direction instruction input from the player mode subunit 76 of the team X, updates the movement vector data Dc, and performs processing. Proceed to the next step. For example, as shown in FIG. 26, a movement vector Vmpc is set as data indicating the moving direction and moving speed of the player character PC in the virtual game space. In step 43 described above, the CPU 30 determines the direction in the virtual game space determined in accordance with the tilt direction of the stick 78a with respect to the current movement vector Vmpc of the player character PC stored in the movement vector data Dc, and the stick. A new movement vector Vmpc having a magnitude corresponding to the tilt angle 78a is calculated. By this process, the player character PC of the team X operated by the player controls the moving direction and moving speed in the virtual game space by operating the stick 78a of the subunit 76 possessed by the player.

次に、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれる最新のサブ加速度データを参照する(ステップ44)。そして、CPU30は、サブ加速度データが示すZ軸正方向(図9参照)の加速度が所定値以上であるか否かを判断する(ステップ45)。そして、CPU30は、Z軸正方向の加速度が所定値以上である場合、前述のようにステップ43で決定された、チームXにおけるプレイヤキャラクタPCの移動ベクトルVmpcの大きさを所定アルゴリズムにより増加させて(例えば、当該Z軸正方向の加速度の大きさに応じて増加させて、または、所定値だけ増加させて、または、n倍(nは1より大きい数値)して)、プレイヤキャラクタPCの移動ベクトルデータDcを更新し(ステップ46)、次のステップ47に処理を進める。このステップ46の処理によって、プレイヤが操作するプレイヤキャラクタPCの仮想ゲーム空間における移動速度は、プレイヤがサブユニット76を前方に傾けることによって(すなわち、Z軸正方向がZ軸負方向よりも低い位置を指す方向となるようにすることによって)加速される。一方、CPU30は、Z軸方向の加速度の大きさが所定値未満である場合、そのまま次のステップ47に処理を進める。なお、ステップ45において、Z軸負方向の加速度が所定値(マイナス値)よりも小さいか否かを判断し、当該判断がYesのときには、チームXにおけるプレイヤキャラクタPCの移動ベクトルVmpcの大きさを所定アルゴリズムにより減少させて(例えば、当該Z軸負方向の加速度の大きさに応じて減少させて、または、所定値だけ減少させて、または、m倍(mは1より小さい数値)して)、プレイヤキャラクタPCの移動ベクトルデータDcを更新するようにしてもよい。   Next, the CPU 30 refers to the latest sub acceleration data included in the operation information transmitted from the player mode subunit of the team X from the operation information Da (step 44). Then, the CPU 30 determines whether or not the acceleration in the positive Z-axis direction (see FIG. 9) indicated by the sub acceleration data is equal to or greater than a predetermined value (step 45). When the acceleration in the positive direction of the Z-axis is equal to or greater than a predetermined value, the CPU 30 increases the magnitude of the movement vector Vmpc of the player character PC in the team X determined in step 43 as described above using a predetermined algorithm. (For example, the player character PC is moved in accordance with the magnitude of acceleration in the positive direction of the Z axis, increased by a predetermined value, or multiplied by n (n is a value larger than 1)). The vector data Dc is updated (step 46), and the process proceeds to the next step 47. By the processing of step 46, the moving speed of the player character PC operated by the player in the virtual game space is determined by the player tilting the subunit 76 forward (that is, the Z-axis positive direction is lower than the Z-axis negative direction). (By making the direction point to). On the other hand, if the magnitude of acceleration in the Z-axis direction is less than the predetermined value, the CPU 30 proceeds to the next step 47 as it is. In step 45, it is determined whether or not the acceleration in the negative Z-axis direction is smaller than a predetermined value (minus value). If the determination is Yes, the magnitude of the movement vector Vmpc of the player character PC in the team X is determined. Decreasing by a predetermined algorithm (for example, decreasing according to the magnitude of the Z-axis negative direction, decreasing by a predetermined value, or m times (m is a value smaller than 1)) The movement vector data Dc of the player character PC may be updated.

ステップ47において、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれる最新のサブ加速度データを参照する。そして、CPU30は、サブ加速度データに応じて、チームXにおけるプレイヤキャラクタPCの姿勢ベクトルVcを算出して、姿勢ベクトルデータDdを更新し、処理を次のステップに進める。   In step 47, the CPU 30 refers to the latest sub acceleration data included in the operation information transmitted from the player mode subunit of the team X from the operation information Da. Then, the CPU 30 calculates the posture vector Vc of the player character PC in the team X according to the sub acceleration data, updates the posture vector data Dd, and advances the processing to the next step.

例えば、図26に示すように、仮想ゲーム空間におけるプレイヤキャラクタPCの姿勢を示すデータとして、姿勢ベクトルVcが設定される。ここで、姿勢ベクトルVcは、プレイヤキャラクタ座標系に基づいて設定される。プレイヤキャラクタ座標系は、仮想ゲーム空間におけるプレイヤキャラクタPCの正面方向をZp軸方向とし(典型的には、プレイヤキャラクタPCの移動ベクトルVmpcの方向をZp軸方向とする。または、プレイヤキャラクタPCの移動方向ベクトルとプレイヤキャラクタPCの向きベクトル(前方ベクトル)とを独立して制御する場合には、プレイヤキャラクタPCの向きベクトルの方向を、Zp軸方向とが一致するようにしてもよい)、プレイヤキャラクタPCの前方方向をZp軸正方向とする。また、仮想ゲーム空間におけるプレイヤキャラクタPCの左右方向をXp軸方向とし、プレイヤキャラクタPCから見て右方向をXp軸正方向とする。また、仮想ゲーム空間におけるプレイヤキャラクタPCの垂直方向をYp軸方向とし、上方向をYp軸正方向とする。姿勢ベクトルVcは、プレイヤキャラクタPCの腰部から頭部に向かうベクトルデータとして設定されている。姿勢ベクトルVcは、典型的にはプレイヤキャラクタ座標系におけるベクトルデータである。   For example, as shown in FIG. 26, a posture vector Vc is set as data indicating the posture of the player character PC in the virtual game space. Here, the posture vector Vc is set based on the player character coordinate system. In the player character coordinate system, the front direction of the player character PC in the virtual game space is set as the Zp-axis direction (typically, the direction of the movement vector Vmpc of the player character PC is set as the Zp-axis direction. When the direction vector and the direction vector (forward vector) of the player character PC are controlled independently, the direction of the direction vector of the player character PC may coincide with the Zp-axis direction). The forward direction of the PC is the Zp-axis positive direction. Further, the left-right direction of the player character PC in the virtual game space is defined as the Xp-axis direction, and the right direction viewed from the player character PC is defined as the Xp-axis positive direction. Further, the vertical direction of the player character PC in the virtual game space is defined as the Yp-axis direction, and the upward direction is defined as the Yp-axis positive direction. The posture vector Vc is set as vector data from the waist of the player character PC toward the head. The posture vector Vc is typically vector data in the player character coordinate system.

上記ステップ48において、CPU30は、サブ加速度データが示すX軸方向(図9参照)の加速度をプレイヤキャラクタ座標系のXp軸方向に対応付け、サブ加速度データが示すY軸方向の加速度をプレイヤキャラクタ座標系のYp軸方向に対応付け、サブ加速度データが示すZ軸方向の加速度をプレイヤキャラクタ座標系のZp軸方向に対応付けて、姿勢ベクトルVcを算出する。   In step 48, the CPU 30 associates the acceleration in the X-axis direction (see FIG. 9) indicated by the sub-acceleration data with the Xp-axis direction of the player character coordinate system, and sets the acceleration in the Y-axis direction indicated by the sub-acceleration data as the player character coordinates. The posture vector Vc is calculated by associating with the Yp-axis direction of the system and associating the acceleration in the Z-axis direction indicated by the sub acceleration data with the Zp-axis direction of the player character coordinate system.

例えば、上記ステップ48では、一例としてサブユニット76の傾きに応じて、プレイヤキャラクタPCの姿勢が制御される。この場合、具体的には、サブ加速度データが示すX軸方向の加速度の値に応じて(典型的には、比例して)、プレイヤキャラクタ座標系における姿勢ベクトルデータのXp軸方向の値を決定し、サブ加速度データが示すY軸方向の加速度の正負を反転した値に応じて(典型的には、比例して)、プレイヤキャラクタ座標系における姿勢ベクトルデータのYp軸方向の値を決定し、サブ加速度データが示すZ軸方向の加速度の値に応じて(典型的には、比例して)、プレイヤキャラクタ座標系における姿勢ベクトルデータのZp軸方向の値を決定する(それぞれの比例定数は、共通とするのが典型的であるがこれに限らない)。より具体的には、例えば、サブ加速度データが示すX軸方向の加速度の値:Y軸方向の加速度の値:Z軸方向の加速度の値=プレイヤキャラクタ座標系における姿勢ベクトルデータのXp軸方向の値:姿勢ベクトルデータのYp軸方向の値:姿勢ベクトルデータのZp軸方向の値となるように、姿勢ベクトルデータを決定する。または、サブ加速度データが示すX軸方向の加速度の値に応じて、プレイヤキャラクタ座標系における姿勢ベクトルデータのXp軸方向の値を決定し、サブ加速度データが示すZ軸方向の加速度の値に応じて、プレイヤキャラクタ座標系における姿勢ベクトルデータのZp軸方向の値を決定するようにし、プレイヤキャラクタ座標系における姿勢ベクトルデータのYp軸方向の値は一定としてもよい。   For example, in step 48 described above, the posture of the player character PC is controlled according to the inclination of the subunit 76 as an example. In this case, specifically, the value in the Xp-axis direction of the posture vector data in the player character coordinate system is determined according to the acceleration value in the X-axis direction indicated by the sub acceleration data (typically in proportion). Then, according to the value obtained by inverting the sign of the acceleration in the Y-axis direction indicated by the sub acceleration data (typically proportionally), the value in the Yp-axis direction of the posture vector data in the player character coordinate system is determined, In accordance with the acceleration value in the Z-axis direction indicated by the sub-acceleration data (typically in proportion), the value in the Zp-axis direction of the posture vector data in the player character coordinate system is determined (each proportional constant is It ’s typically common but not limited to this.) More specifically, for example, the acceleration value in the X-axis direction indicated by the sub-acceleration data: the acceleration value in the Y-axis direction: the acceleration value in the Z-axis direction = the Xp-axis direction of the posture vector data in the player character coordinate system Value: Attitude vector data is determined so that the value in the Yp-axis direction of attitude vector data: The value in the Zp-axis direction of attitude vector data. Alternatively, the Xp-axis direction value of the posture vector data in the player character coordinate system is determined according to the X-axis direction acceleration value indicated by the sub-acceleration data, and the Z-axis direction acceleration value indicated by the sub-acceleration data is determined. Thus, the value in the Zp-axis direction of the posture vector data in the player character coordinate system may be determined, and the value in the Yp-axis direction of the posture vector data in the player character coordinate system may be constant.

例えば、上記ステップ48では、一例としてサブユニット76の動き(平行移動)に応じて、プレイヤキャラクタPCの姿勢が制御される。例えば、プレイヤがサブユニット76を右方向に動かした場合、サブユニット76にX軸正方向の加速度が生じる(プレイヤがサブユニット76を右方向に動かした場合に、当該動きの当初に出力されるX軸正方向の加速度を検出してもよいし、当該動きを止めるときに出力されるX軸負方向の加速度を検出してもよい)。そして、サブユニット76に設けられた加速度センサ761が上記X軸正方向の加速度を検出し、サブユニット76から当該加速度を示すサブ加速度データがゲーム装置本体5へ送信される。一方、CPU30は、受信したサブ加速度データが示す上記X軸正方向の加速度に応じて、当該加速度の大きさでXp軸正方向のベクトルを姿勢ベクトルVcに足して、新たな姿勢ベクトルVcを算出する。そして、プレイヤキャラクタPCの上体は、新たに算出された姿勢ベクトルVcに応じてXp軸正方向に傾くことになる。そして、プレイヤがサブユニット76を前方向に動かした場合、サブユニット76にZ軸正方向の加速度が生じる。そして、サブユニット76に設けられた加速度センサ761が、上記Z軸正方向の加速度を検出し、サブユニット76から当該加速度を示すサブ加速度データがゲーム装置本体5へ送信される。一方、CPU30は、受信したサブ加速度データが示す上記Z軸正方向の加速度に応じて、当該加速度の大きさでZp軸正方向のベクトルを姿勢ベクトルVcに足して、新たな姿勢ベクトルVcを算出する。そして、プレイヤキャラクタPCの上体は、新たに算出された姿勢ベクトルVcに応じてZp軸正方向に傾くことになる。このステップ48の処理によって、プレイヤが操作するプレイヤキャラクタPCの仮想ゲーム空間における姿勢は、プレイヤがサブユニット76全体を動かす動作に応じて変化する。   For example, in step 48 described above, the posture of the player character PC is controlled according to the movement (parallel movement) of the subunit 76 as an example. For example, when the player moves the subunit 76 in the right direction, acceleration in the X-axis positive direction is generated in the subunit 76 (when the player moves the subunit 76 in the right direction, this is output at the beginning of the movement. The acceleration in the positive X-axis direction may be detected, or the acceleration in the negative X-axis direction that is output when the movement is stopped may be detected. Then, the acceleration sensor 761 provided in the subunit 76 detects the acceleration in the positive direction of the X axis, and the subunit 76 transmits sub acceleration data indicating the acceleration to the game apparatus body 5. On the other hand, the CPU 30 calculates a new posture vector Vc by adding the Xp-axis positive direction vector to the posture vector Vc with the magnitude of the acceleration according to the acceleration in the X-axis positive direction indicated by the received sub acceleration data. To do. Then, the upper body of the player character PC is inclined in the positive direction of the Xp axis according to the newly calculated posture vector Vc. When the player moves the subunit 76 in the forward direction, acceleration in the positive direction of the Z axis is generated in the subunit 76. Then, the acceleration sensor 761 provided in the subunit 76 detects the acceleration in the Z-axis positive direction, and the subunit 76 transmits the sub-acceleration data indicating the acceleration to the game apparatus body 5. On the other hand, the CPU 30 calculates a new posture vector Vc by adding the Zp-axis positive direction vector to the posture vector Vc with the magnitude of the acceleration according to the acceleration in the Z-axis positive direction indicated by the received sub acceleration data. To do. Then, the upper body of the player character PC is inclined in the positive direction of the Zp axis according to the newly calculated posture vector Vc. By the processing in step 48, the posture of the player character PC operated by the player in the virtual game space changes according to the movement of the player moving the entire subunit 76.

ここで、上記ステップ14およびステップ25において、ボールオブジェクトBをキープしているプレイヤキャラクタPCの所定範囲に配置された相手チームの選手キャラクタ(例えば、図25に示す選手キャラクタPB1)の移動ベクトルは、プレイヤキャラクタPCの姿勢ベクトルVcに応じて補正される。具体的には、姿勢ベクトルVcを仮想水平面に投影したベクトルを、上記相手チームの選手キャラクタの移動ベクトルに加えることによって補正されるため、当該選手キャラクタが移動する方向は、仮想ゲーム空間の垂直方向に対して姿勢ベクトルVcが傾く方向へ変化する。つまり、プレイヤがサブユニット76全体を動かす動作によって変化したプレイヤキャラクタPCの姿勢に応じて相手チームの選手キャラクタが移動することになり、いわゆるサッカーゲームでドリブル中のフェイントに相手選手がつられるような動作が表現される。   Here, in step 14 and step 25, the movement vector of the player character of the opponent team (for example, the player character PB1 shown in FIG. 25) arranged in the predetermined range of the player character PC that keeps the ball object B is The correction is made according to the posture vector Vc of the player character PC. Specifically, since the vector obtained by projecting the posture vector Vc onto the virtual horizontal plane is corrected by adding it to the movement vector of the player character of the opponent team, the moving direction of the player character is the vertical direction of the virtual game space. The posture vector Vc changes in the direction in which it tilts. That is, the player character of the opponent team moves according to the posture of the player character PC changed by the action of the player moving the entire subunit 76, and the opponent player is drawn to the faint that is dribbling in a so-called soccer game. Behavior is expressed.

図19に戻り、上記ステップ48の処理の後、CPU30は、チームXに所属する何れかの選手キャラクタがボールオブジェクトBを保持しているか否かを判断する(ステップ49)。そして、CPU30は、チームXに所属する何れかの選手キャラクタがボールオブジェクトBを保持している場合(すなわち、チームXが攻撃側の場合)、次のステップ50に処理を進める。一方、CPU30は、チームXに所属する選手キャラクタがボールオブジェクトBを保持していない場合、次の上記ステップ19に処理を進める。   Returning to FIG. 19, after the processing of step 48, the CPU 30 determines whether any player character belonging to the team X holds the ball object B (step 49). Then, when any player character belonging to the team X holds the ball object B (that is, when the team X is the attacking side), the CPU 30 proceeds to the next step 50. On the other hand, when the player character belonging to the team X does not hold the ball object B, the CPU 30 proceeds to the next step 19.

ステップ50において、CPU30は、上記ステップ47で参照した最新のサブ加速度データが示すX軸方向の加速度の大きさ(絶対値)が所定加速度A1以上(例えば、0.5G以上としてよいが、任意の値でよい)であるか否かを判断する。そして、CPU30は、X軸方向の加速度の大きさが当該所定加速度A1以上である場合、次のステップ51に処理を進める。一方、CPU30は、X軸方向の加速度の大きさが当該所定加速度A1未満である場合、当該サブルーチンによる処理を終了して、上記ステップ16の処理へ進める。   In step 50, the CPU 30 may set the magnitude (absolute value) of acceleration in the X-axis direction indicated by the latest sub-acceleration data referred to in step 47 to a predetermined acceleration A1 or more (for example, 0.5 G or more. Whether or not the value is acceptable). If the magnitude of the acceleration in the X-axis direction is equal to or greater than the predetermined acceleration A1, the CPU 30 advances the process to the next step 51. On the other hand, when the magnitude of the acceleration in the X-axis direction is less than the predetermined acceleration A1, the CPU 30 ends the process by the subroutine and proceeds to the process of step 16 above.

ステップ51において、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれるサブ加速度データの履歴を参照し、サブ加速度データの履歴が示すX軸方向の加速度の方向が直近の所定時間内に所定加速度A1以上の大きさでn回(nは、1以上の整数)反転しているか否かを判断する。例えば、サブ加速度データの履歴を参照して、「直近の過去所定時間内に、最新のサブ加速度データ(ステップ50において加速度A1以上と判定されたデータ)が示す加速度とは正負が反対でかつ絶対値が加速度A1以上のデータが存在する」か否かを判断する(n=1の場合)。または、「直近の過去所定時間内に、最新のサブ加速度データが示す加速度とは正負が反対でかつ絶対値が加速度A1以上のデータが存在し、さらに、当該データより前に、当該データとは正負が反対で絶対値が加速度A1以上のデータが存在する」か否かを判断する(n=2の場合)。または、サブ加速度データの履歴が示すX軸方向の加速度の方向が所定加速度A1以上の大きさでn回反転し、かつ、反転の間隔がそれぞれ所定時間以内であるか否かを判断してもよい。   In step 51, the CPU 30 refers to the history of the sub acceleration data included in the operation information transmitted from the operation mode Da from the player mode subunit of the team X, and determines the acceleration in the X-axis direction indicated by the history of the sub acceleration data. It is determined whether or not the direction has been reversed n times (n is an integer equal to or greater than 1) with a magnitude greater than or equal to the predetermined acceleration A1 within the most recent predetermined time. For example, referring to the history of the sub-acceleration data, “the acceleration of the latest sub-acceleration data (data determined to be greater than or equal to the acceleration A1 in step 50) within the most recent past predetermined time is opposite in polarity and absolute. It is determined whether or not there is data having a value greater than or equal to acceleration A1 (when n = 1). Or, “in the most recent past predetermined time, there is data that is opposite in sign to the acceleration indicated by the latest sub acceleration data and whose absolute value is greater than or equal to the acceleration A1, and before that data, It is determined whether or not there is data in which the sign is opposite and the absolute value is greater than or equal to the acceleration A1 (when n = 2). Alternatively, it may be determined whether or not the direction of the acceleration in the X-axis direction indicated by the history of the sub acceleration data is reversed n times with a magnitude equal to or greater than the predetermined acceleration A1, and the inversion interval is within a predetermined time. Good.

そして、CPU30は、X軸方向の加速度の方向が所定時間内に反転している場合、チームXにおけるプレイヤキャラクタPCの移動ベクトルVmpcにXp軸方向の所定の大きさのベクトル(ベクトルの大きさは、固定でもよいし、サブ加速度データが示すX軸方向の加速度の大きさに比例した大きさとしてもよい。ベクトルの向きは、X軸方向の加速度が正ならXp軸の正方向であり、X軸方向の加速度が負ならXp軸の負方向)を加算して、移動ベクトルVmpcとする。(ステップ52)、当該サブルーチンによる処理を終了して、上記ステップ16の処理へ進める。このステップ50〜ステップ52の処理によって、プレイヤが操作するプレイヤキャラクタPCの仮想ゲーム空間における移動速度は、プレイヤがサブユニット76を左右(つまり、X軸方向)に振り動かすことによってジグザグに移動するように移動制御される。一方、CPU30は、X軸方向の加速度の方向が所定時間内に反転していない場合、そのまま当該サブルーチンによる処理を終了して、上記ステップ16の処理へ進める。   Then, when the acceleration direction in the X-axis direction is reversed within a predetermined time, the CPU 30 adds a vector having a predetermined magnitude in the Xp-axis direction (the magnitude of the vector is the movement vector Vmpc of the player character PC in the team X). The direction of the vector may be the positive direction of the Xp axis if the acceleration in the X axis direction is positive, and X If the acceleration in the axial direction is negative, the negative direction of the Xp axis) is added to obtain a movement vector Vmpc. (Step 52), the process by the subroutine is finished, and the process proceeds to the process of Step 16. By the processing of step 50 to step 52, the moving speed of the player character PC operated by the player in the virtual game space is moved zigzag by swinging the subunit 76 left and right (that is, in the X-axis direction). The movement is controlled. On the other hand, if the direction of acceleration in the X-axis direction is not reversed within a predetermined time, the CPU 30 ends the process by the subroutine as it is and proceeds to the process of step 16.

なお、上述したサブユニット移動処理については、以下のようにしてもよい。第1の例として、最新のサブ加速度データが示すX軸方向の加速度の大きさ(絶対値)が所定値(例えば、重力加速度(1.0G))以内の場合、ステップ48において、最新のサブ加速度データが示すX軸方向の加速度を用いた姿勢ベクトルの制御を行う。第2の例として、最新のサブ加速度データが示すX軸方向の加速度の大きさ(絶対値)が当該所定値より大きい場合、ステップ48において、プレイヤキャラクタPCが上体または全身をXp軸方向に大きく振る動作をするような(フェイントを表現した姿勢をするような)動作制御をする。   The subunit movement process described above may be performed as follows. As a first example, when the magnitude (absolute value) of the acceleration in the X-axis direction indicated by the latest sub-acceleration data is within a predetermined value (for example, gravitational acceleration (1.0 G)), in step 48, the latest sub-acceleration data is displayed. The posture vector is controlled using the acceleration in the X-axis direction indicated by the acceleration data. As a second example, when the magnitude (absolute value) of acceleration in the X-axis direction indicated by the latest sub-acceleration data is larger than the predetermined value, in step 48, the player character PC moves the upper body or the whole body in the Xp-axis direction. Perform motion control that makes a large swing motion (like a posture that expresses a feint).

さらに、上記サブユニット移動処理の第1の例について、以下のようにしてもよい。第3の例として、最新のサブ加速度データが示すX軸方向の加速度の大きさ(絶対値)が当該所定値以内で、かつ、サブ加速度データの履歴が示すX軸方向の加速度の方向が直近の所定時間内に加速度A1以上の大きさでn回(nは1以上の整数)反転している場合、プレイヤキャラクタPCの移動ベクトルVmpcにXp軸方向の所定の大きさのベクトルを加算して、移動ベクトルVmpcとする。第4の例として、最新のサブ加速度データが示すX軸方向の加速度の大きさ(絶対値)が所定値A2以内で、かつ、上記第3の例以外の場合、ステップ48において、最新のサブ加速度データが示すX軸方向の加速度を用いた姿勢ベクトルの制御を行う。そして、上記第1の例や第4の例の場合には、ステップ14とステップ25において前述した「プレイヤキャラクタPCの所定範囲に配置された相手チームの選手キャラクタ」が、プレイヤキャラクタPCのフェイントにつられる移動制御はしないようにしてもよい。   Further, the first example of the subunit movement process may be as follows. As a third example, the magnitude (absolute value) of acceleration in the X-axis direction indicated by the latest sub-acceleration data is within the predetermined value, and the direction of acceleration in the X-axis direction indicated by the history of the sub-acceleration data is closest. In the predetermined time, when the acceleration is reversed n times (n is an integer of 1 or more) with a magnitude greater than or equal to the acceleration A1, a vector having a predetermined magnitude in the Xp axis direction is added to the movement vector Vmpc of the player character PC. , A movement vector Vmpc. As a fourth example, when the magnitude (absolute value) of the acceleration in the X-axis direction indicated by the latest sub-acceleration data is within the predetermined value A2 and other than the third example, in step 48, the latest sub-acceleration data is updated. The posture vector is controlled using the acceleration in the X-axis direction indicated by the acceleration data. In the case of the first example and the fourth example described above, the “player character of the opponent team arranged in the predetermined range of the player character PC” described in step 14 and step 25 is used as the feint of the player character PC. The movement control to be performed may not be performed.

このように、ステップ15におけるサブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向(さらには、付加的に移動速度)が制御されながら、サブユニット76に設けられた加速度センサ761から出力される加速度データに応じてプレイヤキャラクタPCの姿勢が制御される。つまり、プレイヤは、プレイヤキャラクタPCの移動方向制御と姿勢制御とを、片手で効率的かつ直感的に入力することができる。   As described above, in the subunit movement process in step 15, the movement direction (and additionally the movement speed) of the player character PC is controlled by the direction instruction section (stick 78 a) provided in the subunit 76. The posture of the player character PC is controlled according to the acceleration data output from the acceleration sensor 761 provided in the subunit 76. That is, the player can input the moving direction control and the posture control of the player character PC efficiently and intuitively with one hand.

また、上記サブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向(さらには、付加的に移動速度)が制御されながら、当該移動方向が、サブユニット76に設けられた加速度センサ761から出力される加速度データに応じて補正される。つまり、プレイヤは、プレイヤキャラクタPCの移動方向制御とその補正とを、片手で効率的かつ直感的に入力することができる。具体的には、以下のようにすることができる。スティック78aの傾倒方向に応じてプレイヤキャラクタPCの移動ベクトルの方向を決める。すなわち、例えば、上方向に指示したときに、プレイヤキャラクタPCのローカル座標系のZ軸正方向(プレイヤキャラクタPCの前方向)に移動(プレイヤキャラクタPCの前進方向ベクトルの方向に移動)する。方向指示手段を下方向に指示したときに、プレイヤキャラクタPCのローカル座標系のZ軸負方向に移動する。方向指示手段を右方向に指示したときに、ローカル座標系のX軸正方向に移動する。そして、方向指示手段を左方向に指示したときに、ローカル座標系のX軸負方向に移動するように移動制御する。移動ベクトルの大きさは、固定値でもよいし、スティック78aの傾倒量に応じて決めても良い。そして、加速度センサ761の出力に応じて、プレイヤキャラクタPCの移動方向を以下のように補正することができる。   In the subunit moving process, the moving direction (and additionally the moving speed) of the player character PC is controlled by the direction indicating unit (stick 78a) provided in the subunit 76, and the moving direction is changed. The correction is made according to the acceleration data output from the acceleration sensor 761 provided in the subunit 76. That is, the player can input the movement direction control of the player character PC and the correction thereof with one hand efficiently and intuitively. Specifically, the following can be performed. The direction of the movement vector of the player character PC is determined according to the tilt direction of the stick 78a. That is, for example, when an upward direction is designated, the player character PC moves in the positive Z-axis direction (forward direction of the player character PC) of the local coordinate system of the player character PC (moves in the direction of the forward direction vector of the player character PC). When the direction indicating means is instructed downward, it moves in the negative Z-axis direction of the local coordinate system of the player character PC. When the direction indicating unit is instructed to the right, the X direction positive direction of the local coordinate system is moved. Then, when the direction indicating means is instructed in the left direction, movement control is performed so as to move in the X axis negative direction of the local coordinate system. The magnitude of the movement vector may be a fixed value or may be determined according to the tilt amount of the stick 78a. Then, according to the output of the acceleration sensor 761, the moving direction of the player character PC can be corrected as follows.

プレイヤキャラクタPCの移動方向を補正する第1の例として、加速度センサ761のX軸、Y軸、Z軸をそれぞれ、所定座標系のX軸、Y軸、Z軸に対応付けた(または、前進方向とそれに直交する2方向に対応付けて)加速度センサ761の出力ベクトルを、仮想ゲーム空間の方向ベクトルに変換する。そして、上記方向ベクトルを補正ベクトルとして、当該補正ベクトルをスティック78aの傾倒により求めた上記移動ベクトルに加算する。上記補正ベクトルの大きさは、固定値でもよいし、上記出力ベクトルの大きさに応じて決めても良い。   As a first example of correcting the moving direction of the player character PC, the X axis, the Y axis, and the Z axis of the acceleration sensor 761 are associated with the X axis, the Y axis, and the Z axis of a predetermined coordinate system (or advance), respectively. The output vector of the acceleration sensor 761 is converted into a direction vector of the virtual game space (corresponding to a direction and two directions orthogonal to the direction). Then, using the direction vector as a correction vector, the correction vector is added to the movement vector obtained by tilting the stick 78a. The magnitude of the correction vector may be a fixed value or may be determined according to the magnitude of the output vector.

プレイヤキャラクタPCの移動方向を補正する第2の例として、加速度センサ761の所定方向(例えば、X軸方向)の出力値が所定値以上のときに、所定座標系の対応する方向(例えば、X軸方向)の補正ベクトルを、スティック78aの傾倒により求めた上記移動ベクトルに加算する。   As a second example of correcting the moving direction of the player character PC, when the output value of the acceleration sensor 761 in a predetermined direction (for example, the X-axis direction) is a predetermined value or more, the corresponding direction (for example, X The correction vector in the axial direction is added to the movement vector obtained by tilting the stick 78a.

プレイヤキャラクタPCの移動方向を補正する第3の例として、加速度センサ761の所定方向(例えば、X軸方向)の出力値に応じた大きさで、所定座標系の対応する方向(例えば、X軸方向)の補正ベクトルを、スティック78aの傾倒により求めた上記移動ベクトルに加算する。   As a third example of correcting the moving direction of the player character PC, the magnitude corresponding to the output value of the acceleration sensor 761 in a predetermined direction (for example, the X-axis direction) and a corresponding direction (for example, the X-axis) of the predetermined coordinate system (Direction) correction vector is added to the movement vector obtained by tilting the stick 78a.

なお、プレイヤキャラクタPCの移動方向を補正する第2および第3の例について、複数の方向について実施してもよい。すなわち、例えば、第3の例について、加速度センサ761のX軸方向の出力値に応じた大きさで、所定座標系のX軸方向の補正ベクトルを、スティック78aの傾倒により求めた上記移動ベクトルに加算し、さらに、加速度センサ761のY軸方向の出力値に応じた大きさで、所定座標系のY軸方向の補正ベクトルを加算してもよい。   Note that the second and third examples of correcting the moving direction of the player character PC may be performed in a plurality of directions. That is, for example, in the third example, the correction vector in the X-axis direction of the predetermined coordinate system having a magnitude corresponding to the output value in the X-axis direction of the acceleration sensor 761 is used as the movement vector obtained by tilting the stick 78a. In addition, a correction vector in the Y-axis direction of a predetermined coordinate system may be added with a magnitude corresponding to the output value of the acceleration sensor 761 in the Y-axis direction.

また、上記所定座標系は、プレイヤキャラクタPCのローカル座標系でもよいし、仮想ゲーム空間の座標系でもよいし(この場合、方向ベクトルは、典型的には仮想垂直方向や仮想水平方向などとなる)、カメラ座標系であってもよいし、カメラ座標系を仮想水平面に投影した座標系であってもよいし、方向指示部により決定される移動方向に基づく座標系(例えば、上記補正ベクトルが当該移動方向に直交する方向など)であってもよい。   The predetermined coordinate system may be a local coordinate system of the player character PC or a virtual game space coordinate system (in this case, the direction vector is typically a virtual vertical direction, a virtual horizontal direction, or the like). ), A camera coordinate system, a coordinate system obtained by projecting the camera coordinate system onto a virtual horizontal plane, or a coordinate system based on the moving direction determined by the direction indicating unit (for example, the correction vector is Or a direction orthogonal to the moving direction).

また、上記サブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向が制御されながら、プレイヤキャラクタPCの移動速度の制御がされる。つまり、プレイヤは、プレイヤキャラクタPCの移動方向制御と移動速度の制御とを、片手で効率的かつ直感的に入力することができる。この場合、以下のようにすることができる。スティック78aの傾倒方向に応じて、プレイヤキャラクタPCの移動方向を決める。そして、プレイヤキャラクタPCの移動速度(絶対値)は、加速度センサ761の出力に応じて、以下のように決めることができる。   In the subunit moving process, the moving speed of the player character PC is controlled while the moving direction of the player character PC is controlled by the direction indicating unit (stick 78a) provided in the subunit 76. That is, the player can input the movement direction control and the movement speed control of the player character PC efficiently and intuitively with one hand. In this case, it can be as follows. The moving direction of the player character PC is determined according to the tilt direction of the stick 78a. The moving speed (absolute value) of the player character PC can be determined as follows according to the output of the acceleration sensor 761.

プレイヤキャラクタPCの移動速度を決定する第1の例は、加速度センサ761の出力ベクトルの絶対値が所定値以上のときに、当該移動速度を所定速度とし、当該所定値より小さいときは当該移動速度を0とする。   A first example of determining the moving speed of the player character PC is that the moving speed is set to a predetermined speed when the absolute value of the output vector of the acceleration sensor 761 is equal to or larger than a predetermined value, and the moving speed is lower than the predetermined value. Is set to 0.

プレイヤキャラクタPCの移動速度を決定する第2の例は、当該移動速度を加速度センサ761の出力ベクトルの絶対値に応じた速度とする(当該絶対値が大きいほど、当該移動速度が大きくなるようにする)。このとき、上記出力ベクトルの所定成分(例えば、Z軸方向成分)が正のときには、プレイヤキャラクタPCがスティック78aの傾倒方向に応じた移動方向に移動し、負のときには、プレイヤキャラクタPCがスティック78aの傾倒方向に応じた移動方向と反対方向に移動するようにしてもよい。また、上記所定方向の出力成分が正のときのみ、当該第2の例によって上記移動速度を決定するようにしてもよい。   In a second example of determining the moving speed of the player character PC, the moving speed is set to a speed corresponding to the absolute value of the output vector of the acceleration sensor 761 (the higher the absolute value is, the higher the moving speed is. To do). At this time, when a predetermined component (for example, a Z-axis direction component) of the output vector is positive, the player character PC moves in a moving direction corresponding to the tilt direction of the stick 78a, and when negative, the player character PC moves to the stick 78a. You may make it move to the direction opposite to the moving direction according to the inclination direction. Further, the moving speed may be determined according to the second example only when the output component in the predetermined direction is positive.

プレイヤキャラクタPCの移動速度を決定する第3の例は、加速度センサ761の所定方向の出力成分(例えば、Z軸方向の出力値)が所定値以上のときに、当該移動速度を所定速度とし、当該所定値より小さいときは当該移動速度を0とする。   A third example of determining the moving speed of the player character PC is to set the moving speed to a predetermined speed when an output component (for example, an output value in the Z-axis direction) of the acceleration sensor 761 is a predetermined value or more. When it is smaller than the predetermined value, the moving speed is set to zero.

プレイヤキャラクタPCの移動速度を決定する第4の例は、当該移動速度を加速度センサ761の所定方向の出力成分(例えば、Z軸方向の出力値)の絶対値に応じた速度とする。   In a fourth example of determining the moving speed of the player character PC, the moving speed is set to a speed corresponding to the absolute value of the output component in the predetermined direction of the acceleration sensor 761 (for example, the output value in the Z-axis direction).

なお、プレイヤキャラクタPCの移動速度を決定する第3および第4の例において、上記所定方向の出力成分が正のときにはスティック78aの傾倒方向に応じた移動方向にプレイヤキャラクタPCが移動し、上記所定方向の出力成分が負のときには、当該移動方向と反対の方向にプレイヤキャラクタPCが移動するようにしてもよい。また、上記所定方向の出力成分が正のときのみ、当該第3および第4の例によって上記移動速度を決定するようにしてもよい。   In the third and fourth examples for determining the moving speed of the player character PC, when the output component in the predetermined direction is positive, the player character PC moves in the moving direction according to the tilting direction of the stick 78a, and the predetermined character is output. When the direction output component is negative, the player character PC may move in the direction opposite to the moving direction. Further, the moving speed may be determined by the third and fourth examples only when the output component in the predetermined direction is positive.

プレイヤキャラクタPCの移動速度を決定する第5の例は、加速度センサ761の、スティック78aの傾倒方向に対応する方向の出力成分(例えば、スティック78aの傾倒方向が上方向のときにはZ軸方向の出力値、スティック78aの傾倒方向が右方向のときにはX軸方向の出力値など)が、所定値以上のときに当該移動速度を所定速度とし、当該所定値より小さいときは当該移動速度を0とする。   A fifth example of determining the moving speed of the player character PC is an output component of the acceleration sensor 761 in a direction corresponding to the tilt direction of the stick 78a (for example, output in the Z-axis direction when the tilt direction of the stick 78a is upward). When the tilting direction of the stick 78a is rightward, the movement speed is set to a predetermined speed when the output value in the X-axis direction is equal to or greater than a predetermined value, and when it is smaller than the predetermined value, the movement speed is set to zero. .

プレイヤキャラクタPCの移動速度を決定する第6の例は、当該移動速度を加速度センサ761の、スティック78aの傾倒方向に対応する方向の出力成分(例えば、スティック78aの傾倒方向が上方向のときにはZ軸方向の出力値、スティック78aの傾倒方向が右方向のときにはX軸方向の出力値など)の絶対値に応じた速度とする。   In the sixth example of determining the moving speed of the player character PC, the moving speed is output in the direction corresponding to the tilt direction of the stick 78a of the acceleration sensor 761 (for example, Z when the tilt direction of the stick 78a is upward). The speed is determined according to the absolute value of the output value in the axial direction and the output value in the X-axis direction when the tilt direction of the stick 78a is rightward.

なお、プレイヤキャラクタPCの移動速度を決定する第5および第6の例において、上記対応する方向の出力成分が正のときにはスティック78aの傾倒方向に応じた移動方向にプレイヤキャラクタPCが移動し、上記対応する方向の出力成分が負のときには、当該移動方向と反対の方向にプレイヤキャラクタPCが移動するようにしてもよい。   In the fifth and sixth examples for determining the moving speed of the player character PC, when the output component in the corresponding direction is positive, the player character PC moves in the moving direction corresponding to the tilting direction of the stick 78a. When the output component in the corresponding direction is negative, the player character PC may move in the direction opposite to the moving direction.

また、上記サブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向と移動速度とが制御されながら、移動速度の補正制御がされる。つまり、プレイヤは、プレイヤキャラクタPCの移動方向制御と移動速度の補正制御とを、片手で効率的かつ直感的に入力することができる。この場合、以下のようにすることができる。スティック78aの傾倒方向に応じてプレイヤキャラクタPCの移動方向を決めて、かつ、スティック78aの傾倒量に応じてプレイヤキャラクタPCの移動速度を決める。そして、加速度センサ761の出力に応じて、プレイヤキャラクタPCの移動速度を以下のように補正することができる。   In the subunit movement process, the movement speed correction control is performed while the movement direction and movement speed of the player character PC are controlled by the direction instruction section (stick 78a) provided in the subunit 76. That is, the player can input the movement direction control of the player character PC and the movement speed correction control efficiently and intuitively with one hand. In this case, it can be as follows. The moving direction of the player character PC is determined according to the tilt direction of the stick 78a, and the moving speed of the player character PC is determined according to the tilt amount of the stick 78a. In accordance with the output of the acceleration sensor 761, the moving speed of the player character PC can be corrected as follows.

プレイヤキャラクタPCの移動速度を補正する第1の例は、加速度センサ761の出力ベクトルの絶対値が所定値以上のときに、スティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より小さいときはプレイヤキャラクタPCの移動速度を0に補正する。   A first example of correcting the moving speed of the player character PC is that when the absolute value of the output vector of the acceleration sensor 761 is greater than or equal to a predetermined value, the moving speed corresponding to the tilt amount of the stick 78a is used as the moving speed of the player character PC. If it is used as it is and is smaller than the predetermined value, the moving speed of the player character PC is corrected to zero.

プレイヤキャラクタPCの移動速度を補正する第2の例は、加速度センサ761の出力ベクトルの絶対値が所定値以下のときに、スティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より大きいときはプレイヤキャラクタPCの移動速度を増加補正する(所定値を加算、n倍(n>1)など)。   A second example of correcting the moving speed of the player character PC is that when the absolute value of the output vector of the acceleration sensor 761 is a predetermined value or less, the moving speed corresponding to the tilt amount of the stick 78a is used as the moving speed of the player character PC. If it is used as it is and is larger than the predetermined value, the moving speed of the player character PC is increased and corrected (added predetermined value, n times (n> 1), etc.).

プレイヤキャラクタPCの移動速度を補正する第3の例は、加速度センサ761の出力ベクトルの絶対値に応じて、スティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度に増加補正する(当該絶対値が大きいほど、増加量が大きくなるようにする)。   In the third example of correcting the moving speed of the player character PC, the moving speed corresponding to the tilt amount of the stick 78a is increased and corrected to the moving speed of the player character PC according to the absolute value of the output vector of the acceleration sensor 761 ( The larger the absolute value, the larger the increase amount).

なお、プレイヤキャラクタPCの移動速度を補正する第2および第3の例において、上記出力ベクトルの所定成分(例えばZ軸方向成分)が正のときには、スティック78aの傾倒方向に応じた移動方向にプレイヤキャラクタPCが移動し、負のときには、スティック78aの傾倒方向に応じた移動方向と反対方向にプレイヤキャラクタPCが移動するようにしてもよい。また、上記所定方向の出力成分が正のときのみ、当該第2および第3の例によって上記移動速度を補正するようにしてもよい。   In the second and third examples in which the moving speed of the player character PC is corrected, when a predetermined component (for example, a Z-axis direction component) of the output vector is positive, the player moves in the moving direction according to the tilt direction of the stick 78a. When the character PC moves and is negative, the player character PC may move in a direction opposite to the moving direction corresponding to the tilt direction of the stick 78a. Further, the moving speed may be corrected by the second and third examples only when the output component in the predetermined direction is positive.

プレイヤキャラクタPCの移動速度を補正する第4の例は、加速度センサ761の所定方向の出力成分(例えば、Z軸方向の出力値)が所定値以上のときにスティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より小さいときはプレイヤキャラクタPCの移動速度を0に補正する。   A fourth example of correcting the moving speed of the player character PC is a movement according to the tilt amount of the stick 78a when an output component (for example, an output value in the Z-axis direction) of the acceleration sensor 761 is a predetermined value or more. The speed is used as it is as the moving speed of the player character PC, and when it is smaller than the predetermined value, the moving speed of the player character PC is corrected to zero.

プレイヤキャラクタPCの移動速度を補正する第5の例は、加速度センサ761の所定方向の出力成分(例えば、Z軸方向の出力値)が所定値以下のときにスティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より大きいときはプレイヤキャラクタPCの移動速度を増加補正する。なお、上記所定方向の出力成分が正のときのみ、当該第5の例によって上記移動速度を補正してもよいし、上記所定方向の出力成分が負のときにはスティック78aの傾倒量に応じた移動速度を用いてプレイヤキャラクタPCの移動速度を減少補正してもよい。   A fifth example of correcting the moving speed of the player character PC is a movement according to the tilt amount of the stick 78a when the output component (for example, the output value in the Z-axis direction) of the acceleration sensor 761 is not more than a predetermined value. The speed is used as it is as the moving speed of the player character PC, and when it is larger than the predetermined value, the moving speed of the player character PC is corrected to be increased. The moving speed may be corrected by the fifth example only when the output component in the predetermined direction is positive. When the output component in the predetermined direction is negative, the movement according to the tilt amount of the stick 78a. The moving speed of the player character PC may be corrected to decrease using the speed.

プレイヤキャラクタPCの移動速度を補正する第6の例は、加速度センサ761の所定方向の出力成分(例えば、Z軸方向の出力値)の大きさに応じて、スティック78aの傾倒量に応じた移動速度を用いてプレイヤキャラクタPCの移動速度を増加補正する(当該絶対値が大きいほど、増加量が大きくなるようにする)。なお、上記所定方向の出力成分が正のときのみ、当該第6の例によって上記移動速度を補正してもよいし、上記所定方向の出力成分が負のときにはスティック78aの傾倒量に応じた移動速度を用いてプレイヤキャラクタPCの移動速度を減少補正してもよい。   A sixth example for correcting the movement speed of the player character PC is a movement according to the amount of tilt of the stick 78a according to the magnitude of the output component (for example, the output value in the Z-axis direction) of the acceleration sensor 761 in a predetermined direction. The movement speed of the player character PC is corrected using the speed (the larger the absolute value is, the larger the increase amount is). Note that the moving speed may be corrected by the sixth example only when the output component in the predetermined direction is positive, and when the output component in the predetermined direction is negative, the movement according to the tilt amount of the stick 78a. The moving speed of the player character PC may be corrected to decrease using the speed.

プレイヤキャラクタPCの移動速度を補正する第7の例は、加速度センサ761の、スティック78aの傾倒方向に対応する方向の出力成分(例えば、スティック78aの傾倒方向が上方向のときにはZ軸正方向の出力値、スティック78aの傾倒方向が右方向のときにはX軸正方向の出力値など)が、所定値以上のときにスティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より小さいときはプレイヤキャラクタPCの移動速度を0に補正する。   A seventh example of correcting the moving speed of the player character PC is an output component of the acceleration sensor 761 in a direction corresponding to the tilting direction of the stick 78a (for example, when the tilting direction of the stick 78a is upward, When the output value, the output value in the positive direction of the X-axis when the tilt direction of the stick 78a is rightward, etc.), the moving speed according to the tilt amount of the stick 78a is used as the moving speed of the player character PC as it is. If it is smaller than the predetermined value, the moving speed of the player character PC is corrected to zero.

プレイヤキャラクタPCの移動速度を補正する第8の例は、加速度センサ761の、スティック78aの傾倒方向に対応する方向の出力成分が、所定値以下のときにスティック78aの傾倒量に応じた移動速度をプレイヤキャラクタPCの移動速度としてそのまま使用し、当該所定値より大きいときにプレイヤキャラクタPCの移動速度を増加補正する。   An eighth example of correcting the moving speed of the player character PC is a moving speed corresponding to the tilt amount of the stick 78a when the output component of the acceleration sensor 761 in the direction corresponding to the tilt direction of the stick 78a is equal to or less than a predetermined value. Is used as it is as the moving speed of the player character PC, and when it is larger than the predetermined value, the moving speed of the player character PC is increased and corrected.

プレイヤキャラクタPCの移動速度を補正する第9の例は、加速度センサ761の、スティック78aの傾倒方向に対応する方向の出力成分の大きさに応じて、スティック78aの傾倒量に応じた移動速度を用いてプレイヤキャラクタPCの移動速度を増加補正する(当該絶対値が大きいほど、増加量が大きくなるようにする)。   In the ninth example of correcting the moving speed of the player character PC, the moving speed corresponding to the tilt amount of the stick 78a is set according to the magnitude of the output component of the acceleration sensor 761 in the direction corresponding to the tilting direction of the stick 78a. And the movement speed of the player character PC is corrected to increase (the larger the absolute value, the larger the increase amount).

なお、プレイヤキャラクタPCの移動速度を補正する第8および第9の例において、上記所定方向の出力成分が正のときのみ当該第8および第9の例によって上記移動速度を補正してもよいし、上記対応する出力値が正のときにはスティック78aの傾倒方向に応じた移動方向にプレイヤキャラクタPCが移動し、上記対応する出力値が負のとき(当該対応する方向と反対方向の出力があるとき)には、当該移動方向と反対の方向にプレイヤキャラクタPCが移動するようにしてもよい。   In the eighth and ninth examples for correcting the moving speed of the player character PC, the moving speed may be corrected by the eighth and ninth examples only when the output component in the predetermined direction is positive. When the corresponding output value is positive, the player character PC moves in the moving direction corresponding to the tilt direction of the stick 78a, and when the corresponding output value is negative (when there is an output in the direction opposite to the corresponding direction). ), The player character PC may move in a direction opposite to the moving direction.

また、上記サブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向(さらには、付加的に移動速度)が制御されながら、プレイヤキャラクタPCの動作制御(例えば、前述のフェイント動作)が行われる。つまり、プレイヤは、プレイヤキャラクタPCの移動方向制御と動作制御とを、片手で効率的かつ直感的に入力することができる。これは、加速度センサ761の出力が所定の条件を満たしたときに、プレイヤキャラクタPCに所定の動作をさせるように制御することにより実現される。さらに、上述したサブユニット移動処理の例の少なくとも1つと、加速度センサ761の出力が所定の条件を満たしたときにプレイヤキャラクタPCに所定の動作をさせるように制御する処理とを同時に実施する場合には、加速度センサ761の出力値の大きさが所定値以下のときに上述したサブユニット移動処理の例の少なくとも1つを実施し、所定値より大きいときに所定の動作をさせるように制御する処理を実施するようにしてもよい。   In the subunit moving process, the direction of the player character PC (and additionally the moving speed) is controlled by the direction indicating section (stick 78a) provided in the subunit 76, while the player character PC Operation control (for example, the above-described faint operation) is performed. That is, the player can input the moving direction control and the motion control of the player character PC efficiently and intuitively with one hand. This is realized by controlling the player character PC to perform a predetermined action when the output of the acceleration sensor 761 satisfies a predetermined condition. Furthermore, in the case where at least one of the above-described subunit movement processes and a process of controlling the player character PC to perform a predetermined action when the output of the acceleration sensor 761 satisfies a predetermined condition are performed simultaneously. Is a process of performing at least one of the examples of the subunit movement process described above when the magnitude of the output value of the acceleration sensor 761 is less than or equal to a predetermined value, and controlling to perform a predetermined operation when it is greater than the predetermined value May be implemented.

また、上記サブユニット移動処理においては、サブユニット76に設けられた方向指示部(スティック78a)の操作に応じて決定されるプレイヤキャラクタPCの位置を、異なる態様によって決定してもかまわない。図30は、サブユニット移動処理における他の例の詳細な動作を示すサブルーチンである。なお、図30に示すサブユニット移動処理における他の例は、図19で示したサブユニット移動処理と比較して、ステップ43とステップ44との間で行う処理、ステップ46の処理、およびステップ52の処理が異なる。以下、図19で示したサブユニット移動処理と異なる処理について説明し、図19で示したサブユニット移動処理と同様の処理については詳細な説明を省略する。なお、サブユニット移動処理における他の例においては、メインメモリ33の図示しない領域に、仮想ゲーム空間におけるプレイヤキャラクタPCの位置を示す位置データが記憶される(以下、PC位置データと記載する)。   Further, in the subunit movement process, the position of the player character PC determined in accordance with the operation of the direction indicating section (stick 78a) provided in the subunit 76 may be determined in a different manner. FIG. 30 is a subroutine showing the detailed operation of another example in the subunit movement process. Other examples of the subunit movement process shown in FIG. 30 are the processes performed between step 43 and step 44, the process of step 46, and the step 52, compared to the subunit movement process shown in FIG. The processing of is different. Hereinafter, processing different from the subunit movement processing illustrated in FIG. 19 will be described, and detailed description of processing similar to the subunit movement processing illustrated in FIG. 19 will be omitted. In another example of the subunit movement process, position data indicating the position of the player character PC in the virtual game space is stored in an area (not shown) of the main memory 33 (hereinafter referred to as PC position data).

図30において、CPU30は、方向指示入力に基づいて上記ステップ43で算出された算出された移動ベクトルVmpcに基づいて、メインメモリ33のPC位置データを更新し(ステップ171)、上記ステップ44へ処理を進める。例えば、ステップ171の処理においては、メインメモリ33に記憶されている直前のPC位置データが示す仮想ゲーム空間における位置を、上記移動ベクトルVmpcで移動させた位置を算出し、当該算出された位置を示すPC位置データに更新する。   In FIG. 30, the CPU 30 updates the PC position data in the main memory 33 based on the calculated movement vector Vmpc calculated in step 43 based on the direction instruction input (step 171), and the process proceeds to step 44. To proceed. For example, in the process of step 171, the position obtained by moving the position in the virtual game space indicated by the immediately preceding PC position data stored in the main memory 33 using the movement vector Vmpc is calculated, and the calculated position is calculated. Update to the indicated PC position data.

また、上記ステップ45においてZ軸正方向の加速度が所定値以上である場合、CPU30は、加速度データDa4に応じて変位ベクトルを算出し(ステップ172)、上記ステップ47に処理を進める。ここで、ステップ172における変位ベクトルの算出方法は、ステップ46について上述した補正ベクトルの算出方法(上述のバリエーションを含む)と同様である。   On the other hand, if the acceleration in the positive direction of the Z-axis is equal to or greater than a predetermined value in step 45, the CPU 30 calculates a displacement vector according to the acceleration data Da4 (step 172), and proceeds to step 47. Here, the method for calculating the displacement vector in step 172 is the same as the method for calculating the correction vector described above for step 46 (including the variations described above).

また、上記ステップ51においてX軸方向の加速度の方向が所定時間内に反転している場合、CPU30は、加速度データDa4に応じて変位ベクトルを算出し(ステップ173)、当該サブルーチンによる処理を終了する。ここで、ステップ173における変位ベクトルの算出方法は、ステップ52について上述した補正ベクトルの算出方法(上述のバリエーションを含む)と同様である。   If the acceleration direction in the X-axis direction is reversed within the predetermined time in step 51, the CPU 30 calculates a displacement vector according to the acceleration data Da4 (step 173) and ends the processing by the subroutine. . Here, the method for calculating the displacement vector in step 173 is the same as the method for calculating the correction vector described above for step 52 (including the variations described above).

そして、図18に示したステップ21の処理では、上記ステップ172で算出された変位ベクトルと上記ステップ173で算出された変位ベクトルとを加算した和ベクトルを算出し、PC位置データが示す仮想ゲーム空間の位置を当該和ベクトルで変位させた位置に、プレイヤキャラクタPCを仮想ゲーム空間内で移動させ、ゲーム画像をモニタ2に表示する。ただし、ステップ21においては、メインメモリ33に格納されたPC位置データの更新は行わない。このような処理を行えば、プレイヤキャラクタPCの仮想ゲーム空間における基本的な位置(PC位置データが示す位置)は方向指示入力によって移動する。そして、加速度センサ701から出力された加速度データに応じて、上記基本的な位置を一時的に変位させた位置に、プレイヤキャラクタPCを移動させて表示する。このような処理によって、違和感のない操作性が得られる。   In the process of step 21 shown in FIG. 18, a sum vector obtained by adding the displacement vector calculated in step 172 and the displacement vector calculated in step 173 is calculated, and the virtual game space indicated by the PC position data is obtained. The player character PC is moved in the virtual game space to the position displaced by the sum vector, and the game image is displayed on the monitor 2. However, in step 21, the PC position data stored in the main memory 33 is not updated. If such processing is performed, the basic position (position indicated by the PC position data) of the player character PC in the virtual game space is moved by the direction instruction input. Then, in accordance with the acceleration data output from the acceleration sensor 701, the player character PC is moved and displayed at a position where the basic position is temporarily displaced. By such processing, operability without a sense of incongruity can be obtained.

次に、図20を参照して、上記ステップ16におけるパス処理について、詳細な動作を説明する。   Next, with reference to FIG. 20, the detailed operation of the pass process in step 16 will be described.

図20において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコアキーデータを参照する(ステップ81)。次に、CPU30は、上記ステップ81で参照したコアキーデータに基づいて、プレイヤがコアユニット70の操作部72d(Aボタン)のみを押下しているか否かを判断する(ステップ82)。そして、CPU30は、プレイヤがAボタンのみを押下している場合、次のステップ83に処理を進める。一方、CPU30は、プレイヤがAボタンを押下していない、またはAボタンと同時に他のボタン(例えば、Bボタン)を押下している場合、当該サブルーチンによる処理を終了して、上記ステップ17の処理へ進める。   In FIG. 20, the CPU 30 refers to the latest core key data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da (step 81). Next, the CPU 30 determines whether or not the player is pressing only the operation unit 72d (A button) of the core unit 70 based on the core key data referred to in step 81 (step 82). Then, when the player presses only the A button, the CPU 30 proceeds to the next step 83. On the other hand, if the player does not press the A button or presses another button (for example, the B button) at the same time as the A button, the CPU 30 ends the process by the subroutine and performs the process of step 17 above. Proceed to

ステップ83において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新の第1座標データDa1および第2座標データDa2を参照する(ステップ83)。次に、CPU30は、上記ステップ83で参照した第1座標データDa1および第2座標データDa2に対応する指示座標、および当該指示座標に対応する仮想ゲーム空間の位置を算出して、それぞれチームXの選手モード用コアユニットに対応する指示座標データDeおよび仮想空間位置座標データDfを更新して(ステップ84)、処理を次のステップに進める。以下、座標データを用いて指示座標および仮想空間位置を算出する一例について詳述する。   In step 83, the CPU 30 refers to the latest first coordinate data Da1 and second coordinate data Da2 included in the operation information transmitted from the player mode core unit of the team X from the operation information Da (step 83). Next, the CPU 30 calculates the instruction coordinates corresponding to the first coordinate data Da1 and the second coordinate data Da2 referred to in step 83 and the position of the virtual game space corresponding to the instruction coordinates, and each of the team X's. The instruction coordinate data De and the virtual space position coordinate data Df corresponding to the player mode core unit are updated (step 84), and the process proceeds to the next step. Hereinafter, an example of calculating the designated coordinates and the virtual space position using the coordinate data will be described in detail.

まず、CPU30は、第1座標データDa1から第2座標データDa2への方向データを算出する。具体的には、CPU30は、第1座標データDa1および第2座標データDa2を参照して、第1座標データDa1の位置を始点とし第2座標データDa2の位置を終点とするベクトルを算出する。そして、CPU30は、算出されたベクトルのデータを、方向データとしてメインメモリ33に記憶する。この方向データと所定の基準方向との差によって、コアユニット70の撮像面に垂直な方向を軸とするコアユニット70本体の回転を算出することができる。   First, the CPU 30 calculates direction data from the first coordinate data Da1 to the second coordinate data Da2. Specifically, the CPU 30 refers to the first coordinate data Da1 and the second coordinate data Da2, and calculates a vector having the position of the first coordinate data Da1 as the start point and the position of the second coordinate data Da2 as the end point. Then, the CPU 30 stores the calculated vector data in the main memory 33 as direction data. The rotation of the main body of the core unit 70 about the direction perpendicular to the imaging surface of the core unit 70 can be calculated based on the difference between the direction data and a predetermined reference direction.

また、CPU30は、第1座標データDa1と第2座標データDa2との中点を示す中点データを算出する。具体的には、CPU30は、第1座標データDa1および第2座標データDa2を参照して、当該中点の座標を算出する。そして、CPU30は、算出された中点の座標のデータを、メインメモリ33に記憶する。ここで、中点データは、撮像画像内における対象画像(マーカ8Lおよび8R)の位置を示している。この中点データと所定の基準位置との差によって、コアユニット70の位置の変化による画像位置の変化を算出することができる。   Further, the CPU 30 calculates midpoint data indicating the midpoint between the first coordinate data Da1 and the second coordinate data Da2. Specifically, the CPU 30 refers to the first coordinate data Da1 and the second coordinate data Da2, and calculates the coordinates of the midpoint. Then, the CPU 30 stores the calculated coordinate data of the midpoint in the main memory 33. Here, the midpoint data indicates the position of the target image (markers 8L and 8R) in the captured image. The change in the image position due to the change in the position of the core unit 70 can be calculated from the difference between the midpoint data and the predetermined reference position.

ここで、マーカ8Lおよび8Rと、モニタ2の表示画面と、コアユニット70との位置関係について考える。例えば、モニタ2の上面に2つのマーカ8Lおよび8Rを設置し(図1参照)、上面が上方向を向いたコアユニット70を用いてプレイヤがモニタ2の表示画面の中央を指し示した場合(撮像情報演算部74の撮像画像の中央に表示画面中央が撮像されている状態)を考える。このとき、撮像情報演算部74の撮像画像において、対象画像の中点(マーカ8Lおよび8Rの中点)位置と指し示した位置(表示画面中央)とが一致しない。具体的には、上記撮像画像における対象画像の位置は撮像画像の中心から上方の位置となる。このような位置に対象画像が位置する場合に、表示画面中央を指し示しているという基準位置の設定を行う。一方、コアユニット70の移動に対応して、撮像画像中の対象画像の位置も移動する(移動方向は逆方向となる)ので、撮像画像中の対象画像の位置の移動に対応させて表示画面を指し示す位置を移動させる処理を行うことによって、コアユニット70で指し示された表示画面基準の位置(画面座標系の位置座標)を算出することができる。ここで、基準位置の設定は、予めプレイヤが表示画面の所定位置を指し示し、そのときの対象画像の位置を当該所定位置と対応させて記憶しておくようにしてもよいし、対象画像と表示画面との位置関係が固定的であれば、予め設定されていても良い。また、マーカ8Lおよび8Rが、モニタ2とは別体で設けられてモニタ2の近く(モニタ2の上や下など)に載置されて使用されるものである場合には、ゲーム開始前に、マーカ8Lおよび8Rをモニタに対してどの位置に載置しているかをプレイヤに入力させ(例えば、モニタ2の上に載置したか下に載置したか等の選択肢から選択させ)、光ディスク4やゲーム装置3の内蔵不揮発メモリなどに、モニタ2の上に載置した場合の基準位置データと、モニタ2の下に載置した場合の基準位置データをそれぞれ記憶しておいて、それらを選択して使用してもよい。このような画面座標系の位置座標は、中点データからモニタ2の表示画面基準の座標(指示座標)を算出する関数を用いた線形変換で算出される。この関数は、ある撮像画像から算出される中点座標の値を、当該撮像画像が撮像される時のコアユニット70によって指し示される表示画面上の位置(画面座標系の位置座標)を表す座標に変換するものである。この関数によって、中点座標から表示画面を基準とした指示座標を算出することができる。   Here, the positional relationship among the markers 8L and 8R, the display screen of the monitor 2, and the core unit 70 will be considered. For example, when two markers 8L and 8R are installed on the upper surface of the monitor 2 (see FIG. 1), and the player points to the center of the display screen of the monitor 2 using the core unit 70 with the upper surface facing upward (imaging) A state in which the center of the display screen is imaged in the center of the captured image of the information calculation unit 74 is considered. At this time, in the captured image of the imaging information calculation unit 74, the position of the middle point (middle point of the markers 8L and 8R) of the target image does not match the position (center of the display screen). Specifically, the position of the target image in the captured image is a position above the center of the captured image. When the target image is located at such a position, a reference position is set such that the center of the display screen is pointed. On the other hand, since the position of the target image in the captured image also moves in accordance with the movement of the core unit 70 (the movement direction is the reverse direction), the display screen corresponds to the movement of the position of the target image in the captured image. By performing the process of moving the position pointing to the display unit, the display screen reference position (position coordinate in the screen coordinate system) pointed to by the core unit 70 can be calculated. Here, for setting the reference position, the player may point in advance to a predetermined position on the display screen, and the position of the target image at that time may be stored in association with the predetermined position. If the positional relationship with the screen is fixed, it may be set in advance. Further, when the markers 8L and 8R are provided separately from the monitor 2 and are placed and used near the monitor 2 (eg, above or below the monitor 2), before the game starts Then, the player inputs the position where the markers 8L and 8R are placed with respect to the monitor (for example, selected from options such as placed on or below the monitor 2), and the optical disc. 4 and the built-in non-volatile memory of the game apparatus 3 store reference position data when placed on the monitor 2 and reference position data when placed under the monitor 2, respectively. You may select and use. Such position coordinates in the screen coordinate system are calculated by linear conversion using a function for calculating the display screen reference coordinates (indicated coordinates) of the monitor 2 from the midpoint data. This function is a coordinate representing a position on the display screen (position coordinate in the screen coordinate system) indicated by the core unit 70 when the captured image is captured, using a midpoint coordinate value calculated from a captured image. It is to convert to. With this function, the designated coordinates based on the display screen can be calculated from the midpoint coordinates.

しかしながら、上面が上方向以外(例えば、右方向)を向いたコアユニット70を用いてプレイヤがモニタ2の表示画面の中央を指し示した場合、上記撮像画像における対象画像の位置は撮像画像の中心から上方以外(例えば、左方)の方向にずれた位置となる。つまり、コアユニット70の傾きによって、コアユニット70の移動方向と、表示画面基準の指し示し位置の移動方向が一致しないことになる。そこで、方向データに基づいて、中点データを補正する。具体的には、中点データを、コアユニット70の上面が上方向を向いた状態であるとした場合における中点座標に補正する。より具体的には、上記基準位置の設定の際には方向データの基準も設定され、中点データを方向データと当該基準方向との角度差に応じた量だけ、撮像画像の中心を軸として中点データが示す座標を回転移動させて補正する。そして、補正された中点データを用いて上述したように指示座標を算出する。   However, when the player points to the center of the display screen of the monitor 2 using the core unit 70 whose upper surface is not in the upward direction (for example, the right direction), the position of the target image in the captured image is from the center of the captured image. The position is shifted in a direction other than upward (for example, to the left). That is, due to the inclination of the core unit 70, the moving direction of the core unit 70 does not match the moving direction of the display screen reference position. Therefore, the midpoint data is corrected based on the direction data. Specifically, the midpoint data is corrected to the midpoint coordinates when the upper surface of the core unit 70 is in the upward direction. More specifically, when setting the reference position, the direction data reference is also set, and the midpoint data is set in an amount corresponding to the angle difference between the direction data and the reference direction, with the center of the captured image as the axis. The coordinates indicated by the midpoint data are rotated and corrected. Then, the indicated coordinates are calculated as described above using the corrected midpoint data.

また、算出した画面座標系の指示座標を仮想ゲーム空間内における位置(仮想空間位置)を表す仮想空間座標に変換する場合には、当該画面座標系における位置に対応する仮想ゲーム空間内における位置にさらに変換すればよい。ここで、画面座標系における位置に対応する仮想ゲーム空間内における位置とは、モニタ2の表示画面上における位置に表示される仮想ゲーム空間内における位置(例えば、透視投影される位置)や画面座標系の位置座標から直接的に指定される仮想ゲーム空間の3次元座標値等である。   In addition, when the calculated designated coordinates in the screen coordinate system are converted into virtual space coordinates representing a position in the virtual game space (virtual space position), the designated coordinate in the virtual game space corresponds to the position in the screen coordinate system. What is necessary is just to convert. Here, the position in the virtual game space corresponding to the position in the screen coordinate system is a position in the virtual game space displayed at a position on the display screen of the monitor 2 (for example, a position projected through) or screen coordinates. The three-dimensional coordinate values of the virtual game space that are directly specified from the position coordinates of the system.

上記指示座標の算出処理の本質的な原理は、コアユニット70の移動による対象画像の位置の変化によって、指し示された2次元座標の所定の基準位置からの変位を算出し、座標を設定するというものである。したがって、画面座標系の位置座標は、他の2次元座標の入力としても幅広く用いることができる。例えば、画面座標系の位置座標をワールド座標系におけるx座標およびy座標の値として直接的に用いることができる。この場合、モニタ2の表示画面とは無関係に、対象画像の移動をワールド座標系におけるx座標およびy座標の基準位置からの移動に対応付ける算出処理を行えばよい。また、2次元のゲーム画像がモニタ2に表示されている場合などは、画面座標系の位置座標をそのまま2次元のゲーム座標系におけるx座標およびy座標の値として直接的に用いることができる。   The essential principle of the calculation process of the indicated coordinates is that the displacement of the indicated two-dimensional coordinates from a predetermined reference position is calculated and the coordinates are set by the change of the position of the target image due to the movement of the core unit 70. That's it. Therefore, the position coordinates in the screen coordinate system can be widely used as input for other two-dimensional coordinates. For example, the position coordinates of the screen coordinate system can be directly used as the values of the x and y coordinates in the world coordinate system. In this case, a calculation process for associating the movement of the target image with the movement of the x coordinate and the y coordinate from the reference position in the world coordinate system may be performed regardless of the display screen of the monitor 2. Further, when a two-dimensional game image is displayed on the monitor 2, the position coordinates of the screen coordinate system can be directly used as the values of the x coordinate and the y coordinate in the two-dimensional game coordinate system.

ステップ84の処理の後、CPU30は、算出された指示座標に対応する仮想ゲーム空間の仮想空間位置が、仮想フィールド上の位置であるか否かを判断する(ステップ85)。例えば、仮想フィールドは、仮想サッカーフィールドを含むゲーム空間の地面を示す仮想平面である。次に、CPU30は、仮想空間位置が仮想フィールド上である場合、次のステップ90に処理を進める。一方、CPU30は、仮想空間位置が仮想フィールド上でない場合、上記画面座標系の指示座標がモニタ2の表示領域の上または下に外れているか否か(ステップ86)、および上記画面座標系の指示座標がモニタ2の表示領域の左または右に外れているか否か(ステップ87)を判断する。そして、CPU30は、指示座標がモニタ2の表示領域の上下に外れている場合(ステップ86でYes)、次のステップ88に処理を進める。また、CPU30は、指示座標がモニタ2の表示領域の左右に外れている場合(ステップ87でYes)、次のステップ89に処理を進める。一方、CPU30は、指示座標がモニタ2の表示領域の上下および左右以外に外れている、または指示座標が無効(例えば、算出不可)である場合(ステップ86およびステップ87でNo)、次のステップ95に処理を進める。   After the process of step 84, the CPU 30 determines whether or not the virtual space position of the virtual game space corresponding to the calculated designated coordinates is a position on the virtual field (step 85). For example, the virtual field is a virtual plane indicating the ground of the game space including the virtual soccer field. Next, when the virtual space position is on the virtual field, the CPU 30 proceeds to the next step 90. On the other hand, if the virtual space position is not on the virtual field, the CPU 30 determines whether or not the indicated coordinates of the screen coordinate system are out of or above the display area of the monitor 2 (step 86) and the indication of the screen coordinate system. It is determined whether the coordinates are out of the left or right of the display area of the monitor 2 (step 87). Then, the CPU 30 advances the processing to the next step 88 when the designated coordinates are out of the display area of the monitor 2 (Yes in step 86). Further, when the designated coordinates are out of the left and right of the display area of the monitor 2 (Yes in Step 87), the CPU 30 advances the process to the next Step 89. On the other hand, when the designated coordinates are out of the display area of the monitor 2 except for the top and bottom and the left and right, or the designated coordinates are invalid (for example, cannot be calculated) (No in Step 86 and Step 87), the CPU 30 proceeds to the next step. The process proceeds to 95.

ステップ88において、CPU30は、ボールオブジェクトBの移動方向および移動速度を示すボール移動ベクトルを、仮想ゲーム空間に設定されたサッカーフィールドのゴールラインと平行な方向に所定の大きさで設定し、移動ベクトルデータDcを更新して、次のステップ95に処理を進める。なお、上記ステップ88で設定するボール移動ベクトルの方向は、仮想カメラの視線方向ベクトルを仮想ゲーム空間の仮想水平面に投影した方向に設定してもかまわない。   In step 88, the CPU 30 sets a ball movement vector indicating the movement direction and movement speed of the ball object B to a predetermined size in a direction parallel to the goal line of the soccer field set in the virtual game space. The data Dc is updated, and the process proceeds to the next step 95. Note that the direction of the ball movement vector set in step 88 may be set to a direction in which the line-of-sight direction vector of the virtual camera is projected onto the virtual horizontal plane of the virtual game space.

ステップ89において、CPU30は、ボールオブジェクトBの移動方向および移動速度を示すボール移動ベクトルを、仮想ゲーム空間に設定されたサッカーフィールドのタッチラインと平行な方向に所定の大きさで設定し、移動ベクトルデータDcを更新して、次のステップ95に処理を進める。なお、上記ステップ89で設定するボール移動ベクトルの方向は、仮想カメラの視線方向ベクトルを仮想ゲーム空間の仮想水平面に投影した方向に対して垂直な水平方向に設定してもかまわない。   In step 89, the CPU 30 sets a ball movement vector indicating the movement direction and movement speed of the ball object B with a predetermined size in a direction parallel to the touch line of the soccer field set in the virtual game space. The data Dc is updated, and the process proceeds to the next step 95. Note that the direction of the ball movement vector set in step 89 may be set in a horizontal direction perpendicular to the direction in which the line-of-sight direction vector of the virtual camera is projected onto the virtual horizontal plane of the virtual game space.

ステップ90において、CPU30は、上記ステップ84で算出された仮想空間位置を中心とした領域A内(典型的には、当該仮想空間位置を中心とする所定半径R1の円領域内であるが、円領域でなくてもよい)に、チームXの選手キャラクタが配置されているか否かを判断し、当該判断がYesの場合には当該選択キャラクタを選択する(複数の選手キャラクタが該当する場合には、当該仮想空間位置に一番近い選手キャラクタを選択する)。また、CPU30は、領域A内にチームXの選手キャラクタが配置されていない場合、上記ステップ84で算出された仮想空間位置を中心とした領域B内(典型的には、当該仮想空間位置を中心とする所定半径R2(>R1)の円領域内であるが、円領域でなくてもよい)に、チームXの選手キャラクタが配置されているか否かを判断し、当該判断がYesの場合には当該選択キャラクタを選択する(ステップ92)(複数の選手キャラクタが該当する場合には、当該仮想空間位置に一番近い選手キャラクタを選択してもよいし、当該複数の選手キャラクタの全てまたは複数を選択してもよい)。そして、CPU30は、領域A内にチームXの選手キャラクタが配置されている場合(ステップ90でYes)、次のステップ91に処理を進める。また、CPU30は、領域B内にチームXの選手キャラクタが配置されている場合(ステップ92でYes)、次のステップ93に処理を進める。さらに、CPU30は、領域Aおよび領域B内の何れにもチームXの選手キャラクタが配置されていない場合(ステップ90およびステップ92でNo)、次のステップ94に処理を進める。例えば、図27に示すように、領域Aおよび領域Bは、仮想空間位置TPを中心とした円形の領域でそれぞれ形成され、領域Aより領域Bが大きい。そして、CPU30は、最新の位置データDhを参照して、仮想ゲーム空間における各選手キャラクタの配置位置に基づいて、領域Aおよび領域B内に配置された選手キャラクタを判断する。   In step 90, the CPU 30 determines that the area within the area A centered on the virtual space position calculated in step 84 (typically, within the circular area having a predetermined radius R1 centered on the virtual space position, It is determined whether or not the player character of team X is placed in the area), and if the determination is Yes, the selected character is selected (if a plurality of player characters are applicable) , The player character closest to the virtual space position is selected). Further, when the player character of team X is not arranged in the area A, the CPU 30 is in the area B centered on the virtual space position calculated in step 84 (typically, the virtual space position is the center). If the player character of the team X is placed in a circle area of the predetermined radius R2 (> R1), but may not be a circle area), and the determination is Yes Selects the selected character (step 92) (when a plurality of player characters are applicable, the player character closest to the virtual space position may be selected, or all or a plurality of the plurality of player characters may be selected. May be selected). Then, when the player character of team X is arranged in the area A (Yes in step 90), the CPU 30 proceeds to the next step 91. Further, when the player character of team X is arranged in the area B (Yes in step 92), the CPU 30 advances the process to the next step 93. Further, the CPU 30 advances the process to the next step 94 when the player character of the team X is not arranged in any of the area A and the area B (No in step 90 and step 92). For example, as shown in FIG. 27, the region A and the region B are each formed as a circular region centered on the virtual space position TP, and the region B is larger than the region A. And CPU30 judges the player character arrange | positioned in the area | region A and the area | region B with reference to the newest position data Dh based on the arrangement position of each player character in virtual game space.

ステップ91において、CPU30は、ステップ90で選択された選手キャラクタの配置位置に応じて、ボール移動ベクトルを設定して、移動ベクトルデータDcを更新する。例えば、CPU30は、現在のボールオブジェクトBの位置から当該選手キャラクタの配置位置へ向かう方向をボール移動ベクトルの方向とする。さらに、現在のボールオブジェクトBの位置から当該選手キャラクタの配置位置までの仮想距離に応じた大きさをボール移動ベクトルの大きさとして設定してもよい。そして、CPU30は、次のステップ95に処理を進める。   In step 91, the CPU 30 sets a ball movement vector according to the arrangement position of the player character selected in step 90, and updates the movement vector data Dc. For example, the CPU 30 sets the direction from the current position of the ball object B to the arrangement position of the player character as the direction of the ball movement vector. Further, a size corresponding to a virtual distance from the current position of the ball object B to the arrangement position of the player character may be set as the size of the ball movement vector. Then, the CPU 30 advances the process to the next step 95.

ステップ93において、CPU30は、ステップ92で選択された選手キャラクタの移動ベクトルを仮想空間位置TPに応じて設定して、移動ベクトルデータDcを更新する。例えば、CPU30は、ステップ92で選択された選手キャラクタの現在の配置位置から仮想空間位置TPに向かう方向を当該選手キャラクタの移動ベクトルの方向とする。さらに、当該現在の配置位置から仮想空間位置TPまでの仮想距離に応じた大きさを当該選手キャラクタの移動ベクトルの大きさとして設定してもよい。そして、CPU30は、次のステップ94に処理を進める。   In step 93, the CPU 30 sets the movement vector of the player character selected in step 92 according to the virtual space position TP, and updates the movement vector data Dc. For example, the CPU 30 sets the direction from the current arrangement position of the player character selected in step 92 to the virtual space position TP as the direction of the movement vector of the player character. Furthermore, you may set the magnitude | size according to the virtual distance from the said present arrangement position to virtual space position TP as a magnitude | size of the movement vector of the said player character. The CPU 30 then proceeds to the next step 94.

ステップ94において、CPU30は、仮想空間位置TPに応じてボール移動ベクトルを設定して、移動ベクトルデータDcを更新する。例えば、CPU30は、現在のボールオブジェクトBの位置から仮想空間位置TPへ向かう方向をボール移動ベクトルの方向とする。さらに、現在のボールオブジェクトBの位置から仮想空間位置TPまでの仮想距離に応じた大きさをボール移動ベクトルの大きさとして設定してもよい。そして、CPU30は、次のステップ95に処理を進める。   In step 94, the CPU 30 sets a ball movement vector according to the virtual space position TP, and updates the movement vector data Dc. For example, the CPU 30 sets the direction from the current position of the ball object B to the virtual space position TP as the direction of the ball movement vector. Further, a size corresponding to a virtual distance from the current position of the ball object B to the virtual space position TP may be set as the size of the ball movement vector. Then, the CPU 30 advances the process to the next step 95.

このようにプレイヤがAボタンを押下しているときに行われる上記ステップ90〜ステップ94の処理によってボールオブジェクトBの移動ベクトルが設定され、当該ボールオブジェクトBの移動方向(さらには、付加的に移動速度)が決定されるため、いわゆるサッカーゲームにおいてボールをパスする方向が設定される。ここで、上述から明らかなように、コアユニット70で指し示された仮想空間位置TP近傍に自チームの選手が存在しない場合、ボールオブジェクトBがパスされる目標地点は仮想空間位置TPとなる。また、コアユニット70で指し示された仮想空間位置TP近傍である領域A内に自チームの選手が存在する場合、ボールオブジェクトBがパスされる目標地点は領域A内に存在する自チームの選手となる。さらに、コアユニット70で指し示された仮想空間位置TPから少し離れた領域B内に自チームの選手が存在する場合、ボールオブジェクトBがパスされる目標地点は仮想空間位置TPとなり、領域B内に存在する自チームの選手も仮想空間位置TPへ移動する。   As described above, the movement vector of the ball object B is set by the processing of the above steps 90 to 94 performed when the player presses the A button, and the movement direction (and additionally the movement of the ball object B) is set. Speed) is determined, the direction in which the ball passes in a so-called soccer game is set. Here, as apparent from the above, when the player of the own team does not exist near the virtual space position TP indicated by the core unit 70, the target point to which the ball object B is passed becomes the virtual space position TP. Further, when the player of the own team exists in the area A near the virtual space position TP indicated by the core unit 70, the target point to which the ball object B is passed is the player of the own team existing in the area A. It becomes. Furthermore, when the player of the own team exists in the area B slightly apart from the virtual space position TP indicated by the core unit 70, the target point to which the ball object B is passed becomes the virtual space position TP, The player of the own team that is present also moves to the virtual space position TP.

ステップ95において、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれる最新のサブ加速度データを参照する。そして、CPU30は、サブ加速度データが示すZ軸方向の加速度が負(つまり、Z軸負方向の加速度を検出)であるか否かを判断する(ステップ96)。そして、CPU30は、Z軸方向の加速度が負である場合、ボール移動ベクトルに垂直上方向のベクトルを加算する(ステップ97)。なお、当該加算するベクトルは、当該Z軸方向の加速度の大きさ(絶対値)に応じた大きさとしてもよい。そして、当該サブルーチンによる処理を終了して、上記ステップ17の処理へ進める。このステップ97の処理によって、プレイヤキャラクタPCがパスするボールオブジェクトBの軌道は、プレイヤがサブユニット76の前方を持ち上げるような動作を行う(つまり、Z軸負方向の加速度が生じる)ことによって、仮想ゲーム空間内で高く蹴る軌道となる。一方、CPU30は、Z軸方向の加速度が負でない場合、そのまま当該サブルーチンによる処理を終了して、上記ステップ17の処理へ進める。   In step 95, the CPU 30 refers to the latest sub acceleration data included in the operation information transmitted from the player mode subunit of the team X from the operation information Da. Then, the CPU 30 determines whether or not the acceleration in the Z-axis direction indicated by the sub acceleration data is negative (that is, the acceleration in the negative Z-axis direction is detected) (step 96). Then, when the acceleration in the Z-axis direction is negative, the CPU 30 adds the vertical upward vector to the ball movement vector (step 97). The vector to be added may be a magnitude corresponding to the magnitude (absolute value) of acceleration in the Z-axis direction. Then, the process according to the subroutine is terminated, and the process proceeds to step 17. By the process of step 97, the trajectory of the ball object B passed by the player character PC performs an action such that the player lifts the front of the subunit 76 (that is, acceleration in the negative direction of the Z axis occurs), thereby It becomes a trajectory to kick high in the game space. On the other hand, if the acceleration in the Z-axis direction is not negative, the CPU 30 ends the process of the subroutine as it is and proceeds to the process of step 17.

このように、ステップ16におけるパス処理においては、プレイヤがAボタンのみを押下することによって、ボールオブジェクトBをキープするプレイヤキャラクタPCの位置からボールオブジェクトBが移動する動作を行う。そして、サブユニット76に設けられた方向指示部(スティック78a)でプレイヤキャラクタPCの移動方向(さらには、付加的に移動速度)が制御されながら、コアユニット70から得られる座標データ(第1座標データDa1および第2座標データDa2)によってボールオブジェクトBの移動方向(さらには、付加的に移動速度)が制御される。したがって、プレイヤは、2つのユニットを操作しながらそれぞれ別のキャラクタ(オブジェクト)を操作することが可能である。つまり、プレイヤは、第1キャラクタ(プレイヤキャラクタPC)の移動方向制御と当該第1キャラクタの位置(正確には、第1キャラクタの位置に付随して決定される第2キャラクタの位置)から移動する第2キャラクタ(ボールオブジェクトB)の移動方向制御とを、効率的かつ直感的に独立して入力することができる。また、プレイヤキャラクタPCを移動させる操作とパス方向を決定する操作とが独立している(さらには、プレイヤキャラクタPCを移動させる操作にかかるハウジング77とパス方向を決定する操作にかかるハウジング71とが独立している)ため、自由度が高くリアルなサッカーゲームが実現できる。   As described above, in the pass process in step 16, when the player presses only the A button, the ball object B moves from the position of the player character PC that keeps the ball object B. Then, coordinate data (first coordinates) obtained from the core unit 70 while the moving direction (and additionally the moving speed) of the player character PC is controlled by the direction indicating unit (stick 78a) provided in the subunit 76. The movement direction (and additionally the movement speed) of the ball object B is controlled by the data Da1 and the second coordinate data Da2. Therefore, the player can operate different characters (objects) while operating the two units. That is, the player moves from the movement direction control of the first character (player character PC) and the position of the first character (more precisely, the position of the second character determined accompanying the position of the first character). The moving direction control of the second character (ball object B) can be input efficiently and intuitively independently. Further, the operation for moving the player character PC and the operation for determining the pass direction are independent (in addition, the housing 77 for the operation for moving the player character PC and the housing 71 for the operation for determining the pass direction are provided. Therefore, it is possible to realize a real soccer game with a high degree of freedom.

また、第2キャラクタ(ボールオブジェクトB)の移動制御について、コアユニット70による指示座標により決定された第1方向ベクトルに、サブユニット76の加速度センサ761の出力に応じて決定される第2方向ベクトルを加えて、第2キャラクタの移動方向ベクトルとする。具体的には以下のようにすることができる。   Further, regarding the movement control of the second character (ball object B), the second direction vector determined in accordance with the output of the acceleration sensor 761 of the subunit 76 is used as the first direction vector determined by the designated coordinates by the core unit 70. To obtain the moving direction vector of the second character. Specifically, it can be as follows.

第2キャラクタの移動方向ベクトルを算出する第1の例として、加速度センサ761のX軸、Y軸、Z軸をそれぞれ、所定座標系のX軸、Y軸、Z軸に対応付けた(または前進方向とそれに直交する2方向に対応付けて)加速度センサ761の出力ベクトルを、仮想ゲーム空間の方向ベクトルに変換する。そして、上記方向ベクトルを第2方向ベクトルとして、当該第2方向ベクトルを第1方向ベクトルに加算する。上記第2方向ベクトルの大きさは、固定値でもよいし、上記出力ベクトルの大きさに応じて決めても良い。   As a first example of calculating the moving direction vector of the second character, the X axis, Y axis, and Z axis of the acceleration sensor 761 are respectively associated with the X axis, Y axis, and Z axis of a predetermined coordinate system (or advanced) The output vector of the acceleration sensor 761 is converted into a direction vector of the virtual game space (corresponding to a direction and two directions orthogonal to the direction). Then, the direction vector is set as the second direction vector, and the second direction vector is added to the first direction vector. The magnitude of the second direction vector may be a fixed value or may be determined according to the magnitude of the output vector.

第2キャラクタの移動方向ベクトルを算出する第2の例として、加速度センサ761の所定方向(例えば、X軸方向)の出力値が所定値以上のときに、所定座標系の対応する方向(例えば、X軸方向)の第2方向ベクトルを、第1方向ベクトルに加算する。   As a second example of calculating the moving direction vector of the second character, when the output value of the acceleration sensor 761 in a predetermined direction (for example, the X-axis direction) is equal to or greater than a predetermined value, the corresponding direction (for example, the predetermined coordinate system) The second direction vector in the (X-axis direction) is added to the first direction vector.

第2キャラクタの移動方向ベクトルを算出する第3の例として、加速度センサ761の所定方向(例えば、X軸方向)の出力値に応じた大きさで、所定座標系の対応する方向(例えば、X軸方向)の第2方向ベクトルを、第1方向ベクトルに加算する。   As a third example of calculating the movement direction vector of the second character, the magnitude corresponds to the output value of the acceleration sensor 761 in a predetermined direction (for example, the X-axis direction) and the corresponding direction (for example, X The second direction vector in the axial direction is added to the first direction vector.

なお、第2キャラクタの移動方向ベクトルを算出する第2および第3の例について、複数の方向について実施してもよい。すなわち、例えば、第3の例について、加速度センサ761のX軸方向の出力値に応じた大きさで、所定座標系のX軸方向の第2方向ベクトルを第1方向ベクトルに加算し、さらに、加速度センサ761のY軸方向の出力値に応じた大きさで所定座標系のY軸方向の第2方向ベクトルを当該第1方向ベクトルに加算してもよい。   Note that the second and third examples of calculating the moving direction vector of the second character may be implemented in a plurality of directions. That is, for example, for the third example, the second direction vector in the X-axis direction of the predetermined coordinate system is added to the first direction vector with a magnitude corresponding to the output value of the acceleration sensor 761 in the X-axis direction. You may add the 2nd direction vector of the Y-axis direction of a predetermined coordinate system with the magnitude | size according to the output value of the Y-axis direction of the acceleration sensor 761 to the said 1st direction vector.

なお、上記所定座標系は、プレイヤキャラクタPCのローカル座標系でもよいし、仮想ゲーム空間の座標系でもよいし(この場合、第2方向ベクトルは、典型的には仮想垂直方向や仮想水平方向などとなる)、カメラ座標系であってもよいし、カメラ座標系を仮想水平面に投影した座標系であってもよいし、方向指示部により決定される移動方向に基づく座標系(例えば、上記第2方向ベクトルが当該移動方向に直交する方向など)であってもよい。   The predetermined coordinate system may be a local coordinate system of the player character PC or a coordinate system of a virtual game space (in this case, the second direction vector is typically a virtual vertical direction, a virtual horizontal direction, etc. It may be a camera coordinate system, a coordinate system obtained by projecting the camera coordinate system onto a virtual horizontal plane, or a coordinate system based on the moving direction determined by the direction indicating unit (for example, the first The two-direction vector may be a direction orthogonal to the moving direction).

これらにより、コアユニット70による指示座標によりキャラクタの移動方向を制御しつつ、サブユニットを傾けたり動かしたりすることによりその方向を補正するような操作が実現できる。   As a result, it is possible to realize an operation of correcting the direction by tilting or moving the subunit while controlling the moving direction of the character by the designated coordinates by the core unit 70.

次に、図21を参照して、上記ステップ17における第1シュート処理について、詳細な動作を説明する。   Next, with reference to FIG. 21, detailed operation | movement is demonstrated about the 1st chute | shoot process in the said step 17. FIG.

図21において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコアキーデータを参照する(ステップ101)。次に、CPU30は、上記ステップ101で参照したコアキーデータに基づいて、プレイヤがコアユニット70の操作部72d(Aボタン)および操作部72i(Bボタン)を同時に押下しているか否かを判断する(ステップ102)。そして、CPU30は、プレイヤがAおよびBボタンを同時に押下している場合、次のステップ103に処理を進める。一方、CPU30は、プレイヤがAおよびBボタンを同時に押下していない場合、当該サブルーチンによる処理を終了して、上記ステップ18の処理へ進める。   In FIG. 21, the CPU 30 refers to the latest core key data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da (step 101). Next, the CPU 30 determines whether or not the player is simultaneously pressing the operation unit 72d (A button) and the operation unit 72i (B button) of the core unit 70 based on the core key data referred to in step 101 above. (Step 102). Then, the CPU 30 advances the process to the next step 103 when the player presses the A and B buttons simultaneously. On the other hand, if the player does not press the A and B buttons at the same time, the CPU 30 ends the process by the subroutine and proceeds to the process of step 18.

ステップ103において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコア加速度データを参照する。そして、CPU30は、コア加速度データに応じて、ボール移動ベクトルを算出して、移動ベクトルデータDcを更新し(ステップ104)、処理を次のステップに進める。例えば、CPU30は、ボールオブジェクトBをキープしているプレイヤキャラクタPCの前方方向(例えば、移動方向;すなわち、PCの移動方向ベクトルの方向)で、参照したコア加速度データに含まれるZ軸方向の加速度の大きさに応じた大きさのボール移動ベクトルを算出する。   In step 103, the CPU 30 refers to the latest core acceleration data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da. Then, the CPU 30 calculates a ball movement vector according to the core acceleration data, updates the movement vector data Dc (step 104), and advances the processing to the next step. For example, the CPU 30 determines the acceleration in the Z-axis direction included in the referenced core acceleration data in the forward direction (for example, the movement direction; that is, the direction of the PC movement direction vector) of the player character PC keeping the ball object B. A ball movement vector having a size corresponding to the size of is calculated.

これにより、サブユニット76に設けられた方向指示部(スティック78a)でボールオブジェクトBの移動方向が制御されながら、ボールオブジェクトBの移動速度がコアユニット70に設けられた加速度センサ701から出力される加速度データに応じて決定される。つまり、プレイヤは、ボールオブジェクトの移動方向制御と移動速度制御とを、それぞれの手で独立して効率的かつ直感的に入力することができる。さらに、サブユニット76に設けられた方向指示部(スティック78a)の傾斜量に応じてボールオブジェクトBの移動速度を制御するようにして、ボールオブジェクトBの移動速度をサブユニット76に設けられた加速度センサ761から出力される加速度データ(または当該加速度データの所定軸方向の成分)に応じて補正するようにしてもよい(例えば、Z軸方向の加速度があったときに、所定値を加算してもよいし、n倍(n>1)するようにしてもよいし、Z軸方向の加速度の大きさに応じて倍数を決定するようにしてもよい)。つまり、プレイヤは、ボールオブジェクトの移動方向制御と移動速度制御(または移動速度補正制御)とを、それぞれの手で独立して効率的かつ直感的に入力することができる。 As a result, the moving speed of the ball object B is output from the acceleration sensor 701 provided in the core unit 70 while the moving direction of the ball object B is controlled by the direction indicating unit (stick 78a) provided in the subunit 76. It is determined according to the acceleration data. That is, the player can input the movement direction control and the movement speed control of the ball object B independently and efficiently with each hand. Further, the moving speed of the ball object B is controlled according to the amount of inclination of the direction indicating portion (stick 78 a) provided in the subunit 76, so that the moving speed of the ball object B is accelerated by the acceleration provided in the subunit 76. Correction may be made in accordance with acceleration data output from the sensor 761 (or a component of the acceleration data in a predetermined axis direction) (for example, when there is acceleration in the Z-axis direction, a predetermined value is added. Alternatively, it may be multiplied by n (n> 1), or a multiple may be determined according to the magnitude of acceleration in the Z-axis direction). That is, the player can input the moving direction control and the moving speed control (or moving speed correction control) of the ball object B independently and efficiently with each hand.

次に、CPU30は、操作情報DaからチームXの選手モード用サブユニットから送信された操作情報に含まれる最新のサブ加速度データを参照する(ステップ105)。そして、CPU30は、サブ加速度データが示すZ軸方向の加速度が負(つまり、Z軸負方向の加速度を検出)であるか否かを判断する(ステップ106)。そして、CPU30は、Z軸方向の加速度が負である場合、仮想ゲーム空間に対する垂直上方向のベクトルを、ボール移動ベクトルに加えて移動ベクトルデータDcを更新し(ステップ107)、次のステップ108に処理を進める。なお、当該加える垂直上方向のベクトルは、当該Z軸方向の加速度の大きさに応じた大きさとしてもよい。一方、CPU30は、Z軸方向の加速度が負でない場合、そのまま次のステップ108へ処理を進める。   Next, the CPU 30 refers to the latest sub acceleration data included in the operation information transmitted from the player mode subunit of the team X from the operation information Da (step 105). Then, the CPU 30 determines whether or not the acceleration in the Z-axis direction indicated by the sub acceleration data is negative (that is, the acceleration in the negative Z-axis direction is detected) (step 106). When the acceleration in the Z-axis direction is negative, the CPU 30 adds the vector in the vertical direction with respect to the virtual game space to the ball movement vector and updates the movement vector data Dc (step 107). Proceed with the process. Note that the vertical vertical vector to be added may have a magnitude corresponding to the magnitude of the acceleration in the Z-axis direction. On the other hand, if the acceleration in the Z-axis direction is not negative, the CPU 30 proceeds to the next step 108 as it is.

ステップ108において、CPU30は、上記ステップ105で参照したサブ加速度データが示すX軸方向の加速度データに応じてボール移動ベクトルを変更し、処理を次のステップに進める。例えば、CPU30は、仮想水平面に平行で当該ボール移動ベクトルに直交する方向(向きは、X軸方向の加速度データの正負で決定する)で当該X軸方向の加速度の大きさに応じた大きさのベクトルを、現在のボール移動ベクトルに加えて、移動ベクトルデータDcを更新する。   In step 108, the CPU 30 changes the ball movement vector according to the acceleration data in the X-axis direction indicated by the sub acceleration data referred to in step 105, and advances the processing to the next step. For example, the CPU 30 has a magnitude corresponding to the magnitude of the acceleration in the X-axis direction in a direction parallel to the virtual horizontal plane and orthogonal to the ball movement vector (the direction is determined by the sign of the acceleration data in the X-axis direction). The vector is added to the current ball movement vector, and the movement vector data Dc is updated.

これにより、サブユニット76に設けられた方向指示部(スティック78a)でボールオブジェクトBの移動方向が制御されながら、ボールオブジェクトBの移動方向がサブユニット76に設けられた加速度センサ761から出力される加速度データに応じて補正される。つまり、プレイヤは、ボールオブジェクトの移動方向制御と移動方向補正制御とを、片手で効率的かつ直感的に入力することができる。また、補正ベクトルの向きは、仮想ゲーム空間における固定方向(仮想垂直方向、仮想水平方向など)であってもよいし、仮想カメラの視線方向に基づく方向(当該視線方向または当該視線方向に直交する方向など)であってもよいし、方向指示部により決定される移動方向に基づく方向(当該移動方向に直交する方向など)であってもよいし、プレイヤキャラクタPCのローカル座標系における所定軸方向であってもよい。 As a result, the movement direction of the ball object B is controlled by the direction indicating unit (stick 78a) provided in the subunit 76, and the movement direction of the ball object B is output from the acceleration sensor 761 provided in the subunit 76. It is corrected according to the acceleration data. That is, the player can input the movement direction control and movement direction correction control of the ball object B efficiently and intuitively with one hand. The direction of the correction vector may be a fixed direction (virtual vertical direction, virtual horizontal direction, etc.) in the virtual game space, or a direction based on the visual line direction of the virtual camera (perpendicular to the visual line direction or the visual line direction). Direction), a direction based on the moving direction determined by the direction indicating unit (such as a direction orthogonal to the moving direction), or a predetermined axial direction in the local coordinate system of the player character PC even not good.

次に、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれるコア加速度データの履歴を参照し、XYZ軸方向それぞれに生じた直近の所定時間分の加速度平均を算出する(ステップ109)。そして、CPU30は、上記ステップ109で算出したZ軸方向の加速度平均の大きさが所定値以上か否かを判断する(ステップ110)。そして、CPU30は、Z軸方向の加速度平均の大きさが所定値以上である場合、ステップ111に処理を進める。一方、CPU30は、Z軸方向の加速度平均の大きさが所定値未満である場合、ステップ112に処理を進める。   Next, the CPU 30 refers to the history of core acceleration data included in the operation information transmitted from the player mode core unit of the team X based on the operation information Da, and the acceleration for the most recent predetermined time generated in each of the XYZ axis directions. An average is calculated (step 109). Then, the CPU 30 determines whether or not the average acceleration magnitude in the Z-axis direction calculated in step 109 is equal to or greater than a predetermined value (step 110). Then, when the acceleration average magnitude in the Z-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 111. On the other hand, if the average acceleration in the Z-axis direction is less than the predetermined value, the CPU 30 advances the process to step 112.

ステップ111において、CPU30は、ボール移動ベクトルの大きさを増加させる。例えば、所定値を加算してもよいし、n倍(n>1)してもよいし、上記ステップ109で算出したZ軸方向の加速度平均の大きさに応じて増加させてもよい。   In step 111, the CPU 30 increases the magnitude of the ball movement vector. For example, a predetermined value may be added, multiplied by n (n> 1), or increased according to the average acceleration magnitude in the Z-axis direction calculated in step 109.

ステップ112において、CPU30は、上記ステップ109で算出したY軸方向の加速度平均の大きさが所定値以上か否かを判断する。なお、図5等から明らかなように、コアユニット70を水平に保持した場合、重力加速度がY軸負方向に常に作用するため、ステップ112における判定基準は、当該重力加速度を考慮した所定値を設定するのが好ましい。そして、CPU30は、Y軸方向の加速度平均の大きさが所定値以上である場合、ステップ113に処理を進める。一方、CPU30は、Y軸方向の加速度平均の大きさが所定値未満である場合、ステップ114に処理を進める。   In step 112, the CPU 30 determines whether or not the average acceleration magnitude in the Y-axis direction calculated in step 109 is equal to or greater than a predetermined value. As is clear from FIG. 5 and the like, when the core unit 70 is held horizontally, the gravitational acceleration always acts in the negative Y-axis direction. It is preferable to set. Then, when the average acceleration magnitude in the Y-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 113. On the other hand, if the average acceleration magnitude in the Y-axis direction is less than the predetermined value, the CPU 30 advances the process to step 114.

ステップ113において、CPU30は、垂直上方向のベクトルを、ボール移動ベクトルに加えて移動ベクトルデータDcを更新し、次のステップ114に処理を進める。当該垂直上方向のベクトルの大きさは、固定の大きさでもよいし、上記ステップ109で算出したY軸方向の加速度平均の大きさに応じた大きさでもよい。   In step 113, the CPU 30 adds the vertical upward vector to the ball movement vector to update the movement vector data Dc, and proceeds to the next step 114. The magnitude of the vertical upward vector may be a fixed magnitude, or may be a magnitude corresponding to the average acceleration magnitude in the Y-axis direction calculated in step 109.

ステップ114において、CPU30は、上記ステップ109で算出したX軸方向の加速度平均の大きさが所定値以上か否かを判断する。そして、CPU30は、X軸方向の加速度平均の大きさが所定値以上である場合、ステップ115に処理を進める。一方、CPU30は、X軸方向の加速度平均の大きさが所定値未満である場合、当該サブルーチンによる処理を終了して、上記ステップ18の処理へ進める。   In step 114, the CPU 30 determines whether or not the average acceleration in the X-axis direction calculated in step 109 is equal to or greater than a predetermined value. Then, when the acceleration average magnitude in the X-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 115. On the other hand, when the acceleration average magnitude in the X-axis direction is less than the predetermined value, the CPU 30 ends the process by the subroutine and proceeds to the process of step 18.

ステップ115において、CPU30は、仮想水平面に平行で当該ボール移動ベクトルに直交する方向(向きは、X軸方向の加速度平均の正負で決定する)のベクトルを、現在のボール移動ベクトルに加えて、移動ベクトルデータDcを更新する。そして、CPU30は、当該サブルーチンによる処理を終了して、上記ステップ18の処理へ進める。なお、上記直交する方向のベクトルの大きさは、上記ステップ109で算出したX軸方向の加速度平均の大きさに応じた大きさとしてもよい。   In step 115, the CPU 30 adds a vector in a direction parallel to the virtual horizontal plane and orthogonal to the ball movement vector (the direction is determined by the positive / negative acceleration average in the X-axis direction) to the current ball movement vector, and moves The vector data Dc is updated. Then, the CPU 30 ends the process by the subroutine and proceeds to the process of step 18 above. Note that the magnitude of the vector in the orthogonal direction may be a magnitude corresponding to the magnitude of the average acceleration in the X-axis direction calculated in step 109.

このように、所定操作ボタン(上述の例ではコアユニット70の操作ボタンとしたがサブユニット76の操作ボタンでもよい)を操作したときにキャラクタ(ボールオブジェクトB)が移動開始し、当該移動方向がサブユニット76の方向指示部による指示方向に基づいて決定される。さらに、上記移動方向は、上記所定操作ボタンを操作する前のコアユニット70の加速度センサ701の出力に応じて補正される(典型的には、上記所定操作ボタンを操作する前の、直近の所定時間における加速度センサ701の出力を利用する)。これにより、プレイヤは、ボールオブジェクトBの移動方向制御と移動方向補正制御とを、それぞれの手で独立して効率的かつ直感的に入力することができる。なお、上記移動方向を、上記所定操作ボタンを操作する前の加速度センサ761の出力に応じて補正するようにしてもよい。また、補正ベクトルの向きは、仮想ゲーム空間の座標系における所定方向(典型的には、いずれかの軸の方向)であってもよいし、カメラ座標系における所定方向であってもよいし、ローカル座標系における所定方向であってもよいし、カメラ座標系を仮想水平面に投影した座標系であってもよいし、方向指示部により決定される移動方向に基づく方向(当該移動方向に直交する方向など)であってもよい。これにより、プレイヤは、ボールオブジェクトBの移動方向制御と移動方向補正制御とを、効率的かつ直感的に入力することができる。   Thus, when a predetermined operation button (in the above example, the operation button of the core unit 70 is used but the operation button of the subunit 76 may be operated), the character (ball object B) starts to move, and the movement direction is It is determined based on the direction indicated by the direction indicator of the subunit 76. Further, the moving direction is corrected according to the output of the acceleration sensor 701 of the core unit 70 before the predetermined operation button is operated (typically, the most recent predetermined operation before the predetermined operation button is operated). The output of the acceleration sensor 701 in time is used). Thus, the player can efficiently and intuitively input the movement direction control and the movement direction correction control of the ball object B independently with each hand. The moving direction may be corrected according to the output of the acceleration sensor 761 before operating the predetermined operation button. The direction of the correction vector may be a predetermined direction (typically, the direction of any axis) in the coordinate system of the virtual game space, may be a predetermined direction in the camera coordinate system, It may be a predetermined direction in the local coordinate system, a coordinate system obtained by projecting the camera coordinate system onto a virtual horizontal plane, or a direction based on the moving direction determined by the direction indicating unit (perpendicular to the moving direction) Direction). Thereby, the player can input the moving direction control and the moving direction correction control of the ball object B efficiently and intuitively.

また、ステップ17における第1シュート処理においては、プレイヤがAおよびBボタンを同時に押下することによって、ボールオブジェクトBをキープするプレイヤキャラクタPCがシュートする動作を行う。そして、プレイヤキャラクタPCがシュートする初速度および初期方向は、プレイヤキャラクタPCが向く方向と、コアユニット70から得られるコア加速度データが示す加速度の大きさと、サブユニット76から得られるサブ加速度データが示す加速度の大きさとによって決定される。つまり、プレイヤキャラクタPCがシュートする初期軌道は、単純なボタン操作のみによって決定されるものではなく、プレイヤがシュート操作を行ったときのコアユニット70およびサブユニット76全体の動作に応じて決定される。したがって、プレイヤは、コアユニット70およびサブユニット76全体を動かしながら、自由度のあるシュートを放つことが可能でありリアルなサッカーゲームが実現できる。   Further, in the first shoot process in step 17, the player character PC that keeps the ball object B performs a shooting action when the player simultaneously presses the A and B buttons. The initial velocity and the initial direction in which the player character PC shoots are indicated by the direction in which the player character PC faces, the magnitude of acceleration indicated by the core acceleration data obtained from the core unit 70, and the sub acceleration data obtained from the subunit 76. It is determined by the magnitude of acceleration. That is, the initial trajectory that the player character PC shoots is not determined only by a simple button operation, but is determined according to the movements of the core unit 70 and the subunit 76 as a whole when the player performs a shoot operation. . Therefore, the player can shoot with a degree of freedom while moving the entire core unit 70 and the subunit 76, and a realistic soccer game can be realized.

次に、図22を参照して、上記ステップ18における第2シュート処理について、詳細な動作を説明する。   Next, with reference to FIG. 22, the detailed operation of the second chute process in step 18 will be described.

図22において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれるコアキーデータの履歴を参照する(ステップ121)。次に、CPU30は、上記ステップ121で参照したコアキーデータに基づいて、プレイヤがコアユニット70の操作部72d(Aボタン)および操作部72i(Bボタン)を同時に押下してから所定時間内か否かを判断する(ステップ122)。そして、CPU30は、プレイヤがAおよびBボタンを同時に押下してから所定時間内の場合、次のステップ123に処理を進める。一方、CPU30は、プレイヤがAおよびBボタンを同時に押下してから所定時間内でない場合、当該サブルーチンによる処理を終了して、上記ステップ19の処理へ進める。   In FIG. 22, the CPU 30 refers to the history of the core key data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da (step 121). Next, based on the core key data referred to in step 121, the CPU 30 determines whether the player has pressed the operation unit 72d (A button) and the operation unit 72i (B button) of the core unit 70 at the same time. It is determined whether or not (step 122). And CPU30 advances a process to the following step 123, when it is within predetermined time, after a player presses A and B button simultaneously. On the other hand, if it is not within a predetermined time since the player simultaneously pressed the A and B buttons, the CPU 30 ends the process by the subroutine and proceeds to the process of step 19.

ステップ123において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコア加速度データを参照する。そして、CPU30は、上記ステップ123で参照したコア加速度データが示すZ軸方向の加速度の大きさが所定値以上か否かを判断する(ステップ124)。そして、CPU30は、Z軸方向の加速度の大きさが所定値以上である場合、ステップ125に処理を進める。一方、CPU30は、Z軸方向の加速度の大きさが所定値未満である場合、ステップ126に処理を進める。   In step 123, the CPU 30 refers to the latest core acceleration data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da. Then, the CPU 30 determines whether or not the magnitude of the acceleration in the Z-axis direction indicated by the core acceleration data referred to in step 123 is equal to or greater than a predetermined value (step 124). If the magnitude of acceleration in the Z-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 125. On the other hand, if the magnitude of acceleration in the Z-axis direction is less than the predetermined value, the CPU 30 advances the process to step 126.

ステップ125において、CPU30は、ボール移動ベクトルの大きさを増加させる。例えば、所定値を加算してもよいし、n倍(n>1)してもよいし、上記ステップ123で参照したコア加速度データが示すZ軸方向の加速度の大きさに応じて増加させてもよい。   In step 125, the CPU 30 increases the magnitude of the ball movement vector. For example, a predetermined value may be added, n times (n> 1), or increased according to the magnitude of acceleration in the Z-axis direction indicated by the core acceleration data referred to in step 123 above. Also good.

ステップ126において、CPU30は、上記ステップ123で参照したコア加速度データが示すY軸方向の加速度の大きさが所定値以上か否かを判断する。なお、図5等から明らかなように、コアユニット70を水平に保持した場合、重力加速度がY軸負方向に常に作用するため、ステップ126における判定基準も、当該重力加速度を考慮した所定値を設定するのが好ましい。そして、CPU30は、Y軸方向の加速度の大きさが所定値以上である場合、ステップ127に処理を進める。一方、CPU30は、Y軸方向の加速度の大きさが所定値未満である場合、ステップ128に処理を進める。   In step 126, the CPU 30 determines whether or not the magnitude of the acceleration in the Y-axis direction indicated by the core acceleration data referenced in step 123 is equal to or greater than a predetermined value. As is clear from FIG. 5 and the like, when the core unit 70 is held horizontally, the gravitational acceleration always acts in the negative Y-axis direction, so the determination criterion in step 126 is also a predetermined value considering the gravitational acceleration. It is preferable to set. If the magnitude of acceleration in the Y-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 127. On the other hand, if the magnitude of acceleration in the Y-axis direction is less than the predetermined value, the CPU 30 advances the process to step 128.

ステップ127において、CPU30は、仮想ゲーム空間に対する垂直上方向のベクトルを、ボール移動ベクトルに加えて移動ベクトルデータDcを更新し、次のステップ128に処理を進める。ここで、当該垂直方向のベクトルの大きさは固定の大きさとしてもよいし、上記ステップ123で参照したコア加速度データが示すY軸方向の加速度の大きさに応じた大きさとしてもよい。   In step 127, the CPU 30 adds the vertical upward vector with respect to the virtual game space to the ball movement vector to update the movement vector data Dc, and proceeds to the next step 128. Here, the magnitude of the vector in the vertical direction may be a fixed magnitude, or may be a magnitude corresponding to the magnitude of the acceleration in the Y-axis direction indicated by the core acceleration data referenced in step 123.

ステップ128において、CPU30は、上記ステップ123で参照したコア加速度データが示すX軸方向の加速度の大きさが所定値以上か否かを判断する。そして、CPU30は、X軸方向の加速度の大きさが所定値以上である場合、ステップ129に処理を進める。一方、CPU30は、X軸方向の加速度の大きさが所定値未満である場合、当該サブルーチンによる処理を終了して、上記ステップ19の処理へ進める。   In step 128, the CPU 30 determines whether or not the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data referred to in step 123 is equal to or greater than a predetermined value. If the magnitude of the acceleration in the X-axis direction is equal to or greater than a predetermined value, the CPU 30 advances the process to step 129. On the other hand, when the magnitude of the acceleration in the X-axis direction is less than the predetermined value, the CPU 30 ends the process by the subroutine and proceeds to the process of step 19 above.

ステップ129において、CPU30は、仮想水平面に平行で当該ボール移動ベクトルに直交する方向(向きは、X軸方向の加速度の正負で決定する)のベクトルを、現在のボール移動ベクトルに加えて、移動ベクトルデータDcを更新する。ここで、上記直交する方向のベクトルの大きさは固定の大きさとしてもよいし、上記ステップ123で参照したコア加速度データが示すX軸方向の加速度の大きさに応じた大きさとしてもよい。そして、CPU30は、当該サブルーチンによる処理を終了して、上記ステップ19の処理へ進める。   In step 129, the CPU 30 adds a vector in the direction parallel to the virtual horizontal plane and orthogonal to the ball movement vector (the direction is determined by the positive / negative acceleration in the X-axis direction) to the current ball movement vector, Data Dc is updated. Here, the magnitude of the vector in the orthogonal direction may be a fixed magnitude, or may be a magnitude corresponding to the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data referenced in step 123. Then, the CPU 30 ends the process by the subroutine and proceeds to the process of step 19 above.

このように、所定操作ボタン(上述の例ではコアユニット70の操作ボタンとしたがサブユニット76の操作ボタンでもよい)を操作したときにキャラクタ(ボールオブジェクトB)が移動開始し、当該移動方向がサブユニット76の方向指示部による指示方向に基づいて決定される。さらに、上記移動方向は、上記所定操作ボタンを操作した後におけるコアユニット70の加速度センサ701の出力に応じて補正される(典型的には、上記所定操作ボタンを操作した直後の直近の所定時間における加速度センサ701の出力を利用する)。これにより、プレイヤは、ボールオブジェクトBの移動方向制御と移動方向補正制御とを、それぞれの手で独立して効率的かつ直感的に入力することができる。なお、上記移動方向を、上記所定操作ボタンを操作した後のおける加速度センサ761の出力に応じて補正するようにしてもよい。また、仮想ゲーム空間の座標系における所定方向(典型的には、いずれかの軸の方向)であってもよいし、カメラ座標系における所定方向であってもよいし、ローカル座標系における所定方向であってもよいし、カメラ座標系を仮想水平面に投影した座標系であってもよいし、方向指示部により決定される移動方向に基づく方向(当該移動方向に直交する方向など)であってもよい。これにより、プレイヤは、ボールオブジェクトBの移動方向制御と移動方向補正制御とを、効率的かつ直感的に入力することができる。   Thus, when a predetermined operation button (in the above example, the operation button of the core unit 70 is used but the operation button of the subunit 76 may be operated), the character (ball object B) starts to move, and the movement direction is It is determined based on the direction indicated by the direction indicator of the subunit 76. Further, the moving direction is corrected according to the output of the acceleration sensor 701 of the core unit 70 after the predetermined operation button is operated (typically, the most recent predetermined time immediately after the predetermined operation button is operated). The output of the acceleration sensor 701 in FIG. Thus, the player can efficiently and intuitively input the movement direction control and the movement direction correction control of the ball object B independently with each hand. Note that the moving direction may be corrected according to the output of the acceleration sensor 761 after operating the predetermined operation button. Further, it may be a predetermined direction (typically, the direction of any axis) in the coordinate system of the virtual game space, a predetermined direction in the camera coordinate system, or a predetermined direction in the local coordinate system. Or a coordinate system obtained by projecting the camera coordinate system onto a virtual horizontal plane, or a direction based on the moving direction determined by the direction indicating unit (such as a direction orthogonal to the moving direction). Also good. Thereby, the player can input the moving direction control and the moving direction correction control of the ball object B efficiently and intuitively.

このように、ステップ18における第2シュート処理においては、プレイヤがAおよびBボタンを同時に押下してシュート操作した後のボールの軌道は、コアユニット70から得られるコア加速度データに応じて、移動速度、移動方向、移動距離等が決定される。例えば、図28に示すように、ボールオブジェクトBのボール移動ベクトルVmbによって決定された軌道aは、コアユニット70から得られるコア加速度データに応じて軌道bや軌道cのように変化させることが可能である。つまり、プレイヤキャラクタPCの移動制御が方向入力で行われながら、シュートした後の軌道が単純なボタン操作のみによって決定されるものではなく、プレイヤがシュート操作を行った後のコアユニット70全体の動作に応じて決定される。したがって、プレイヤは、プレイヤキャラクタPCの移動方向を制御しつつ、コアユニット70全体を動かしながら直感的にシュート軌道を変化させることができ、リアルなサッカーゲームが実現できる。   As described above, in the second shooting process in step 18, the ball trajectory after the player performs the shooting operation by simultaneously pressing the A and B buttons is determined according to the core acceleration data obtained from the core unit 70. The moving direction, the moving distance, etc. are determined. For example, as shown in FIG. 28, the trajectory a determined by the ball movement vector Vmb of the ball object B can be changed to a trajectory b or a trajectory c according to the core acceleration data obtained from the core unit 70. It is. That is, while the movement control of the player character PC is performed by the direction input, the trajectory after shooting is not determined only by a simple button operation, but the entire operation of the core unit 70 after the player performs the shooting operation. It is decided according to. Therefore, the player can intuitively change the shooting trajectory while moving the entire core unit 70 while controlling the moving direction of the player character PC, and a realistic soccer game can be realized.

次に、図23を参照して、上記ステップ19における一時監督モード処理について、詳細な動作を説明する。   Next, with reference to FIG. 23, detailed operation | movement is demonstrated about the temporary supervision mode process in the said step 19. FIG.

図23において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコアキーデータを参照する(ステップ131)。次に、CPU30は、上記ステップ131で参照したコアキーデータに基づいて、プレイヤがコアユニット70の操作部72a(十字キー)の上方向を押下しているか否かを判断する(ステップ132)。そして、CPU30は、プレイヤが十字キーの上方向を押下している場合、次のステップ133に処理を進める。一方、CPU30は、プレイヤが十字キーの上方向を押下していない場合、次のステップ136に処理を進める。   In FIG. 23, the CPU 30 refers to the latest core key data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da (step 131). Next, the CPU 30 determines whether or not the player is pressing the upward direction of the operation unit 72a (cross key) of the core unit 70 based on the core key data referred to in the above step 131 (step 132). Then, when the player presses the upward direction of the cross key, the CPU 30 advances the process to the next step 133. On the other hand, when the player has not pressed the upward direction of the cross key, the CPU 30 proceeds to the next step 136.

ステップ133において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新のコア加速度データを参照する。次に、CPU30は、コア加速度データが示すX軸方向の加速度の大きさが所定値以上であるか否かを判断する(ステップ134)。そして、CPU30は、X軸方向の加速度の大きさが所定値以上である場合、次のステップ135に処理を進める。一方、CPU30は、X軸方向の加速度の大きさが所定値未満である場合、次のステップ136に処理を進める。   In step 133, the CPU 30 refers to the latest core acceleration data included in the operation information transmitted from the player mode core unit of the team X from the operation information Da. Next, the CPU 30 determines whether or not the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data is greater than or equal to a predetermined value (step 134). Then, when the magnitude of acceleration in the X-axis direction is equal to or greater than a predetermined value, the CPU 30 proceeds to the next step 135. On the other hand, when the magnitude of the acceleration in the X-axis direction is less than the predetermined value, the CPU 30 advances the process to the next step 136.

ステップ135において、CPU30は、上記ステップ133で参照したコア加速度データが示すX軸方向の加速度の大きさに基づいて、チームXのノンプレイヤキャラクタNPC全ての移動ベクトルを更新して、移動ベクトルデータDcを更新し、次のステップ136に処理を進める。例えば、図29に示すように、CPU30は、仮想ゲーム空間に設定されたサッカーフィールドのタッチラインと平行な方向の補正ベクトルを、チームXのノンプレイヤキャラクタNPC全ての移動ベクトルに加え、新たな移動ベクトルVmnpcを算出する。上記補正ベクトルは、固定の大きさとしてもよいし、上記X軸方向の加速度の大きさに応じた大きさとしてもよい。なお、補正ベクトルの方向を、コア加速度データが示す加速度の方向に応じて決定してもよい。この場合、以下のような例が考えられる。   In step 135, the CPU 30 updates the movement vectors of all the non-player characters NPC of the team X based on the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data referenced in step 133, and the movement vector data Dc. And the process proceeds to the next step 136. For example, as shown in FIG. 29, the CPU 30 adds a correction vector in a direction parallel to the touch line of the soccer field set in the virtual game space to the movement vector of all the non-player characters NPC of the team X, and performs a new movement. A vector Vmnpc is calculated. The correction vector may be a fixed magnitude or a magnitude corresponding to the magnitude of the acceleration in the X-axis direction. The direction of the correction vector may be determined according to the direction of acceleration indicated by the core acceleration data. In this case, the following examples can be considered.

補正ベクトルの方向を決定する第1の例として、コア加速度データの各軸を、それぞれ、仮想ゲーム空間座標の直交する3方向に対応付けて(典型的には、仮想空間座標の各軸に対応付けて)、コア加速度データの出力ベクトルを、仮想ゲーム空間の方向ベクトルに変換する。   As a first example of determining the direction of the correction vector, each axis of the core acceleration data is associated with each of the three orthogonal directions of the virtual game space coordinates (typically corresponding to each axis of the virtual space coordinates) In addition, the output vector of the core acceleration data is converted into a direction vector of the virtual game space.

補正ベクトルの方向を決定する第2の例として、コア加速度データの各軸を、それぞれ、所定キャラクタ(プレイヤキャラクタPCなど)のローカル座標系の各軸に対応付けて、コア加速度データの出力ベクトルを、仮想ゲーム空間の方向ベクトルに変換する。   As a second example of determining the direction of the correction vector, each axis of the core acceleration data is associated with each axis of the local coordinate system of a predetermined character (player character PC or the like), and an output vector of the core acceleration data is obtained. , Convert to the direction vector of the virtual game space.

補正ベクトルの方向を決定する第3の例として、コア加速度データの各軸を、それぞれ、カメラ座標系の各軸(またはカメラ座標系のX、Z軸を仮想水平面に投影した軸)に対応付けて、コア加速度データの出力ベクトルを、仮想空間の方向ベクトルに変換する。   As a third example of determining the direction of the correction vector, each axis of the core acceleration data is associated with each axis of the camera coordinate system (or an axis obtained by projecting the X and Z axes of the camera coordinate system onto the virtual horizontal plane). Then, the output vector of the core acceleration data is converted into a virtual space direction vector.

補正ベクトルの方向を決定する第4の例として、コア加速度データの各軸を、所定キャラクタの移動方向ベクトル(または向きベクトル)とそれに直交する2方向とに対応付けて、コア加速度データの出力ベクトルを、仮想ゲーム空間の方向ベクトルに変換する。   As a fourth example of determining the direction of the correction vector, each axis of the core acceleration data is associated with the moving direction vector (or direction vector) of the predetermined character and two directions orthogonal thereto, and the output vector of the core acceleration data Is converted into a direction vector of the virtual game space.

なお、上記ステップ135の処理においては、コア加速度データの代わりに、サブ加速度データの出力を利用しても良い。   In the process of step 135, the output of the sub acceleration data may be used instead of the core acceleration data.

また、上記ステップ135の処理においては、チームXのプレイヤキャラクタPCの移動ベクトルについても、同様のベクトル加算を行って更新してもかまわない。また、チームXのノンプレイヤキャラクタNPCの何れか(例えば、チームXのゴールキーパー)を、ベクトル加算の対象から外してもかまわない。また、上述した処理では、タッチラインと平行な方向でX軸方向の加速度の大きさに応じた大きさのベクトルを加算する例を示したが、当該ベクトルをそのままチームXのノンプレイヤキャラクタNPC全ての移動ベクトルに設定してもかまわない。さらに、加算するベクトルの方向は、仮想カメラの視線方向ベクトルを仮想ゲーム空間の仮想水平面に投影した方向に対して垂直な水平方向や、当該視線方向を基準とした他の方向に設定してもかまわない。また、一般的に、コアユニット70をある方向に動かし始めのときに加速度センサ701によって検出される加速度ベクトルの方向は、当該動かす方向とは反対方向であるので、そのときに検出された加速度ベクトルの方向を反対にして利用してもかまわない。また、コアユニット70をある方向に動かした後、その動きを止めたときに加速度センサ701によって検出される加速度ベクトルの方向は、当該動かす方向であるので、そのときの検出を使用してもかまわない。この点は、本願明細書の他の箇所に記載した同様の処理についても同じである。   In the process of step 135, the movement vector of the player character PC of the team X may be updated by performing the same vector addition. Further, any of the non-player characters NPC of Team X (for example, the goalkeeper of Team X) may be excluded from the vector addition target. In the above-described processing, an example in which a vector having a magnitude corresponding to the magnitude of acceleration in the X-axis direction in the direction parallel to the touch line is shown. However, the vector is used as it is for all non-player characters NPC of team X. It may be set to the movement vector. Furthermore, the direction of the vector to be added may be set to a horizontal direction perpendicular to the direction in which the visual direction vector of the virtual camera is projected onto the virtual horizontal plane of the virtual game space, or another direction based on the visual direction. It doesn't matter. In general, the direction of the acceleration vector detected by the acceleration sensor 701 when the core unit 70 starts to move in a certain direction is opposite to the moving direction, and thus the acceleration vector detected at that time is detected. You can use it in the opposite direction. In addition, since the direction of the acceleration vector detected by the acceleration sensor 701 when the core unit 70 is moved in a certain direction and then stopped is the movement direction, the detection at that time may be used. Absent. This is the same for the same processing described elsewhere in this specification.

このように、プレイヤキャラクタPCの移動方向がサブユニット76のスティック78aによって制御され、複数のノンプレイヤキャラクタNPC(プレイヤキャラクタPCを含めても良い)の移動方向がコアユニット70から得られるコア加速度データ(またはサブ加速度データでもよい)に応じて制御される。つまり、プレイヤは、方向指示手段で特定キャラクタの移動方向を制御しながら、コアユニット70全体(またはサブユニット76全体)の動作によって複数のキャラクタの移動方向の制御を行うことができる。したがって、プレイヤは、特定キャラクタの移動方向を方向指示手段で制御しながら、複数のキャラクタの移動方向も直感的に操作することができる。   In this way, the core acceleration data in which the moving direction of the player character PC is controlled by the stick 78 a of the subunit 76 and the moving directions of a plurality of non-player characters NPC (may include the player character PC) are obtained from the core unit 70. (Or may be sub acceleration data). That is, the player can control the movement direction of a plurality of characters by the movement of the entire core unit 70 (or the entire subunit 76) while controlling the movement direction of the specific character with the direction instruction means. Therefore, the player can intuitively operate the moving directions of the plurality of characters while controlling the moving direction of the specific character with the direction instruction means.

ステップ136において、CPU30は、上記ステップ131で参照したコアキーデータに基づいて、プレイヤがコアユニット70の十字キーの下方向を押下しているか否かを判断する。そして、CPU30は、プレイヤが十字キーの下方向を押下している場合、次のステップ137に処理を進める。一方、CPU30は、プレイヤが十字キーの下方向を押下していない場合、当該サブルーチンによる処理を終了して、次のステップ20に処理を進める。   In step 136, the CPU 30 determines whether or not the player is pressing down the cross key of the core unit 70 based on the core key data referenced in step 131. Then, when the player presses the downward direction of the cross key, the CPU 30 advances the processing to the next step 137. On the other hand, when the player has not pressed the down direction of the cross key, the CPU 30 ends the process by the subroutine and proceeds to the next step 20.

ステップ137において、CPU30は、操作情報DaからチームXの選手モード用コアユニットから送信された操作情報に含まれる最新の第1座標データDa1および第2座標データDa2を参照する。次に、CPU30は、上記ステップ137で参照した第1座標データDa1および第2座標データDa2に対応する指示座標、および当該指示座標に対応する仮想空間位置を算出して、それぞれチームXの選手モード用コアユニットに対応する指示座標データDeおよび仮想空間位置座標データDfを更新して(ステップ138)、処理を次のステップに進める。なお、上記ステップ138で算出する指示座標および仮想空間位置の算出方法については、上記ステップ84と同様であるため、詳細な説明を省略する。   In step 137, the CPU 30 refers to the latest first coordinate data Da1 and second coordinate data Da2 included in the operation information transmitted from the player mode core unit of the team X from the operation information Da. Next, the CPU 30 calculates the instruction coordinates corresponding to the first coordinate data Da1 and the second coordinate data Da2 referred to in step 137 and the virtual space position corresponding to the instruction coordinates, and each player mode of the team X The instruction coordinate data De and the virtual space position coordinate data Df corresponding to the core unit for use are updated (step 138), and the process proceeds to the next step. Note that the method of calculating the designated coordinates and the virtual space position calculated in step 138 is the same as that in step 84, and a detailed description thereof will be omitted.

次に、CPU30は、指示対象選手データDgを参照して、チームXの選手モード用コントローラ7の指示対象選手が設定されているか否かを判断する(ステップ139)。そして、CPU30は、指示対象選手が未設定の場合、次のステップ141に処理を進める。一方、CPU30は、指示対象選手が設定されている場合、次のステップ143に処理を進める。   Next, the CPU 30 refers to the instruction target player data Dg and determines whether or not the instruction target player of the player mode controller 7 of the team X is set (step 139). And CPU30 advances a process to the following step 141, when an instruction | indication object player is not set. On the other hand, when the instruction target player is set, the CPU 30 advances the processing to the next step 143.

ステップ141において、CPU30は、上記ステップ138で算出された仮想空間位置を中心とした領域A(図27参照)内に、チームXの選手キャラクタのいずれかが配置されているか否かを判断する。次に、CPU30は、領域A内にチームXの選手キャラクタが配置されている場合、当該選手キャラクタをチームXの選手モード用コントローラ7の指示対象選手に設定して、そのキャラクタ識別番号等を指示対象選手データDgに記述する(ステップ142)。なお、上記領域A内にチームXの選手キャラクタが複数存在する場合には、ステップ138で算出された仮想空間位置に最も近い選手キャラクタが指示対象選手に設定される。そして、CPU30は、当該サブルーチンによる処理を終了して、次のステップ20に処理を進める。一方、CPU30は、領域A内にチームXの選手キャラクタが1人も配置されていない場合、そのまま当該サブルーチンによる処理を終了して、次のステップ20に処理を進める。   In step 141, the CPU 30 determines whether any of the player characters of the team X is arranged in the area A (see FIG. 27) centered on the virtual space position calculated in step 138. Next, when the player character of team X is arranged in the area A, the CPU 30 sets the player character as an instruction target player of the player mode controller 7 of team X and instructs the character identification number and the like. This is described in the target player data Dg (step 142). When there are a plurality of player characters of team X in the area A, the player character closest to the virtual space position calculated in step 138 is set as the instruction target player. Then, the CPU 30 ends the process by the subroutine and proceeds to the next step 20. On the other hand, when no player character of team X is arranged in the area A, the CPU 30 ends the process by the subroutine as it is and proceeds to the next step 20.

ステップ143において、CPU30は、算出された仮想空間座標が仮想ゲーム空間に設定されたサッカーフィールド内か否かを判断する。次に、CPU30は、仮想空間座標が上記サッカーフィールド内である場合、仮想空間位置に応じて指示対象選手の移動ベクトルを設定して移動ベクトルデータDcを更新する(ステップ144)。例えば、CPU30は、指示対象選手の現在の配置位置から仮想空間位置TP(図27参照)に向かう方向を当該指示対象選手の移動ベクトルの方向とする。さらに、現在の配置位置から仮想空間位置TPまでの仮想距離に応じた大きさを当該指示対象選手の移動ベクトルの大きさとして設定してもよい。そして、CPU30は、指示対象選手データDgに記述されたチームXの選手モード用コントローラの指示対象選手をクリアし(ステップ145)、当該サブルーチンによる処理を終了して、次のステップ20に処理を進める。一方、CPU30は、仮想空間座標が上記サッカーフィールド外である場合、そのまま当該サブルーチンによる処理を終了して、次のステップ20に処理を進める。なお、ステップ145において、指示対象選手をクリアしなくてもよく、この場合には、指示対象選手を設定した後、その指示対象選手に対して複数回移動指示を出すことが可能になる(この場合には、ボタン操作や所定領域への座標指示などに応じて当該クリアの処理をするとよい)。   In step 143, the CPU 30 determines whether or not the calculated virtual space coordinates are within the soccer field set in the virtual game space. Next, when the virtual space coordinates are within the soccer field, the CPU 30 sets the movement vector of the instruction target player according to the virtual space position and updates the movement vector data Dc (step 144). For example, the CPU 30 sets the direction from the current arrangement position of the instruction target player to the virtual space position TP (see FIG. 27) as the direction of the movement vector of the instruction target player. Furthermore, a size corresponding to the virtual distance from the current arrangement position to the virtual space position TP may be set as the size of the movement vector of the instruction target player. Then, the CPU 30 clears the instruction target player of the player mode controller of the team X described in the instruction target player data Dg (step 145), ends the processing by the subroutine, and advances the processing to the next step 20. . On the other hand, when the virtual space coordinates are outside the soccer field, the CPU 30 ends the process by the subroutine as it is and proceeds to the next step 20. In step 145, it is not necessary to clear the instruction target player. In this case, after setting the instruction target player, it is possible to issue a movement instruction to the instruction target player a plurality of times (this In this case, the clearing process may be performed according to a button operation or a coordinate instruction to a predetermined area).

次に、図24を参照して、上記ステップ20における監督モード処理について、詳細な動作を説明する。   Next, with reference to FIG. 24, the detailed operation of the supervisor mode processing in step 20 will be described.

図24において、CPU30は、コントローラ識別番号データDbを参照して、チームXについて監督モード用のコントローラ識別番号が設定されているか否かを判断する(ステップ151)。そして、CPU30は、チームXについて監督モード用のコントローラ識別番号が設定されている場合、次のステップ152に処理を進める。一方、CPU30は、チームXについて監督モード用のコントローラ識別番号が設定されていない場合、当該サブルーチンによる処理を終了して、次のステップ21に処理を進める。   In FIG. 24, the CPU 30 refers to the controller identification number data Db and determines whether or not the supervisor mode controller identification number is set for the team X (step 151). When the controller identification number for the supervisor mode is set for the team X, the CPU 30 proceeds to the next step 152. On the other hand, when the controller identification number for the supervisor mode is not set for the team X, the CPU 30 ends the process by the subroutine and proceeds to the next step 21.

ステップ152において、CPU30は、操作情報DaからチームXの監督モード用コアユニットから送信された操作情報に含まれる最新のコア加速度データを参照する。次に、CPU30は、コア加速度データが示すX軸方向の加速度の大きさが所定値以上であるか否かを判断する(ステップ153)。そして、CPU30は、X軸方向の加速度の大きさが所定値以上である場合、次のステップ154に処理を進める。一方、CPU30は、X軸方向の加速度の大きさが所定値未満である場合、次のステップ155に処理を進める。   In step 152, the CPU 30 refers to the latest core acceleration data included in the operation information transmitted from the team mode X supervisory mode unit unit from the operation information Da. Next, the CPU 30 determines whether or not the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data is greater than or equal to a predetermined value (step 153). Then, the CPU 30 proceeds to the next step 154 when the magnitude of acceleration in the X-axis direction is equal to or greater than a predetermined value. On the other hand, if the magnitude of acceleration in the X-axis direction is less than the predetermined value, the CPU 30 advances the process to the next step 155.

ステップ154において、CPU30は、上記ステップ152で参照したコア加速度データが示すX軸方向の加速度の大きさに基づいて、チームXのノンプレイヤキャラクタNPC全ての移動ベクトルを更新して、移動ベクトルデータDcを更新し、次のステップ155に処理を進める。例えば、図29に示すように、CPU30は、仮想ゲーム空間に設定されたサッカーフィールドのタッチラインと平行な方向の補正ベクトルを、チームXのノンプレイヤキャラクタNPC全ての移動ベクトルに加え、新たな移動ベクトルVmnpcを算出する。上記補正ベクトルは、固定の大きさとしてもよいし、当該X軸方向の加速度の大きさに応じた大きさとしてもよい。なお、補正ベクトルの方向を、コア加速度データが示す加速度の方向に応じて決定してもよい。具体的には上述した補正ベクトルの方向を決定する第1〜第4の例と同様である。   In step 154, the CPU 30 updates the movement vector data Dc for all the non-player characters NPC of the team X based on the magnitude of the acceleration in the X-axis direction indicated by the core acceleration data referred to in step 152, and the movement vector data Dc. And the process proceeds to the next step 155. For example, as shown in FIG. 29, the CPU 30 adds a correction vector in a direction parallel to the touch line of the soccer field set in the virtual game space to the movement vector of all the non-player characters NPC of the team X, and performs a new movement. A vector Vmnpc is calculated. The correction vector may be a fixed magnitude or a magnitude corresponding to the acceleration magnitude in the X-axis direction. The direction of the correction vector may be determined according to the direction of acceleration indicated by the core acceleration data. Specifically, this is the same as the first to fourth examples for determining the direction of the correction vector described above.

なお、上記ステップ154の処理においても上記ステップ135の処理と同様に、チームXのプレイヤキャラクタPCの移動ベクトルについても、同様のベクトル加算を行って更新してもかまわない。また、チームXのノンプレイヤキャラクタNPCの何れか(例えば、チームXのゴールキーパー)を、ベクトル加算の対象から外してもかまわない。また、上述した処理では、タッチラインと平行な方向でX軸方向の加速度の大きさに応じた大きさのベクトルを加算する例を示したが、当該ベクトルをそのままチームXのノンプレイヤキャラクタNPC全ての移動ベクトルに設定してもかまわない。さらに、加算するベクトルの方向は、仮想カメラの視線方向ベクトルを仮想ゲーム空間の仮想水平面に投影した方向に対して垂直な水平方向や、当該視線方向を基準とした他の方向に設定してもかまわない。   In the process of step 154, similar to the process of step 135, the movement vector of the player character PC of team X may be updated by performing the same vector addition. Further, any of the non-player characters NPC of Team X (for example, the goalkeeper of Team X) may be excluded from the vector addition target. In the above-described processing, an example in which a vector having a magnitude corresponding to the magnitude of acceleration in the X-axis direction in the direction parallel to the touch line is shown. However, the vector is used as it is for all non-player characters NPC of team X. It may be set to the movement vector. Furthermore, the direction of the vector to be added may be set to a horizontal direction perpendicular to the direction in which the visual direction vector of the virtual camera is projected onto the virtual horizontal plane of the virtual game space, or another direction based on the visual direction. It doesn't matter.

ステップ155において、CPU30は、操作情報DaからチームXの監督モード用コアユニットから送信された操作情報に含まれる最新の第1座標データDa1および第2座標データDa2を参照する。次に、CPU30は、上記ステップ155で参照した第1座標データDa1および第2座標データDa2に対応する指示座標、および当該指示座標に対応する仮想空間位置を算出して、それぞれチームXの監督モード用コアユニットに対応する指示座標データDeおよび仮想空間位置座標データDfを更新して(ステップ156)、処理を次のステップに進める。なお、上記ステップ156で算出する指示座標および仮想空間位置の算出方法については、上記ステップ84と同様であるため、詳細な説明を省略する。   In step 155, the CPU 30 refers to the latest first coordinate data Da <b> 1 and second coordinate data Da <b> 2 included in the operation information transmitted from the operation mode Da from the manager mode core unit of the team X. Next, the CPU 30 calculates the instruction coordinates corresponding to the first coordinate data Da1 and the second coordinate data Da2 referred to in step 155 and the virtual space position corresponding to the instruction coordinates, and each of the team X supervisory modes. The instruction coordinate data De and the virtual space position coordinate data Df corresponding to the core unit for use are updated (step 156), and the process proceeds to the next step. Note that the method of calculating the designated coordinates and the virtual space position calculated in step 156 is the same as that in step 84, and a detailed description thereof will be omitted.

次に、CPU30は、指示対象選手データDgを参照して、チームXの監督モード用コントローラ7の指示対象選手が設定されているか否かを判断する(ステップ157)。そして、CPU30は、指示対象選手が未設定の場合、次のステップ158に処理を進める。一方、CPU30は、指示対象選手が設定されている場合、次のステップ160に処理を進める。   Next, the CPU 30 refers to the instruction target player data Dg to determine whether or not an instruction target player of the team X manager mode controller 7 is set (step 157). And CPU30 advances a process to the following step 158, when an instruction | indication object player is not set. On the other hand, when the instruction target player is set, the CPU 30 advances the processing to the next step 160.

ステップ158において、CPU30は、上記ステップ156で算出された仮想空間位置を中心とした領域A(図27参照)内に、チームXの選手キャラクタのいずれかが配置されているか否かを判断する。次に、CPU30は、領域A内にチームXの選手キャラクタが配置されている場合、当該選手キャラクタをチームXの監督モード用コントローラの指示対象選手に設定して、そのキャラクタ識別番号等を指示対象選手データDgに記述する(ステップ159)。なお、上記領域A内にチームXの選手キャラクタが複数存在する場合には、ステップ138で算出された仮想空間位置に最も近い選手キャラクタが指示対象選手に設定される。そして、CPU30は、当該サブルーチンによる処理を終了して、次のステップ21に処理を進める。一方、CPU30は、領域A内にチームXの選手キャラクタが1人も配置されていない場合、そのまま当該サブルーチンによる処理を終了して、次のステップ21に処理を進める。   In step 158, the CPU 30 determines whether any of the player characters of the team X is placed in the area A (see FIG. 27) centered on the virtual space position calculated in step 156. Next, when a team X player character is arranged in the area A, the CPU 30 sets the player character as an instruction target player of the team X manager mode controller, and specifies the character identification number and the like. This is described in the player data Dg (step 159). When there are a plurality of player characters of team X in the area A, the player character closest to the virtual space position calculated in step 138 is set as the instruction target player. Then, the CPU 30 ends the process by the subroutine and proceeds to the next step 21. On the other hand, if no player character of team X is arranged in the area A, the CPU 30 ends the process by the subroutine as it is and proceeds to the next step 21.

ステップ160において、CPU30は、算出された仮想空間座標が仮想ゲーム空間に設定されたサッカーフィールド内か否かを判断する。次に、CPU30は、仮想空間座標が上記サッカーフィールド内である場合、仮想空間位置に応じて指示対象選手の移動ベクトルを設定して移動ベクトルデータDcを更新する(ステップ161)。例えば、CPU30は、指示対象選手の現在の配置位置から仮想空間位置TP(図27参照)に向かう方向を当該指示対象選手の移動ベクトルの方向とする。さらに、現在の配置位置から仮想空間位置TPまでの仮想距離に応じた大きさを当該指示対象選手の移動ベクトルの大きさとして設定してもよい。そして、CPU30は、指示対象選手データDgに記述されたチームXの監督モード用コントローラの指示対象選手をクリアし(ステップ162)、当該サブルーチンによる処理を終了して、次のステップ21に処理を進める。一方、CPU30は、仮想空間座標が上記サッカーフィールド外である場合、そのまま当該サブルーチンによる処理を終了して、次のステップ21に処理を進める。なお、ステップ162において、指示対象選手をクリアしなくてもよく、この場合には、指示対象選手を設定した後、その指示対象選手に対して複数回移動指示を出すことが可能になる(この場合には、ボタン操作や所定領域への座標指示などに応じて当該クリアの処理をするとよい)。 In step 160, the CPU 30 determines whether or not the calculated virtual space coordinates are within the soccer field set in the virtual game space. Next, when the virtual space coordinates are within the soccer field, the CPU 30 sets the movement vector of the instruction target player according to the virtual space position and updates the movement vector data Dc (step 161). For example, the CPU 30 sets the direction from the current arrangement position of the instruction target player to the virtual space position TP (see FIG. 27) as the direction of the movement vector of the instruction target player. Furthermore, a size corresponding to the virtual distance from the current arrangement position to the virtual space position TP may be set as the size of the movement vector of the instruction target player. Then, the CPU 30 clears the instruction target player of the team X manager mode controller described in the instruction target player data Dg (step 162), ends the processing by the subroutine, and proceeds to the next step 21. . On the other hand, if the virtual space coordinates are outside the soccer field, the CPU 30 ends the processing by the subroutine as it is and proceeds to the next step 21. In step 162 , it is not necessary to clear the instruction target player. In this case, after setting the instruction target player, it is possible to issue a movement instruction to the instruction target player a plurality of times ( In this case, the clearing process may be performed according to a button operation or a coordinate instruction to a predetermined area).

このように、ステップ20における監督モード処理においては、プレイヤが操作するコントローラ7を監督モードに設定することによって、チーム全体に対して総合的な操作が可能となる。具体的には、チーム内の複数のノンプレイヤキャラクタNPC(プレイヤキャラクタPCを含めても良い)の移動方向が、コアユニット70から得られるコア加速度データ(またはサブ加速度データでもよい)に応じて制御される。つまり、プレイヤは、コアユニット70全体(またはサブユニット76全体)の動作によって複数のキャラクタの移動方向の制御を行うことができる。したがって、プレイヤは、監督モードで複数のキャラクタの移動方向を直感的に操作することができる。   As described above, in the manager mode processing in step 20, the controller 7 operated by the player is set to the manager mode, whereby a comprehensive operation can be performed on the entire team. Specifically, the movement direction of a plurality of non-player characters NPC (may include the player character PC) in the team is controlled according to core acceleration data (or sub-acceleration data) obtained from the core unit 70. Is done. That is, the player can control the movement direction of a plurality of characters by the action of the entire core unit 70 (or the entire subunit 76). Therefore, the player can intuitively operate the movement directions of the plurality of characters in the supervisor mode.

なお、上述したフローチャートの処理から明らかなように、ステップ19における一時監督モード処理では、十字キーを操作する手順が異なるが、他の処理についてはステップ20の監督モード処理と類似している。つまり、プレイヤが操作するコントローラ7が選手モードに設定されていても、十字キーの上下方向を操作することによって、上述した監督モードと同様の操作が可能になっている。   As is clear from the processing of the flowchart described above, the procedure for operating the cross key is different in the temporary supervision mode processing in step 19, but the other processing is similar to the supervision mode processing in step 20. That is, even when the controller 7 operated by the player is set to the player mode, the same operation as the above-described manager mode can be performed by operating the up and down direction of the cross key.

また、上記ステップ22の処理においては、移動ベクトルデータDcに記述された各移動ベクトルデータがそれぞれ所定量減衰するが、ノンプレイヤキャラクタNPCが所定の地点まで到達するまで継続して動作させたい場合、当該ノンプレイヤキャラクタNPCの移動ベクトルについては減衰しなくてもかまわない。例えば、指示対象選手をコアユニット70で指し示した仮想空間位置TPまで移動させたい場合、当該指示対象選手が仮想空間位置TPに到達するまで当該指示対象選手の移動ベクトルの大きさおよび方向を維持してもかまわない。   Further, in the process of step 22, when each of the movement vector data described in the movement vector data Dc is attenuated by a predetermined amount, but it is desired to continuously operate until the non-player character NPC reaches a predetermined point, The movement vector of the non-player character NPC need not be attenuated. For example, when it is desired to move the instruction target player to the virtual space position TP indicated by the core unit 70, the size and direction of the movement vector of the instruction target player are maintained until the instruction target player reaches the virtual space position TP. It doesn't matter.

また、上述した説明では、表示画面に対して遠隔から座標指定するために、コアユニット70に設けられた撮像素子743で撮像対象を撮像した画像データを解析することによって、モニタ2の表示画面に対して座標指定する態様を用いた。この態様は、表示画面近傍に撮像対象となる2つのマーカを設置し、撮像手段およびその撮像方向を自在に変更可能なハウジングを備えたデバイスが撮像画像中の2つのマーカを検出し、当該撮像画像におけるマーカの位置に基づいて当該デバイスが指定する座標位置を導出するものである。しかしながら、他の態様で上記座標指定を行ってもかまわない。   Further, in the above description, in order to specify coordinates remotely from the display screen, the image data obtained by imaging the imaging target by the imaging element 743 provided in the core unit 70 is analyzed, and thereby the display screen of the monitor 2 is displayed. For this, the coordinate designation mode was used. In this aspect, two markers to be imaged are installed in the vicinity of the display screen, and a device including an imaging unit and a housing capable of freely changing the imaging direction detects the two markers in the captured image, and the imaging The coordinate position designated by the device is derived based on the position of the marker in the image. However, the coordinate designation may be performed in another manner.

例えば、表示画面近傍に設置する撮像対象は、上述した電気的なマーカ(LEDモジュール)の他に、光を反射する部材や特定色や特定形状を有する物理的なマーカでもかまわない。また、モニタ2の表示画面に撮像対象を表示してもかまわない。また、コアユニット70が備える撮像手段でラスタスキャン型モニタの走査線を読み取ることによって、当該モニタ自体を撮像対象にしてもかまわない。また、磁気発生装置を設け、当該磁気発生装置から生じる磁気を利用して遠隔から座標指定してもかまわない。この場合、コアユニット70には、上記磁気を検出するための磁気センサを設けることになる。   For example, the imaging target placed in the vicinity of the display screen may be a member that reflects light, or a physical marker having a specific color or shape, in addition to the electrical marker (LED module) described above. Further, the imaging target may be displayed on the display screen of the monitor 2. Further, the monitor itself may be set as the imaging target by reading the scanning line of the raster scan type monitor with the imaging means provided in the core unit 70. Further, a magnetic generator may be provided, and coordinates may be specified from a remote location using magnetism generated from the magnetic generator. In this case, the core unit 70 is provided with a magnetic sensor for detecting the magnetism.

また、上述した説明では、2つのマーカ8Lおよび8Rからの赤外光を、コアユニット70の撮像情報演算部74の撮像対象としたが、他のものを撮像対象にしてもかまわない。例えば、1つまたは3つ以上のマーカをモニタ2の近傍に設置し、それらのマーカからの赤外光を撮像情報演算部74の撮像対象としてもかまわない。例えば、所定の長さを有する1つのマーカをモニタ2の近傍に設置しても、本発明を同様に実現することができる。また、モニタ2の表示画面自体や他の発光体(室内灯等)を撮像情報演算部74の撮像対象としてもかまわない。撮像対象とモニタ2の表示画面との配置関係に基づいて、当該表示画面に対するコアユニット70の位置を演算すれば、様々な発光体を撮像情報演算部74の撮像対象として用いることができる。   Further, in the above description, the infrared light from the two markers 8L and 8R is the imaging target of the imaging information calculation unit 74 of the core unit 70, but other objects may be the imaging target. For example, one or three or more markers may be installed in the vicinity of the monitor 2, and infrared light from these markers may be used as an imaging target of the imaging information calculation unit 74. For example, even if one marker having a predetermined length is installed in the vicinity of the monitor 2, the present invention can be similarly realized. In addition, the display screen itself of the monitor 2 or other light emitters (such as room lights) may be the imaging target of the imaging information calculation unit 74. If the position of the core unit 70 relative to the display screen is calculated based on the positional relationship between the imaging target and the display screen of the monitor 2, various light emitters can be used as the imaging target of the imaging information calculation unit 74.

また、コアユニット70側にマーカ等の撮像対象を設けて、撮像手段をモニタ2側に設けてもかまわない。さらに他の例では、コアユニット70の前面から光を放射する機構を設けてもかまわない。この場合、コアユニット70およびモニタ2とは別の場所にモニタ2の表示画面を撮像する撮像装置を設置し、モニタ2の表示画面にコアユニット70から放射された光が反射した位置を当該撮像装置が撮像した画像から解析することによって、同様に表示画面に対して遠隔から座標指定するためのデータを出力可能なポインティングデバイスを構成することができる。   Further, an imaging target such as a marker may be provided on the core unit 70 side, and the imaging means may be provided on the monitor 2 side. In still another example, a mechanism for emitting light from the front surface of the core unit 70 may be provided. In this case, an imaging device that captures the display screen of the monitor 2 is installed at a location different from the core unit 70 and the monitor 2, and the position where the light emitted from the core unit 70 is reflected on the display screen of the monitor 2 is captured. By analyzing the image captured by the apparatus, a pointing device that can output data for remotely designating coordinates on the display screen can be configured.

また、上述した説明では、コントローラ7とゲーム装置本体5とが無線通信によって接続された態様を用いたが、コントローラ7とゲーム装置本体5とがケーブルを介して電気的に接続されてもかまわない。この場合、コアユニット70とサブユニット76とが接続ケーブル79で接続され、コアユニット70とゲーム装置本体5とが別のケーブルで接続される。   In the above description, the controller 7 and the game apparatus main body 5 are connected by wireless communication. However, the controller 7 and the game apparatus main body 5 may be electrically connected via a cable. . In this case, the core unit 70 and the subunit 76 are connected by the connection cable 79, and the core unit 70 and the game apparatus body 5 are connected by another cable.

また、上述したコントローラ7の形状や、それらに設けられている操作部72および78の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。   In addition, the shape of the controller 7 described above and the shapes, numbers, and installation positions of the operation units 72 and 78 provided in them are merely examples, and other shapes, numbers, and installation positions may be used. Needless to say, the present invention can be realized.

また、本発明のゲームプログラムは、光ディスク4等の外部記憶媒体を通じてゲーム装置本体5に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置本体5に供給されてもよい。また、ゲームプログラムは、ゲーム装置本体5内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体の他に、不揮発性半導体メモリでもよい。   The game program of the present invention may be supplied not only to the game apparatus body 5 through an external storage medium such as the optical disc 4 but also to the game apparatus body 5 through a wired or wireless communication line. The game program may be recorded in advance in a nonvolatile storage device inside the game apparatus body 5. The information storage medium for storing the game program may be a non-volatile semiconductor memory in addition to a CD-ROM, DVD, or similar optical disk storage medium.

本発明に係るゲームシステムおよびゲームプログラムは、プレイヤキャラクタの移動制御を直感的かつ容易な操作で多様に制御する、または、ゲーム入力のダイレクト感を効果的に感じさせることができ、仮想ゲーム世界におけるオブジェクトを移動させるゲームシステムや当該ゲーム装置本体で実行されるゲームプログラムとして有用である。   The game system and the game program according to the present invention can control the movement of the player character in various ways through intuitive and easy operations, or can make the player feel a direct feeling of the game input effectively. This is useful as a game system for moving an object or a game program executed in the game apparatus main body.

本発明の一実施形態に係るゲームシステム1を説明するための外観図1 is an external view for explaining a game system 1 according to an embodiment of the present invention. 図1のゲーム装置本体5の機能ブロック図Functional block diagram of the game apparatus body 5 of FIG. 図1のコントローラ7の外観構成を示す斜視図The perspective view which shows the external appearance structure of the controller 7 of FIG. 図3のコントローラ7の接続ケーブル79をコアユニット70から脱着する状態を示す斜視図3 is a perspective view showing a state in which the connection cable 79 of the controller 7 of FIG. 3 is detached from the core unit 70. FIG. 図3のコアユニット70の上面後方から見た斜視図The perspective view seen from the upper surface back of the core unit 70 of FIG. 図5のコアユニット70を下面前方から見た斜視図The perspective view which looked at the core unit 70 of FIG. 5 from the lower surface front. 図5のコアユニット70の上筐体を外した状態を示す斜視図The perspective view which shows the state which removed the upper housing | casing of the core unit 70 of FIG. 図6のコアユニット70の下筐体を外した状態を示す斜視図The perspective view which shows the state which removed the lower housing | casing of the core unit 70 of FIG. サブユニット76の一例を示す斜視図A perspective view showing an example of the subunit 76 図9のサブユニット76の上筐体を外した状態を示す斜視図The perspective view which shows the state which removed the upper housing | casing of the subunit 76 of FIG. 図3のコントローラ7の構成を示すブロック図The block diagram which shows the structure of the controller 7 of FIG. 図3のコントローラ7を用いてゲーム操作するときの状態を概説する図解図An illustrative view outlining the state when operating the game using the controller 7 of FIG. プレイヤがコアユニット70を右手で把持した状態をコアユニット70の前面側から見た一例An example in which the player holds the core unit 70 with his right hand as viewed from the front side of the core unit 70 プレイヤがコアユニット70を右手で把持した状態をコアユニット70の左側面側から見た一例An example in which the player holds the core unit 70 with his right hand as viewed from the left side of the core unit 70 LEDモジュール8Lおよび8Rと撮像素子743との視野角を説明するための図The figure for demonstrating the viewing angle of LED module 8L and 8R and the image pick-up element 743 プレイヤがサブユニット76を左手で把持した状態をサブユニット76の右側面側から見た一例An example of the player holding the subunit 76 with his left hand as viewed from the right side of the subunit 76 ゲーム装置本体5のメインメモリ33に記憶される主なデータを示す図The figure which shows the main data memorize | stored in the main memory 33 of the game device main body 5 ゲーム装置本体5において実行されるゲーム処理の流れを示すフローチャートThe flowchart which shows the flow of the game process performed in the game device main body 5 図18におけるステップ15のサブユニット移動処理の詳細な動作を示すサブルーチンSubroutine showing detailed operation of subunit movement processing in step 15 in FIG. 図18におけるステップ16のパス処理の詳細な動作を示すサブルーチンSubroutine showing the detailed operation of the pass processing at step 16 in FIG. 図18におけるステップ17の第1シュート処理の詳細な動作を示すサブルーチンSubroutine showing the detailed operation of the first chute process at step 17 in FIG. 図18におけるステップ18の第2シュート処理の詳細な動作を示すサブルーチンSubroutine showing the detailed operation of the second chute process in step 18 in FIG. 図18におけるステップ19の一時監督モード処理の詳細な動作を示すサブルーチンSubroutine showing the detailed operation of the temporary supervision mode process in step 19 in FIG. 図18におけるステップ20の監督モード処理の詳細な動作を示すサブルーチンSubroutine showing the detailed operation of the supervisor mode processing in step 20 in FIG. モニタ2に表示されるゲーム画像の一例An example of a game image displayed on the monitor 2 プレイヤキャラクタPCに設定される姿勢ベクトルVcを説明するための図The figure for demonstrating the attitude | position vector Vc set to player character PC パスの目標位置TPと領域AおよびBを説明するための図The figure for demonstrating the target position TP and area | region A and B of a path | pass ボールオブジェクトBが移動する軌道の一例を示す図The figure which shows an example of the track | orbit which the ball object B moves ノンプレイヤキャラクタNPCに設定される移動ベクトルVmnpcの一例を示す図The figure which shows an example of the movement vector Vmnpc set to the non-player character NPC サブユニット移動処理における他の例の詳細な動作を示すサブルーチンSubroutine showing detailed operation of another example in subunit movement processing

符号の説明Explanation of symbols

1…ゲームシステム
2…モニタ
2a、706…スピーカ
3…ゲーム装置
30…CPU
31…メモリコントローラ
32…GPU
33…メインメモリ
34…DSP
35…ARAM
36…コントローラI/F
37…ビデオI/F
38…フラッシュメモリ
39…オーディオI/F
40…ディスクドライブ
41…ディスクI/F
4…光ディスク
5…ゲーム装置本体
6…通信ユニット
7…コントローラ
70…コアユニット
71、77…ハウジング
72、78…操作部
73、791…コネクタ
74…撮像情報演算部
741…赤外線フィルタ
742…レンズ
743…撮像素子
744…画像処理回路
75…通信部
751…マイコン
752…メモリ
753…無線モジュール
754…アンテナ
700…基板
701、761…加速度センサ
702…LED
704…バイブレータ
707…サウンドIC
708…アンプ
76…サブユニット
79…接続ケーブル
8…マーカ
DESCRIPTION OF SYMBOLS 1 ... Game system 2 ... Monitor 2a, 706 ... Speaker 3 ... Game device 30 ... CPU
31 ... Memory controller 32 ... GPU
33 ... Main memory 34 ... DSP
35 ... ARAM
36 ... Controller I / F
37 ... Video I / F
38 ... Flash memory 39 ... Audio I / F
40 ... disk drive 41 ... disk I / F
4 ... Optical disk 5 ... Game device body 6 ... Communication unit 7 ... Controller 70 ... Core units 71, 77 ... Housings 72, 78 ... Operation units 73, 791 ... Connector 74 ... Imaging information calculation unit 741 ... Infrared filter 742 ... Lens 743 ... Image sensor 744 ... Image processing circuit 75 ... Communication unit 751 ... Microcomputer 752 ... Memory 753 ... Wireless module 754 ... Antenna 700 ... Substrate 701, 761 ... Acceleration sensor 702 ... LED
704 ... Vibrator 707 ... Sound IC
708 ... Amplifier 76 ... Subunit 79 ... Connection cable 8 ... Marker

Claims (30)

プレイヤが片手で把持可能なハウジングを有するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムであって、
少なくとも前記ゲームコントローラは、前記ハウジングに設けられ、方向指示入力するための方向指示部を備え、
前記ゲーム装置は、
前記方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する移動ベクトル制御手段と、
前記検出部の検出に基づき、前記ハウジングの基準姿勢からの姿勢変化に応じて、前記移動ベクトル制御手段によって決定された移動ベクトルを補正する補正手段と、
前記補正手段によって補正された移動ベクトルに基づいて、前記オブジェクトを仮想ゲーム世界において移動制御する移動制御手段とを備える、ゲームシステム。
A game system including a game controller having a housing that a player can hold with one hand, a game device connected to the game controller, and a detection unit that detects the attitude of the housing,
At least the game controller is provided in the housing and includes a direction instruction unit for inputting a direction instruction.
The game device includes:
A movement vector control means for determining a movement vector of an object appearing in the virtual game world in accordance with an operation of the direction instruction section;
Correction means for correcting a movement vector determined by the movement vector control means in accordance with a change in attitude of the housing from a reference attitude based on detection by the detection unit;
A game system comprising: movement control means for controlling movement of the object in the virtual game world based on the movement vector corrected by the correction means.
前記補正手段は、前記ハウジングが所定軸周りに回転したことに応じて、仮想ゲーム世界における所定方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。   2. The correction unit according to claim 1, wherein the correction unit corrects the movement vector so that an amount of movement of the object in a predetermined direction in the virtual game world increases in accordance with the rotation of the housing around a predetermined axis. Game system. 前記補正手段は、前記ハウジングの左右軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界における前記オブジェクトの前方向への移動量が増加するように前記移動ベクトルを補正する、請求項2に記載のゲームシステム。   The correction means corrects the movement vector so that the amount of movement of the object in the forward direction in the virtual game world increases in response to the rotation of the housing about the left-right axis of the housing. The game system as described in. 前記補正手段は、前記ハウジングの前後軸周りに当該ハウジングが回転したことに応じて、仮想ゲーム世界における前記オブジェクトの左右方向への移動量が増加するように前記移動ベクトルを補正する、請求項2に記載のゲームシステム。   The correction means corrects the movement vector so that an amount of movement of the object in the left-right direction in the virtual game world increases in response to the rotation of the housing about the front-rear axis of the housing. The game system as described in. 前記補正手段は、前記ハウジングの所定軸が当該所定軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における所定方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。   The correction means corrects the movement vector so that the amount of movement of the object in a predetermined direction in the virtual game world increases in response to rotation of a predetermined axis of the housing around an axis orthogonal to the predetermined axis. The game system according to claim 1. 前記補正手段は、前記ハウジングの第1軸が当該第1軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における第1方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正し、
前記補正手段は、前記ハウジングの前記第1軸とは異なる第2軸が当該第2軸に直交する軸周りに回転したことに応じて、仮想ゲーム世界における前記第1方向とは異なる第2方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。
The correction means moves the object so that the amount of movement of the object in the first direction in the virtual game world increases in response to the rotation of the first axis of the housing around an axis orthogonal to the first axis. Correct the vector,
The correcting means has a second direction different from the first direction in the virtual game world in response to a rotation of a second axis different from the first axis of the housing around an axis orthogonal to the second axis. The game system according to claim 1, wherein the movement vector is corrected so that an amount of movement of the object to increases.
前記方向指示部は、少なくともスティックを前記ハウジングの所定方向に傾倒させる入力が可能なものであり、
前記移動ベクトル制御手段は、前記スティックが前記所定方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを第1方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングが前記所定方向に傾くように回転したことに応じて、仮想ゲーム世界における前記オブジェクトの前記第1方向への移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。
The direction indicating unit is capable of inputting at least tilting the stick in a predetermined direction of the housing,
The movement vector control means determines the movement vector so as to move the object in a first direction in the virtual game world when the stick is tilted in the predetermined direction.
The correction means corrects the movement vector so that an amount of movement of the object in the first direction in the virtual game world increases in response to the housing rotating so as to tilt in the predetermined direction. Item 4. The game system according to Item 1.
前記方向指示部は、少なくともスティックが前記ハウジングの所定軸周りに回転するように傾倒させる入力が可能なものであり、
前記移動ベクトル制御手段は、前記スティックが前記所定軸周りに回転する方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを第1方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングが前記所定軸周りに回転したことに応じて、仮想ゲーム世界における前記オブジェクトの前記第1方向への移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。
The direction indicating unit is capable of inputting to tilt at least so that the stick rotates around a predetermined axis of the housing,
The movement vector control means determines the movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in the direction of rotation around the predetermined axis.
The correction means corrects the movement vector so that an amount of movement of the object in the first direction in the virtual game world increases in response to the rotation of the housing around the predetermined axis. The game system as described in.
前記方向指示部は、少なくともスティックを前記ハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能なものであり、
前記移動ベクトル制御手段は、前記スティックが前記所定方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを第1方向に移動させるように前記移動ベクトルを決定し、かつ、前記スティックが前記直交する方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを前記第1方向と直交する第2方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングが前記所定方向に傾くように回転したことに応じて、仮想ゲーム世界における前記オブジェクトの前記第1方向への移動量が増加するように前記移動ベクトルを補正し、かつ、前記ハウジングが前記直交する方向に傾くように回転したことに応じて、仮想ゲーム世界における前記オブジェクトの前記第2方向への移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。
The direction indicating unit is capable of inputting to tilt at least a stick in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction,
The movement vector control means determines the movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in the predetermined direction, and the stick is orthogonal to Determining the movement vector to move the object in a second direction orthogonal to the first direction in the virtual game world when tilted in a direction;
The correction means corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases in response to the housing rotating to tilt in the predetermined direction; and The movement vector is corrected so that an amount of movement of the object in the second direction in the virtual game world increases in response to the housing rotating to tilt in the orthogonal direction. The described game system.
前記方向指示部は、少なくともスティックを前記ハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能なものであり、
前記移動ベクトル制御手段は、前記方向指示部による指示方向に応じて、前記スティックが前記ハウジングの前方向に傾倒されたときに仮想ゲーム世界において前記オブジェクトが移動する方向である基準方向を変更し、前記オブジェクトを当該基準方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングが前記前方向に傾いたことに応じて、仮想ゲーム世界における前記オブジェクトの前記基準方向への移動量が増加するように前記移動ベクトルを補正する、請求項1に記載のゲームシステム。
The direction indicating unit is capable of inputting instructions in the front / rear / left / right directions by tilting at least a stick to the front / rear / left / right of the housing,
The movement vector control means changes a reference direction, which is a direction in which the object moves in the virtual game world when the stick is tilted in the front direction of the housing, according to the direction indicated by the direction indication unit, Determining the movement vector to move the object in the reference direction;
2. The correction unit according to claim 1, wherein the correction unit corrects the movement vector so that an amount of movement of the object in the reference direction in the virtual game world increases in response to the housing being tilted in the forward direction. Game system.
プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムであって、
前記ゲームコントローラは、
その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジングと、
前記ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、前記ハウジングの前後左右方向への指示入力するための方向指示部と、
前記ハウジングの動きを検出する動き検出手段とを備え、
前記ゲーム装置は、
前記方向指示部により前記ハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの後ろ方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの左右方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する移動ベクトル制御手段と、
前記方向指示部により前記ハウジングの前方向への指示がされ、かつ、前記動き検出手段の検出に基づいて前記ハウジングの前方向に当該ハウジングが回転したことを示すとき、仮想ゲーム世界における前記前方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する補正手段と、
仮想ゲーム世界内で、前記補正手段によって補正された移動ベクトルに基づいて前記オブジェクトを移動させる移動制御手段とを備える、ゲームシステム。
A game system including a game controller operated by a player and a game device connected to the game controller,
The game controller
A housing formed in a shape and size that allows the player to grip the side periphery with one hand;
A direction indicating unit disposed at a position where the player can operate with the thumb of one hand when the player holds the housing with one hand, and for inputting instructions in the front-rear and left-right directions of the housing;
Movement detecting means for detecting movement of the housing,
The game device includes:
When the direction instructing unit instructs the front of the housing, the front direction of the object appearing in the virtual game world in the virtual game world is set as the direction of the movement vector, and the direction instructing unit sets the rear direction of the housing. When the direction is given, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instruction unit instructs the housing in the left-right direction, the virtual game world of the object a movement vector control means for determining the direction of the horizontal movement vectors in,
The forward direction in the virtual game world is indicated when the forward direction of the housing is instructed by the direction indicating unit and the housing is rotated in the forward direction of the housing based on the detection of the motion detecting means. Correction means for correcting the movement vector so as to increase the amount of movement of the object to
A game system comprising movement control means for moving the object based on the movement vector corrected by the correction means in a virtual game world.
前記移動ベクトル制御手段は、前記方向指示部で操作された指示方向に応じて、仮想ゲーム世界における前記オブジェクトの前方向を基準とした前記移動ベクトルの方向を決定し、
前記ゲーム装置は、前記移動ベクトル制御手段によって決定され前記補正手段によって補正された移動ベクトルの方向を、前記オブジェクトの新たな前方向に設定し、当該前方向に基づいて仮想ゲーム世界における前記オブジェクトの方向を変更するオブジェクト方向制御手段を、さらに備える、請求項2乃至11の何れかに記載のゲームシステム。
The movement vector control means determines the direction of the movement vector based on the front direction of the object in the virtual game world according to the instruction direction operated by the direction instruction unit,
The game device sets the direction of the movement vector determined by the movement vector control unit and corrected by the correction unit to be a new forward direction of the object, and based on the forward direction, the direction of the object in the virtual game world is set. The game system according to claim 2, further comprising object direction control means for changing a direction.
プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムであって、
前記ゲームコントローラは、少なくとも、
プレイヤが片手で把持可能なハウジングと、
前記ハウジングに生じる加速度を検出する加速度検出手段と、
前記ハウジングに設けられ、方向指示入力するための方向指示部とを備え、
前記ゲーム装置は、
前記方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する移動ベクトル制御手段と、
前記加速度検出手段の検出に基づき、前記ハウジングに生じた加速度に応じて、前記移動ベクトル制御手段によって決定された移動ベクトルを補正する補正手段と、
前記補正手段によって補正された移動ベクトルに基づいて、前記オブジェクトを仮想ゲーム世界において移動制御する移動制御手段とを備える、ゲームシステム。
A game system including a game controller operated by a player and a game device connected to the game controller,
The game controller is at least
A housing that the player can hold with one hand;
Acceleration detecting means for detecting acceleration generated in the housing;
A direction indicating portion provided in the housing for inputting direction instructions;
The game device includes:
A movement vector control means for determining a movement vector of an object appearing in the virtual game world in accordance with an operation of the direction instruction section;
Correction means for correcting the movement vector determined by the movement vector control means according to the acceleration generated in the housing based on the detection of the acceleration detection means;
A game system comprising: movement control means for controlling movement of the object in the virtual game world based on the movement vector corrected by the correction means.
前記補正手段は、前記ハウジングの所定軸方向に生じた加速度に応じて、仮想ゲーム世界における所定方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する、請求項13に記載のゲームシステム。   The correction unit according to claim 13, wherein the correction unit corrects the movement vector so that an amount of movement of the object in a predetermined direction in the virtual game world increases according to an acceleration generated in a predetermined axis direction of the housing. Game system. 前記補正手段は、前記ハウジングの前方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの前方向への移動量が増加するように前記移動ベクトルを補正する、請求項14に記載のゲームシステム。   The game according to claim 14, wherein the correction unit corrects the movement vector so that a movement amount of the object in the forward direction in the virtual game world increases in accordance with an acceleration generated in the forward direction of the housing. system. 前記補正手段は、前記ハウジングの左右方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの左右方向への移動量が増加するように前記移動ベクトルを補正する、請求項14に記載のゲームシステム。   The game according to claim 14, wherein the correction unit corrects the movement vector so that an amount of movement of the object in the left-right direction in the virtual game world increases according to acceleration generated in the left-right direction of the housing. system. 前記補正手段は、前記ハウジングの第1方向に生じた加速度に応じて、仮想ゲーム世界における第1方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正し、
前記補正手段は、前記ハウジングの前記第1方向とは異なる第2方向に生じた加速度に応じて、仮想ゲーム世界における前記第1方向とは異なる第2方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する、請求項13に記載のゲームシステム。
The correction means corrects the movement vector so that the amount of movement of the object in the first direction in the virtual game world increases according to the acceleration generated in the first direction of the housing,
The correction means increases the amount of movement of the object in a second direction different from the first direction in the virtual game world according to an acceleration generated in a second direction different from the first direction of the housing. The game system according to claim 13, wherein the movement vector is corrected as follows.
前記方向指示部は、少なくともスティックを前記ハウジングの所定方向に傾倒させる入力が可能なものであり、
前記移動ベクトル制御手段は、前記スティックが前記所定方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを第1方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングの前記所定方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの前記第1方向への移動量が増加するように前記移動ベクトルを補正する、請求項13に記載のゲームシステム。
The direction indicating unit is capable of inputting at least tilting the stick in a predetermined direction of the housing,
The movement vector control means determines the movement vector so as to move the object in a first direction in the virtual game world when the stick is tilted in the predetermined direction.
The correction unit corrects the movement vector so that an amount of movement of the object in the first direction in the virtual game world increases in accordance with an acceleration generated in the predetermined direction of the housing. The described game system.
前記方向指示部は、少なくともスティックを前記ハウジングの所定方向および当該所定方向に直交する方向に傾倒させる入力が可能なものであり、
前記移動ベクトル制御手段は、前記スティックが前記所定方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを第1方向に移動させるように前記移動ベクトルを決定し、かつ、前記スティックが前記直交する方向に傾倒されたときに、仮想ゲーム世界において前記オブジェクトを前記第1方向と直交する第2方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングの前記所定方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの前記第1方向への移動量が増加するように前記移動ベクトルを補正し、かつ、前記ハウジングの前記直交する方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの前記第2方向への移動量が増加するように前記移動ベクトルを補正する、請求項13に記載のゲームシステム。
The direction indicating unit is capable of inputting to tilt at least a stick in a predetermined direction of the housing and in a direction orthogonal to the predetermined direction,
The movement vector control means determines the movement vector so as to move the object in the first direction in the virtual game world when the stick is tilted in the predetermined direction, and the stick is orthogonal to Determining the movement vector to move the object in a second direction orthogonal to the first direction in the virtual game world when tilted in a direction;
The correction means corrects the movement vector so that a movement amount of the object in the first direction in the virtual game world increases in accordance with an acceleration generated in the predetermined direction of the housing, and the housing The game system according to claim 13, wherein the movement vector is corrected so that an amount of movement of the object in the second direction in the virtual game world increases in accordance with acceleration generated in the orthogonal direction.
前記方向指示部は、少なくともスティックを前記ハウジングの前後左右に傾倒させることにより前後左右方向の指示入力が可能なものであり、
前記移動ベクトル制御手段は、前記方向指示部による指示方向に応じて、前記スティックが前記ハウジングの前方向に傾倒されたときに仮想ゲーム世界において前記オブジェクトが移動する方向である基準方向を変更し、前記オブジェクトを当該基準方向に移動させるように前記移動ベクトルを決定し、
前記補正手段は、前記ハウジングの前記前方向に生じた加速度に応じて、仮想ゲーム世界における前記オブジェクトの前記基準方向への移動量が増加するように前記移動ベクトルを補正する、請求項13に記載のゲームシステム。
The direction indicating unit is capable of inputting instructions in the front / rear / left / right directions by tilting at least a stick to the front / rear / left / right of the housing,
The movement vector control means changes a reference direction, which is a direction in which the object moves in the virtual game world when the stick is tilted in the front direction of the housing, according to the direction indicated by the direction indication unit, Determining the movement vector to move the object in the reference direction;
The correction unit corrects the movement vector so that the amount of movement of the object in the reference direction in the virtual game world increases according to the acceleration generated in the forward direction of the housing. Game system.
プレイヤが操作するゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置とを含むゲームシステムであって、
前記ゲームコントローラは、
その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジングと、
前記ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、前記ハウジングの前後左右方向への指示入力するための方向指示部と、
少なくとも前記ハウジングの前方向に生じる加速度を検出する加速度検出手段とを備え、
前記ゲーム装置は、
前記方向指示部により前記ハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの後ろ方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの左右方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する移動ベクトル制御手段と、
前記方向指示部により前記ハウジングの前方向への指示がされ、かつ、前記加速度検出手段の検出に基づいて、前記ハウジングの前方向に加速度が生じたときに、仮想ゲーム世界における前記オブジェクトの前方向への移動量が増加するように前記移動ベクトルを補正する補正手段と、
仮想ゲーム世界内で、前記補正手段によって補正された移動ベクトルに基づいて前記オブジェクトを移動させる移動制御手段とを備える、ゲームシステム。
A game system including a game controller operated by a player and a game device connected to the game controller,
The game controller
A housing formed in a shape and size that allows the player to grip the side periphery with one hand;
A direction indicating unit disposed at a position where the player can operate with the thumb of one hand when the player holds the housing with one hand, and for inputting instructions in the front-rear and left-right directions of the housing;
Acceleration detection means for detecting acceleration generated at least in the forward direction of the housing,
The game device includes:
When the direction instructing unit instructs the front of the housing, the front direction of the object appearing in the virtual game world in the virtual game world is set as the direction of the movement vector, and the direction instructing unit sets the rear direction of the housing. When the direction is given, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instruction unit instructs the housing in the left-right direction, the virtual game world of the object A movement vector control means for determining the left-right direction in as a direction of the movement vector;
The forward direction of the object in the virtual game world when the forward direction of the housing is instructed by the direction indicator and acceleration occurs in the forward direction of the housing based on the detection of the acceleration detecting means Correction means for correcting the movement vector so as to increase the amount of movement to
A game system comprising movement control means for moving the object based on the movement vector corrected by the correction means in a virtual game world.
前記移動ベクトル制御手段は、前記方向指示部で操作された指示方向に応じて、仮想ゲーム世界における前記オブジェクトの前方向を基準とした前記移動ベクトルの方向を決定し、
前記ゲーム装置は、前記移動ベクトル制御手段によって決定され前記補正手段によって補正された移動ベクトルの方向を、前記オブジェクトの新たな前方向に設定し、当該前方向に基づいて仮想ゲーム世界における前記オブジェクトの方向を変更するオブジェクト方向制御手段を、さらに備える、請求項13乃至21の何れかに記載のゲームシステム。
The movement vector control means determines the direction of the movement vector based on the front direction of the object in the virtual game world according to the instruction direction operated by the direction instruction unit,
The game device sets the direction of the movement vector determined by the movement vector control unit and corrected by the correction unit to be a new forward direction of the object, and based on the forward direction, the direction of the object in the virtual game world is set. The game system according to claim 13, further comprising object direction control means for changing a direction.
前記第1軸と前記第2軸とは、互いに直交し、
前記第1方向と前記第2方向とは、仮想ゲーム世界において互いに直交する、請求項6に記載のゲームシステム。
The first axis and the second axis are orthogonal to each other,
The game system according to claim 6, wherein the first direction and the second direction are orthogonal to each other in the virtual game world.
前記ハウジングの第1方向と第2方向とは、互いに直交し、
前記仮想ゲーム世界における第1方向と第2方向とは、仮想ゲーム世界において互いに直交する、請求項17に記載のゲームシステム。
The first direction and the second direction of the housing are orthogonal to each other,
The game system according to claim 17, wherein the first direction and the second direction in the virtual game world are orthogonal to each other in the virtual game world.
前記ハウジングは、当該ハウジングの側周をプレイヤが片手で握持可能な形状および大きさで形成される、請求項1または13に記載のゲームシステム。 The game system according to claim 1 or 13, wherein the housing is formed in a shape and a size that allows a player to grip the side periphery of the housing with one hand. 前記ハウジングは、当該ハウジングの側周をプレイヤが片手で握持したときに、当該片手の親指で操作可能な位置に前記方向指示部が配設される、請求項25に記載のゲームシステム。 26. The game system according to claim 25 , wherein the direction indicating unit is disposed at a position where the housing can be operated with the thumb of one hand when the player grips the side periphery of the housing with one hand. プレイヤが片手で把持可能なハウジングおよび当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと、当該ゲームコントローラと接続されるゲーム装置と、当該ハウジングの姿勢を検出する検出部とを含むゲームシステムにおいて、当該ゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記コンピュータを、
前記方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する移動ベクトル制御手段と、
前記検出部の検出に基づき、前記ハウジングの基準姿勢からの姿勢変化に応じて、前記移動ベクトル制御手段によって決定された移動ベクトルを補正する補正手段と、
前記補正手段によって補正された移動ベクトルに基づいて、前記オブジェクトを仮想ゲーム世界において移動制御する移動制御手段として機能させる、ゲームプログラム。
A game controller including a housing that can be held by a player with one hand and a direction instruction unit provided in the housing for inputting a direction instruction, a game device connected to the game controller, and an attitude of the housing In a game system including a detection unit, a game program to be executed by a computer of the game device,
The computer,
A movement vector control means for determining a movement vector of an object appearing in the virtual game world in accordance with an operation of the direction instruction section;
Correction means for correcting a movement vector determined by the movement vector control means in accordance with a change in attitude of the housing from a reference attitude based on detection by the detection unit;
A game program that functions as movement control means for controlling movement of the object in the virtual game world based on the movement vector corrected by the correction means.
その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジング、当該ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、前記ハウジングの前後左右方向への指示入力するための方向指示部、および当該ハウジングの動きを検出する動き検出手段を備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記コンピュータを、
前記方向指示部により前記ハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの後ろ方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの左右方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する移動ベクトル制御手段と、
前記方向指示部により前記ハウジングの前方向への指示がされ、かつ、前記動き検出手段の検出に基づいて前記ハウジングの前方向に当該ハウジングが回転したことを示すとき、仮想ゲーム世界における前記前方向への前記オブジェクトの移動量が増加するように前記移動ベクトルを補正する補正手段と、
仮想ゲーム世界内で、前記補正手段によって補正された移動ベクトルに基づいて前記オブジェクトを移動させる移動制御手段として機能させる、ゲームプログラム。
A housing formed in a shape and size that allows a player to grip the side periphery with one hand, and is disposed at a position where the player can operate with the thumb of one hand when the player grips the housing with one hand. A game program to be executed by a computer of a game device connected to a direction controller for inputting instructions in the front-rear and left-right directions, and a game controller provided with a movement detection means for detecting movement of the housing,
The computer,
When the direction instructing unit instructs the front of the housing, the front direction of the object appearing in the virtual game world in the virtual game world is set as the direction of the movement vector, and the direction instructing unit sets the rear direction of the housing. When the direction is given, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instruction unit instructs the housing in the left-right direction, the virtual game world of the object a movement vector control means for determining the direction of the horizontal movement vectors in,
The forward direction in the virtual game world is indicated when the forward direction of the housing is instructed by the direction indicating unit and the housing is rotated in the forward direction of the housing based on the detection of the motion detecting means. Correction means for correcting the movement vector so as to increase the amount of movement of the object to
A game program that functions as movement control means for moving the object based on the movement vector corrected by the correction means in the virtual game world.
プレイヤが片手で把持可能なハウジング、当該ハウジングに生じる加速度を検出する加速度検出手段、および当該ハウジングに設けられて方向指示入力するための方向指示部とを備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記コンピュータを、
前記方向指示部の操作に応じて、仮想ゲーム世界に登場するオブジェクトの移動ベクトルを決定する移動ベクトル制御手段と、
前記加速度検出手段の検出に基づき、前記ハウジングに生じた加速度に応じて、前記移動ベクトル制御手段によって決定された移動ベクトルを補正する補正手段と、
前記補正手段によって補正された移動ベクトルに基づいて、前記オブジェクトを仮想ゲーム世界において移動制御する移動制御手段として機能させる、ゲームプログラム。
A game apparatus connected to a game controller including a housing that can be held by a player with one hand, acceleration detecting means for detecting acceleration generated in the housing, and a direction instruction unit provided in the housing for inputting a direction instruction. A game program to be executed by a computer,
The computer,
A movement vector control means for determining a movement vector of an object appearing in the virtual game world in accordance with an operation of the direction instruction section;
Correction means for correcting the movement vector determined by the movement vector control means according to the acceleration generated in the housing based on the detection of the acceleration detection means;
A game program that functions as movement control means for controlling movement of the object in the virtual game world based on the movement vector corrected by the correction means.
その側周をプレイヤが片手で握持可能な形状および大きさで形成されるハウジング、当該ハウジングをプレイヤが片手で握持したときに当該片手の親指で操作可能な位置配設され、前記ハウジングの前後左右方向への指示入力するための方向指示部、および少なくとも当該ハウジングの前方向に生じる加速度を検出する加速度検出手段を備えたゲームコントローラと接続されるゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記コンピュータを、
前記方向指示部により前記ハウジングの前方向への指示がされたときに、仮想ゲーム世界に登場するオブジェクトの仮想ゲーム世界における前方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの後ろ方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における後ろ方向を移動ベクトルの方向とし、前記方向指示部により前記ハウジングの左右方向への指示がされたときに、前記オブジェクトの仮想ゲーム世界における左右方向を移動ベクトルの方向として決定する移動ベクトル制御手段と、
前記方向指示部により前記ハウジングの前方向への指示がされ、かつ、前記加速度検出手段の検出に基づいて、前記ハウジングの前方向に加速度が生じたときに、仮想ゲーム世界における前記オブジェクトの前方向への移動量が増加するように前記移動ベクトルを補正する補正手段と、
仮想ゲーム世界内で、前記補正手段によって補正された移動ベクトルに基づいて前記オブジェクトを移動させる移動制御手段として機能させる、ゲームプログラム。
A housing formed in a shape and size that allows a player to grip the side periphery with one hand, and is disposed at a position where the player can operate with the thumb of one hand when the player grips the housing with one hand. A game program to be executed by a computer of a game device connected to a game controller having a direction indicating unit for inputting instructions in the front-rear and left-right directions, and an acceleration detection means for detecting at least acceleration generated in the front direction of the housing There,
The computer,
When the direction instructing unit instructs the front of the housing, the front direction of the object appearing in the virtual game world in the virtual game world is set as the direction of the movement vector, and the direction instructing unit sets the rear direction of the housing. When the direction is given, the backward direction of the object in the virtual game world is set as the direction of the movement vector, and when the direction instruction unit instructs the housing in the left-right direction, the virtual game world of the object A movement vector control means for determining the left-right direction in as a direction of the movement vector;
The forward direction of the object in the virtual game world when the forward direction of the housing is instructed by the direction indicator and acceleration occurs in the forward direction of the housing based on the detection of the acceleration detecting means Correction means for correcting the movement vector so as to increase the amount of movement to
A game program that functions as movement control means for moving the object based on the movement vector corrected by the correction means in the virtual game world.
JP2007015532A 2006-11-17 2007-01-25 Game system and game program Active JP5392986B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007015532A JP5392986B2 (en) 2006-11-17 2007-01-25 Game system and game program
US11/984,445 US9327192B2 (en) 2006-11-17 2007-11-16 Game system and storage medium storing game program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006312255 2006-11-17
JP2006312255 2006-11-17
JP2007015532A JP5392986B2 (en) 2006-11-17 2007-01-25 Game system and game program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012282852A Division JP2013078624A (en) 2006-11-17 2012-12-26 Game system and game program

Publications (3)

Publication Number Publication Date
JP2008142509A JP2008142509A (en) 2008-06-26
JP2008142509A5 JP2008142509A5 (en) 2008-08-07
JP5392986B2 true JP5392986B2 (en) 2014-01-22

Family

ID=39603326

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2007015532A Active JP5392986B2 (en) 2006-11-17 2007-01-25 Game system and game program
JP2007023489A Active JP5525681B2 (en) 2006-11-17 2007-02-01 Game system and game program
JP2012282852A Pending JP2013078624A (en) 2006-11-17 2012-12-26 Game system and game program
JP2012285127A Pending JP2013078634A (en) 2006-11-17 2012-12-27 Game system and game program

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2007023489A Active JP5525681B2 (en) 2006-11-17 2007-02-01 Game system and game program
JP2012282852A Pending JP2013078624A (en) 2006-11-17 2012-12-26 Game system and game program
JP2012285127A Pending JP2013078634A (en) 2006-11-17 2012-12-27 Game system and game program

Country Status (1)

Country Link
JP (4) JP5392986B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5520457B2 (en) 2008-07-11 2014-06-11 任天堂株式会社 GAME DEVICE AND GAME PROGRAM
EP2228109B1 (en) 2009-03-09 2021-03-24 Nintendo Co., Ltd. Information processing apparatus, storage medium having information processing program stored therein, information processing system, and display range control method
JP5545438B2 (en) * 2010-05-12 2014-07-09 株式会社セガ Game device
US20130225295A1 (en) * 2012-02-24 2013-08-29 Nintendo Co., Ltd. Methods and/or systems for controlling virtual objects
JP5959047B2 (en) * 2012-04-04 2016-08-02 任天堂株式会社 Display control system, display control method, display control program, and display control apparatus
JP6042394B2 (en) * 2014-09-30 2016-12-14 任天堂株式会社 Coordinate calculation apparatus and coordinate calculation program
JP6598748B2 (en) * 2016-08-26 2019-10-30 任天堂株式会社 Information processing system, information processing program, information processing apparatus, and information processing method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000308756A (en) * 1999-04-27 2000-11-07 Taito Corp Input controller of game device
JP2001104636A (en) * 1999-10-04 2001-04-17 Shinsedai Kk Cenesthesic ball game device
JP4610971B2 (en) * 2004-09-07 2011-01-12 任天堂株式会社 Game program

Also Published As

Publication number Publication date
JP2008142509A (en) 2008-06-26
JP2013078624A (en) 2013-05-02
JP2013078634A (en) 2013-05-02
JP5525681B2 (en) 2014-06-18
JP2008142511A (en) 2008-06-26

Similar Documents

Publication Publication Date Title
US9327192B2 (en) Game system and storage medium storing game program
US9901814B2 (en) Game system and storage medium storing game program
US7833099B2 (en) Game apparatus and recording medium recording game program for displaying a motion matching a player&#39;s intention when moving an input device
JP4884867B2 (en) Information processing apparatus and information processing program
JP5330640B2 (en) GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND GAME PROCESSING METHOD
US8308563B2 (en) Game system and storage medium having game program stored thereon
JP5430246B2 (en) GAME DEVICE AND GAME PROGRAM
EP1900406B1 (en) Game device and storage medium storing game program
JP4989105B2 (en) Game controller
EP1759745A1 (en) Videogame system and storage medium having videogame program stored thereon
US20130165227A1 (en) Video game using dual motion sensing controllers
US20070072680A1 (en) Game controller and game system
US20080311989A1 (en) Game controller and game system
JP5361044B2 (en) GAME DEVICE AND GAME PROGRAM
JP2013078624A (en) Game system and game program
JP5358168B2 (en) GAME DEVICE AND GAME PROGRAM
US8012004B2 (en) Computer-readable storage medium having game program stored thereon and game apparatus
JP5498690B2 (en) GAME PROGRAM AND GAME DEVICE
JP5259965B2 (en) Information processing program and information processing apparatus
JP2010142404A (en) Game program, and game apparatus
JP5945297B2 (en) GAME PROGRAM AND GAME DEVICE
JP5116159B2 (en) Information processing system, information processing method, and information processing program
JP5331259B2 (en) Information processing program, information processing apparatus, information processing system, and information processing method
JP5357998B2 (en) GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND GAME PROCESSING METHOD

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080609

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091215

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131015

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5392986

Country of ref document: JP

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250