プログラム、情報記憶媒体、及びゲーム装置
【課題】コントローラを動かすことにより入力する2つの異なる操作入力を正確に検出することが可能なプログラム、情報記憶媒体、及びゲーム装置を提供すること。
【解決手段】コントローラに内蔵された加速度センサの所定の軸の出力値に基づいて、第1の動き操作入力を検出する。加速度センサの所定の軸の出力値が所定の条件を満たすか否かを判断し、所定の条件を満たさないと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、所定の条件を満たすと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出する。そして検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行う。
【解決手段】コントローラに内蔵された加速度センサの所定の軸の出力値に基づいて、第1の動き操作入力を検出する。加速度センサの所定の軸の出力値が所定の条件を満たすか否かを判断し、所定の条件を満たさないと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、所定の条件を満たすと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出する。そして検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、及びゲーム装置に関する。
【背景技術】
【0002】
従来から、複数のコントローラ(操作ユニット)に設けられた加速度センサ等の動きセンサによってゲーム制御を行うゲーム装置が知られている。このようなゲーム装置では、傾け操作ユニットが傾けられた場合にキャラクタを回転させ、振り操作ユニットが振られた場合にキャラクタを加速させることによりキャラクタの動作を制御するものがある。かかる技術として、例えば特開2007−296173号公報に開示される従来技術がある。
【特許文献1】特開2007−296173号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、従来のゲーム装置では、キャラクタの動作を制御するために2つのコントローラをそれぞれ異なる態様で操作しなければならず、操作が複雑になってしまうといった問題点があった。また1のコントローラを用いて傾き操作と振り操作とを検出しようとすると、プレーヤが振り操作を行っているつもりでも傾き操作を検出してしまう場合があり、2つの異なる操作入力を正確に検出することができないといった問題点があった。
【0004】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、
コントローラを動かすことにより入力する2つの異なる操作入力を正確に検出することが可能なプログラム、情報記憶媒体、及びゲーム装置を提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うプログラムであって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部としてコンピュータを機能させ、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とする。
【0006】
また本発明は上記各部を含むゲーム装置に関係する。また本発明はコンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関係する。
【0007】
本発明において、動きセンサとは、加速度センサ、速度センサ、ジャイロセンサ、変位を測定するセンサ等で構成することができる。
【0008】
また本発明において、動きセンサの所定の軸は、動きセンサの複数の軸でもよい。また動きセンサの所定の軸以外の軸は、動きセンサの所定の軸以外の軸を含む複数の軸でもよい。
【0009】
また本発明において、動き操作入力とは、コントローラを所定の方向に動かしたり、コントローラを所定の姿勢に保ったりして入力を行う操作入力のことである。
【0010】
また本発明において、第1及び第2の動き操作入力に基づき行われるゲーム演算処理は、例えばゲーム空間内のオブジェクト(プレーヤの操作対象となるゲームキャラクタやアイテム、その他のオブジェクト)の移動や動作や位置の制御演算でもよいし、ヒットチェック処理でもよいし、関連づけられたゲームパラメータの演算処理でもよいし、パワーや難易度の制御でもよいし、音楽ゲームにおける演奏入力の判定処理でもよい。
【0011】
また本発明において、動きセンサの所定の軸の出力値が所定の条件を満たすか否かの判断は、動きセンサの所定の軸の出力値が所定値以上になったか否かに基づき行うようにしてもよいし、第1の動き操作入力が検出されたか否かに基づき行うようにしてもよい。
【0012】
本発明によれば、動きセンサの所定の軸の出力値が所定の条件を満たすか否かの判断結果に応じて第2の動き操作入力の検出条件となる閾値を変えることができ、動きセンサの所定の軸方向への操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力が検出されてしまうことを防止することができる。
【0013】
(2)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1の動き操作入力が検出されなかった場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
第1の動き操作入力が検出された場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とする。
【0014】
本発明によれば、第1の動き操作入力の検出の有無に応じて第2の動き操作入力の検出条件となる閾値を変えることができ、第1の動き操作入力が検出されるような操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力が検出されてしまうことを防止することができる。
【0015】
(3)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づき第1の動き操作入力を検出し、前記動きセンサの第3軸の出力値に基づき第2の動き操作入力を検出することを特徴とする。
【0016】
本発明によれば、動きセンサの第1軸又は第2軸方向への操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力(第3軸方向への操作入力)が検出されてしまうことを防止することができる。
【0017】
(4)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値と第2軸の出力値の合算値に基づいて、第1の動き操作入力を検出することを特徴とする。
【0018】
(5)また本発明に係るプログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御することを特徴とする。
【0019】
(6)また本発明に係るプログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御することを特徴とする。
【0020】
本発明によれば、プレーヤは簡単な操作でオブジェクトをコース内において移動させることができる。
【0021】
(7)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないことを特徴とする。
【0022】
本発明によれば、1回の操作に対して複数回の動き操作入力を検出してしまうことを防止することができる。
【0023】
(8)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出することを特徴とする。
【0024】
本発明によれば、プレーヤは動きセンサを内蔵する2つのコントローラを用いたダイナミックなゲームプレイを行うことができる。
【0025】
(9)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1のコントローラに内蔵された第1の動きセンサの所定の軸の出力値と第2のコントローラに内蔵された第2の動きセンサの所定の軸の出力値の合算値に基づき第1の動き操作入力を検出し、前記第1の動きセンサの所定の軸以外の軸の出力値と前記第2の動きセンサの所定の軸以外の軸の出力値の合算値に基づき第2の動き操作入力を検出することを特徴とする。
【0026】
本発明によれば、第1、第2の動きセンサの出力値の合算値に基づき動き操作入力を検出することで、2つのコントローラを同時に動かした場合と一方のコントローラのみを動かした場合とで検出結果を異ならせることができる。また2つのコントローラを同方向に動かした場合と逆方向に動かした場合とで検出結果を異ならせることができる。
【発明を実施するための最良の形態】
【0027】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0028】
1.構成
まず、図1を用いて本実施形態のゲーム装置の構成について説明する。なお、図1は、本実施形態のゲーム装置における機能構成の例である。また、本実施形態のゲーム装置は、当該構成要素(各部)の一部を省略した構成としてもよい。
【0029】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク等により実現できる。操作部160は、プレーヤが把持する第1のコントローラ161、第2のコントローラ165によって実現される。
【0030】
第1のコントローラ161は、第1の加速度センサ(動きセンサの一例である)162、ボタン、十字キー等の加速度センサ以外の操作入力値をえるための操作入力手段を含む。第1の加速度センサ162は第1のコントローラ161自体の動きに応じて生じる加速度ベクトルを検出する。
【0031】
第2のコントローラ165は、第2の加速度センサ(動きセンサの一例である)166を含む。第2の加速度センサ166は第2のコントローラ165自体の動きに応じて生じる加速度ベクトルを検出する。
【0032】
第1の加速度センサ162、第2の加速度センサ166は、操作に応じた加速度を検出し、検出した3軸方向の各軸の加速度情報(出力値)を出力するものであり、圧電型や動電式、歪みケージ式等のハードウェアにより実現できる。
【0033】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0034】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、ハードディスク、メモリーカード、メモリーカセット、磁気ディスク、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0035】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD(液晶表示装置)、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0036】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0037】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリーカードや携帯型ゲーム装置などがある。
【0038】
通信部196は、外部(例えばホスト装置や他のゲーム装置)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0039】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0040】
処理部100(プロセッサ)は、各機能ブロックへの命令の指示、ゲーム処理、画像生成処理、音生成処理などの各種の処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。処理部100の機能は、各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。処理部100は、記憶部170をワーク領域として各種処理を行う。
【0041】
処理部100は、ゲーム処理部110、画像生成部130、音生成部140を含む。なお、これらの一部を省略する構成としてもよい。
【0042】
ゲーム処理部110は、動き操作入力検出部120、ゲーム演算処理部124を含む。
【0043】
動き操作入力検出部120は、第1のコントローラ161及び第2のコントローラ165の少なくとも一方に内蔵された加速度センサの所定の軸の出力値に基づいて、第1の動き操作入力を検出し、第1のコントローラ161及び第2のコントローラ165の少なくとも一方に内蔵された加速度センサの所定の軸以外の軸の出力値に基づいて、第2の動き操作入力を検出する。
【0044】
また動き操作入力検出部120は、第1の加速度センサ162の所定の軸の出力値と第2の動きセンサ166の所定の軸の出力値の合算値(又は平均値)に基づいて、第1の動き操作入力を検出し、第1の加速度センサ162の所定の軸以外の軸の出力値と第2の加速度センサ166の所定の軸以外の軸の出力値の合算値(又は平均値)に基づいて、第2の動き操作入力を検出するようにしてもよい。
【0045】
また動き操作入力検出部120は、加速度センサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づいて、第1の動き操作入力を検出し、加速度センサの第3軸の出力値に基づいて、第2の動き操作入力を検出するようにしてもよい。
【0046】
また動き操作入力検出部120は、加速度センサの第1軸の出力値と第2軸の出力値の合算値(又は平均値)に基づいて、第1の動き操作入力を検出するようにしてもよい。
【0047】
また動き操作入力検出部120は、第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないようにしてもよい。
【0048】
また動き操作入力検出部120は、加速度センサの所定の軸の出力値が所定の条件を満たすか否かを判断し、所定の条件を満たさないと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、所定の条件を満たすと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出する。
【0049】
また動き操作入力検出部120は、第1の動き操作入力が検出されなかった場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、第1の動き操作入力が検出された場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出するようにしてもよい。
【0050】
ゲーム演算処理部124は、検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行う。
【0051】
またゲーム演算処理部124は、移動制御部126を含む。移動制御部126は、移動体オブジェクトの移動演算(移動シミュレーション)を行う。即ち、この移動制御部126は、操作部160によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム(移動アルゴリズム)などに基づいて、移動体オブジェクトをオブジェクト空間内で移動させるための処理を行う。具体的には、本実施形態の移動制御部126は、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。ここでフレームとは、オブジェクトの移動処理(シミュレーション処理)や画像生成処理を行う時間の単位である。そして、本実施形態では、フレームレートは毎フレーム固定としてもよいし、処理負荷に応じて可変としてもよい。
【0052】
特に本実施形態の移動制御部126は、検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御する。
【0053】
また移動制御部126は、検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御するようにしてもよい。
【0054】
なおゲーム処理部110は、図示しないオブジェクト空間設定部を含むようにしてもよい。オブジェクト空間設定部は、キャラクタ、車、戦車、建物、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ち、ワールド座標系でのオブジェクト(モデルオブジェクト)の位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0055】
またゲーム処理部110は、図示しない仮想カメラ制御部を含むようにしてもよい。仮想カメラ制御部は、プレーヤからの入力に基づき仮想カメラの位置、回転(向き)等を制御する処理を行う。
【0056】
またゲーム処理部110は、図示しない動作制御部を含むようにしてもよい。動作制御部は、移動体オブジェクトの動作演算(動作シミュレーション)を行う。即ち、この動作制御部は、操作部160によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム(動作アルゴリズム)や各種データ(モーションデータ)などに基づいて、移動体オブジェクトの動作(モーション、アニメーション)を制御するための処理を行う。具体的には、本実施形態の動作制御部は、オブジェクトの動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。動作制御部は、検出された第1の動き操作入力及び第2の動き操作入力に基づきオブジェクトの動作を制御するようにしてもよい。
【0057】
画像生成部130は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、本実施形態の画像生成部130は、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお、頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0058】
また、頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。
【0059】
ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色をフレームバッファ(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。
【0060】
これにより、オブジェクト空間内に設定された仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
【0061】
音生成部140は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0062】
なお、本実施形態のゲーム装置は、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また、複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0063】
2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【0064】
2−1.操作部
図2(A)(B)は、本実施形態の操作部の一例を示す図である。図2(A)は、第2のコントローラを示しており、図2(B)は第1のコントローラを示している。
【0065】
第1のコントローラ161は3軸(図2(B)のX軸、Y軸、Z軸)の第1の加速度センサ162(動きセンサの一例)を内蔵している。第1の加速度センサ162は、第1のコントローラ161にかかる加速度ベクトルを検出することができる。また第1のコントローラ161は、十字キー163、ボタン164等を含む。
【0066】
第2のコントローラ165は3軸(図2(A)のX軸、Y軸、Z軸)の第2の加速度センサ166(動きセンサの一例)を内蔵している。第2の加速度センサ166は、第2のコントローラ165にかかる加速度ベクトルを検出することができる。また第2のコントローラ165は、ボタン167等を含む。
【0067】
第1及び第2の加速度センサ162、166は、それぞれ3方向、すなわちX軸(コントローラの左右方向)、Y軸(コントローラの裏面―表面方向)、Z軸(コントローラの長手方向)の各軸の加速度を検出し、検出した加速度情報を出力する。またX軸方向及びY軸方向、又はX軸方向及びZ軸方向の加速度のみを検出する2軸の加速度センサを用いるようにしてもよい。
【0068】
2−2.加速コマンド(第1の動き操作入力の一例)
図3は本実施形態のゲーム画像の一例である。
【0069】
本実施の形態では操作部からの操作入力によりゲームキャラクタである競走馬オブジェクト210を走行させるゲームを行うもので、走行する競走馬オブジェクト210を含むオブジェクト空間を仮想カメラからみた画像が生成され、ゲーム画像200として表示される。
【0070】
図4は、馬の速度制御に関する加速振動コマンド(第1の動き操作入力の一例)の操作例であり、プレーヤが第1のコントローラ161を右手にもち、第2のコントローラ165を左手にもって、同図に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を加速させることができる。このような操作が行われると、各コントローラ自体の動きによって−Y軸(第1軸)方向及び−Z軸(第2軸)方向に加速度が生じる。
【0071】
すなわち、第1のコントローラ161に内蔵された第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2のコントローラ165に内蔵された第2の加速度センサのYZ軸の出力値の合算値の絶対値が、加速コマンドに関連した所定の閾値以上であれば加速コマンドが入力されたと判断し、加速処理が行われる。
【0072】
例えば加速コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度aを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間aにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を加速させることができる。なお加速度コマンドを検出した場合には、その後所定期間は加速度コマンドの検出を行わないようにしてもよい。このようにすることで、1回の振り操作に対応して1回の加速コマンドを検出することができ、プレーヤの意図に反して加速度コマンドを複数回検出してしまうことを防止することができる。
【0073】
また所定期間加速コマンドを検出しなかった場合には、プレーヤの操作対象オブジェクトである馬に所定期間、進行方向と逆方向に所定の加速度−bを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間−bにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を減速させることができる。
【0074】
このように本実施形態によれば、プレーヤは、あたかも両手に持った手綱を操作する感覚で、競走馬オブジェクトを加速させることができる。
【0075】
2−3.右寄せ/左寄せコマンド(第2の動き操作入力の一例)
図5、図6は、馬の向き制御に関する右寄せ/左寄せコマンド(第2の動き操作入力の一例)の入力例について説明するための図である。
【0076】
図5は、右寄せコマンドの操作例であり、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、同図に示すように同時に右側に(Y軸回りに時計回りに)傾ける操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を右に寄せることができる。このような操作が行われると、重力によって+X軸(第3軸)方向に加速度が生じる。
【0077】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサのX軸の出力値と第2のゲームコントローラ165に内蔵された第2の加速度センサのX軸の出力値の合算値の絶対値が、右寄せ/左寄せコマンドに関連した第1の閾値以上であり、当該合算値が正の値であれば右寄せコマンドが入力されたと判断し、右寄せ処理が行われる。
【0078】
例えば右寄せコマンドを検出したら、図7(A)に示すように、コースCSの道のりに沿って移動する競走馬オブジェクト210の進行方向MV(移動方向)を所定期間、所定の角度cだけ右方向に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである競走馬オブジェクト210に対応した向きパラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)を所定の角度cだけ右方向(時計回り)に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである競走馬オブジェクト210を右に寄せることができる。なお所定期間経過後には競走馬オブジェクト210を再びコースCSの道のりに沿って移動させるようにしてもよい。
【0079】
図6は、左寄せコマンドの操作例であり、プレーヤが第1のコントローラ161と第2のコントローラ165とを、同時に左側に(Y軸回りに反時計回りに)傾ける操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を左に寄せることができる。このような操作が行われると、重力によって−X軸(第3軸)方向に加速度が生じる。
【0080】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサのX軸の出力値と第2のゲームコントローラ165に内蔵された第2の加速度センサのX軸の出力値の合算値の絶対値が、右寄せ/左寄せコマンドに関連した第1の閾値以上であり、当該合算値が負の値であれば左寄せコマンドが入力されたと判断し、左寄せ処理が行われる。
【0081】
例えば左寄せコマンドを検出したら、図7(B)に示すように、コースCSの道のりに沿って移動する競走馬オブジェクト210の進行方向MV(移動方向)を所定期間、所定の角度cだけ左方向(反時計回り)に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである競走馬オブジェクト210に対応した向きパラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)を所定の角度cだけ左方向に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである競走馬オブジェクト210を左に寄せることができる。なお右寄せ/左寄せコマンドを検出した場合には、その後所定期間は右寄せ/左寄せコマンドの検出を行わないようにしてもよい。このようにすることで頻繁に右寄せ/左寄せコマンドを検出して競走馬オブジェクト210の動きが不安定となってしまうことを防止することができる。
【0082】
このように本実施形態によれば、プレーヤは、あたかも両手に手綱を持ちながら自身の重心を右又は左に傾ける感覚で、競走馬オブジェクトを右又は左に寄せることができる。
【0083】
なお本実施形態では、プレーヤは加速コマンドと右寄せ/左寄せコマンドとを同時に入力することができる。すなわち、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、図5に示すように同時に右側に(Y軸回りに時計回りに)傾けた状態で、図4に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの競走馬オブジェクト210を加速させつつ、右に寄せることができる。このような操作が行われた場合には、各コントローラ自体の動きによって−Y軸方向及び−Z軸方向に加速度が生じるとともに、各コントローラを右側に傾ける操作のみが行われた場合に比べて、+X軸方向に大きな加速度が生じる。
【0084】
同様に、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、図6に示すように同時に左側に(Y軸回りに反時計回りに)傾けた状態で、図4に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの競走馬オブジェクト210を加速させつつ、左に寄せることができる。このような操作が行われた場合には、各コントローラ自体の動きによって−Y軸方向及び−Z軸方向に加速度が生じるとともに、各コントローラを左側に傾ける操作のみが行われた場合に比べて、−X軸方向に大きな加速度が生じる。
【0085】
2−4.加速コマンド(第1の動き操作入力の一例)と右寄せ/左寄せコマンド(第2の動き操作入力の一例)の検出手法
以下、動きセンサとして加速度センサを用いて3軸それぞれの加速度値に基づいて加速コマンドと右寄せ/左寄せコマンドを検出する場合を例にとり説明する。
【0086】
図8は、加速度センサの出力値を加速度ベクトルとして示したグラフである。縦軸は加速度センサのYZ軸の出力値(第1のコントローラに内蔵された第1の加速度センサのYZ軸の出力値と第2のコントローラに内蔵された第2の加速度センサのYZ軸の出力値の合算値)を示し、横軸は加速度センサのX軸の出力値(第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値)を示す。また加速度ベクトルV1は、第1及び第2のコントローラを同時に下方向に振る操作が行われた場合に検出した加速度ベクトルを示し、加速度ベクトルV2は、第1及び第2のコントローラを同時に右側に傾ける操作が行われた場合に検出された加速度ベクトルを示し、加速度ベクトルV3は、第1及び第2のコントローラを同時に左側に傾けた状態で下方向に振る操作が行われた場合に検出した加速度ベクトルを示す。
【0087】
本実施形態では、加速度センサのYZ軸の出力値が閾値S0を越えた場合に加速コマンドを検出する。例えば加速度ベクトルV1、V3は、そのYZ軸成分が閾値S0を超えているため、このような加速度ベクトルを検出した場合には加速コマンドを検出する。
【0088】
また本実施形態では、加速度センサのYZ軸の出力値が閾値S0を超えなかった場合には、加速度センサのX軸の出力値が正の閾値S1a(第1の閾値)を越えた場合に右寄せコマンドを検出し、負の閾値S1b(第1の閾値)を越えた場合に左寄せコマンドを検出する。そして加速度センサのYZ軸の出力値が閾値S0を超えた場合には、加速度センサのX軸の出力値が正の閾値S2a(第2の閾値)を越えた場合に右寄せコマンドを検出し、負の閾値S2b(第2の閾値)を越えた場合に左寄せコマンドを検出する。
【0089】
例えば加速度ベクトルV2は、そのYZ軸成分が閾値S0を越えておらず、且つそのX軸成分が正の閾値S1a(第1の閾値)を越えているため、このような加速度ベクトルを検出した場合には右寄せコマンドを検出する。また加速度ベクトルV3は、そのYZ軸成分が閾値S0を越えおり、且つそのX軸成分が負の閾値S2b(第2の閾値)を越えているため、このような加速度ベクトルを検出した場合には加速コマンドに加えて左寄せコマンドを検出する。なお加速度ベクトルV1については、そのYZ軸成分が閾値S0を越えているため、そのX軸成分が正の閾値S2a(第2の閾値)を超えていない以上右寄せコマンドを検出しない。
【0090】
加速度ベクトルV1に示すように、プレーヤがコントローラを右側或いは左側に傾けずに下方向に振る操作を行ったつもりでもX軸方向に加速度が生じてしまうことがある。本実施形態では、YZ軸の出力値が閾値S0を超えた場合(加速コマンドを検出した場合)には、第1の閾値より大きな第2の閾値に基づき右寄せ/左寄せコマンドを検出しており、これによりコントローラを上下に振る操作が行われた場合にプレーヤの意図に反して右寄せ/左寄せコマンドが検出されてしまうことを防止することができる。
【0091】
またYZ軸の出力値が閾値S0を超えていない場合(加速コマンドを検出しなかった場合)には、比較的小さな第1の閾値に基づき右寄せ/左寄せコマンドを検出することにより、コントローラを傾けるという大きな加速度が出力されない操作からでも右寄せ/左寄せコマンドを検出することができる。なおコントローラを傾けながら下方向に振る操作が行われた場合には、X軸方向に比較的大きな加速度が生じるため第1の閾値より大きな第2の閾値を用いても右寄せ/左寄せコマンドを検出することができる。
【0092】
2−5.ムチ入力コマンド
図9は、馬の速度制御に関するムチ入力振動コマンドの操作例であり、同図に示すようにプレーヤが右手にもった第1のゲームコントローラ161のボタン164を押しながら、第1のゲームコントローラ161をふることで、プレーヤの操作対象であるゲームキャラクタ騎手がプレーヤの操作対象であるゲームキャラクタの馬にムチをいれ、馬の速度を飛躍的にアップさせることができる。
【0093】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサの出力値が所定の閾値を超え、且つ第1のゲームコントローラ161のボタン164の押下信号を受け付けた場合には、ムチ入力コマンドが入力されたと判断し、ムチ入力処理が行われる。
【0094】
例えばムチ入力コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度e(e>a)を与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間、通常の加速度aに比べ数倍の大きさのeにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を急加速させることができる。なおムチ入力コマンドを検出した場合には、第2のコントローラに内蔵された第2の加速度センサの出力値(X軸の出力値)と、右寄せ/左寄せコマンドに関連した第1の閾値とに基づき右寄せ/左寄せコマンドを検出して、プレーヤの操作対象オブジェクトである馬を急加速させつつ、右又は左に寄せるようにしてもよい。
【0095】
3.本実施形態の処理
次に、本実施形態の処理の一例について図10、図11のフローチャートを用いて説明する。
【0096】
図10は、加速コマンド(第1の動き操作入力の一例)の検出処理の流れを示すフローチャート図である。
【0097】
まず、第1のコントローラに内蔵された第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2のコントローラに内蔵された第2の加速度センサのYZ軸の出力値の合算値を取得する(ステップS10)。
【0098】
次に取得した合算値が閾値S0を越えた否かを判断し(ステップS12)、超えたと判断した場合には、加速コマンドを検出して、操作対象オブジェクトに所定の正の加速度を与えて加速させる(ステップS14)。このとき操作対象オブジェクトを加速させることで操作対象オブジェクトの速度が所定の最高速度を上回る場合には、操作対象オブジェクトの速度を所定の最高速度に設定する。
【0099】
そして加速コマンドを検出した後は、操作対象オブジェクトの加速を所定期間維持する(ステップS16)。すなわち加速コマンド検出後の所定期間は加速コマンドを検出しないようにする。
【0100】
ステップS12において、取得した合算値が閾値S0を越えていないと判断した場合には、取得した合算値が所定期間閾値S0を超えていないか否かを判断する(ステップS18)。所定期間閾値SOを超えていないと判断した場合には、操作対象オブジェクトに所定の負の加速度を与えて減速させる(ステップS20)。このとき操作対象オブジェクトを減速させることで操作対象オブジェクトの速度が所定の最低速度を下回る場合には、操作対象オブジェクトの速度を所定の最低速度に設定する。そしてステップS16の処理に進み、操作対象オブジェクトの減速を所定期間維持する。
【0101】
図11は、右寄せ/左寄せコマンド(第2の動き操作入力の一例)の検出処理の流れを示すフローチャート図である。
【0102】
まず、第1のコントローラに内蔵された第1の加速度センサのXYZ軸の出力値と第2のコントローラに内蔵された第2の加速度センサのXYZ軸の出力値を取得する(ステップS30)。
【0103】
次に取得した第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2の加速度センサのYZ軸の出力値の合算値が閾値S0を越えた否かを判断し(ステップS32)、閾値S0を超えていないと判断した場合には、取得した第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値が閾値S1を超えたか否かを判断する(ステップS34)。
【0104】
ステップS32において、閾値S0を越えたと判断した場合には、取得した第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値が閾値S2(|S2|>|S1|)を超えたか否かを判断する(ステップS36)。
【0105】
ステップS34において閾値S1を越えたと判断した場合、又はステップS36において閾値S2を超えたと判断した場合には、右寄せ/左寄せコマンドを検出して、操作対象オブジェクトの移動方向を所定角度回転させる(ステップS38)。このとき取得したX軸の出力値の合算値が正の閾値S1(又は正の閾値S2)を越えたか負の閾値S1(又は負の閾値S2)を超えたかによって、右寄せコマンドであるか左寄せコマンドであるかを判断する。
【0106】
そして右寄せ/左寄せコマンドを検出した後は、操作対象オブジェクトの移動方向を所定期間維持する(ステップS40)。すなわち右寄せ/左寄せコマンド検出後の所定期間は右寄せ/左寄せコマンドを検出しないようにする。
【0107】
ステップS34において閾値S1を越えていないと判断した場合、又はステップS36において閾値S2を超えていないと判断した場合には、所定期間右寄せ/左寄せコマンドを検出していないか否かを判断する(ステップS42)。所定期間右寄せ/左寄せコマンドを検出していないと判断した場合には、操作対象オブジェクトの移動方向をコースに沿った道のり方向(例えばコース中央に設定されたパスに沿う方向)に設定する(ステップS44)。そしてステップS40の処理に進み、操作対象オブジェクトの移動方向を所定期間維持する。
【0108】
4.変形例
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0109】
例えば本実施形態では、動きセンサとして3軸の加速度センサを用いる場合について説明したが、2軸の加速度センサを用いて、加速度センサの第1軸(例えば図2に示すY軸又はZ軸)の出力値に基づき第1の動き操作入力を検出して、第2軸(例えば図2に示すX軸)の出力値に基づき第2の動き操作入力を検出するようにしてもよい。
【0110】
また本実施形態では、第1のコントローラに内蔵された第1の加速度センサの出力値と第2のコントローラに内蔵された第2の加速度センサの出力値に基づいて第1及び第2の動き操作入力を検出する場合について説明したが、1のコントローラに内蔵された加速度センサの出力値に基づき第1及び第2の動き操作入力を検出するようにしてもよい。またゲーム状況、ゲーム場面等のゲームパラメータの値に基づいて、第1のコントローラに内蔵された加速度センサの出力値を優先するか、第2のコントローラに内蔵された加速度センサの出力値を優先するかを決定するようにしてもよい。また第1及び第2のコントローラに内蔵された加速度センサの出力値に基づいて、どちらの出力値を優先するかを決定するようにしてもよい。
【0111】
また本実施形態では、加速コマンドを検出した場合にオブジェクトに所定の加速度を与える場合について説明したが、加速コマンドを検出した場合に加速度センサのYZ軸の出力値に基づきオブジェクトに与える加速度又は速度を求めて、コントローラの振りの強弱によってオブジェクトの加速度等が変化するようにしてもよい。
【0112】
また本実施形態では、右寄せ/左寄せコマンドを検出した場合にオブジェクトの移動方向を所定角度回転させる場合について説明したが、右寄せ/左寄せコマンドを検出した場合に加速度センサのX軸の出力値に基づきオブジェクトの移動方向の回転角度を求めて、コントローラの傾きの大きさや振りの強弱によってオブジェクトの移動方向の回転角度が変化するようにしてもよい。
【0113】
また本実施形態では、加速度センサのYZ軸の出力値が加速コマンドの検出条件となる閾値S0を超えたか否かに基づいて、右寄せ/左寄せコマンドの検出条件となる閾値を変更する場合について説明したが、加速度センサのYZ軸の出力値が加速コマンドの検出条件となる閾値S0とは異なる所定の閾値を超えたか否かに基づいて、右寄せ/左寄せコマンドの検出条件となる閾値を変更するようにしてもよい。
【0114】
また本実施形態では、プレーヤがコントローラを下方向に振る操作を行うことで競走馬オブジェクトを加速させる例について説明したが、これに加えてプレーヤが2つのコントローラを同時に上方向に振る操作を行うことで競走馬オブジェクトをジャンプさせるようにしてもよい。すなわち第1の加速度センサのYZ軸の出力値と第2の加速度センサのYZ軸の出力値の合算値が、ジャンプコマンド(第1の動き操作入力の一例)に関連した所定の閾値を超えた場合にジャンプコマンドが入力されたと判断して、競走馬オブジェクトを上方向に移動させつつジャンプする動作を行わせるジャンプ処理を行うようにしてもよい。またジャンプコマンドを検出した場合には、右寄せ/左寄せコマンドを検出しないようにしてもよい。
【0115】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、携帯型ゲームシステム、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【0116】
【図1】本実施形態のゲーム装置の機能ブロック図の例。
【図2】本実施形態の操作部の一例。
【図3】本実施形態のゲーム画像の一例。
【図4】馬の速度制御に関する加速振動コマンドの操作例。
【図5】馬の向き制御に関する右寄せコマンドの操作例。
【図6】馬の向き制御に関する左寄せコマンドの操作例。
【図7】図7(A)(B)は、本実施形態の馬の向き制御について説明するための図。
【図8】加速度センサの出力値を加速度ベクトルとして示したグラフ。
【図9】馬の速度制御に関するムチ入力振動コマンドの操作例。
【図10】加速コマンドの検出処理の流れを示すフローチャート図。
【図11】右寄せ/左寄せコマンドの検出処理の流れを示すフローチャート図。
【符号の説明】
【0117】
100 処理部、110 ゲーム処理部、120 動き操作入力検出部、124 ゲーム演算処理部、126 移動制御部、130 画像生成部、140 音生成部、160 操作部、161 第1のコントローラ、162 第1の加速度センサ、163 ボタン・十字キー等、165 第2のコントローラ、166 第2の加速度センサ、170 記憶部、180 情報記憶媒体、190 表示部、192 音出力部、194 携帯型情報記憶装置、196 通信部
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、及びゲーム装置に関する。
【背景技術】
【0002】
従来から、複数のコントローラ(操作ユニット)に設けられた加速度センサ等の動きセンサによってゲーム制御を行うゲーム装置が知られている。このようなゲーム装置では、傾け操作ユニットが傾けられた場合にキャラクタを回転させ、振り操作ユニットが振られた場合にキャラクタを加速させることによりキャラクタの動作を制御するものがある。かかる技術として、例えば特開2007−296173号公報に開示される従来技術がある。
【特許文献1】特開2007−296173号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、従来のゲーム装置では、キャラクタの動作を制御するために2つのコントローラをそれぞれ異なる態様で操作しなければならず、操作が複雑になってしまうといった問題点があった。また1のコントローラを用いて傾き操作と振り操作とを検出しようとすると、プレーヤが振り操作を行っているつもりでも傾き操作を検出してしまう場合があり、2つの異なる操作入力を正確に検出することができないといった問題点があった。
【0004】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、
コントローラを動かすことにより入力する2つの異なる操作入力を正確に検出することが可能なプログラム、情報記憶媒体、及びゲーム装置を提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うプログラムであって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部としてコンピュータを機能させ、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とする。
【0006】
また本発明は上記各部を含むゲーム装置に関係する。また本発明はコンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関係する。
【0007】
本発明において、動きセンサとは、加速度センサ、速度センサ、ジャイロセンサ、変位を測定するセンサ等で構成することができる。
【0008】
また本発明において、動きセンサの所定の軸は、動きセンサの複数の軸でもよい。また動きセンサの所定の軸以外の軸は、動きセンサの所定の軸以外の軸を含む複数の軸でもよい。
【0009】
また本発明において、動き操作入力とは、コントローラを所定の方向に動かしたり、コントローラを所定の姿勢に保ったりして入力を行う操作入力のことである。
【0010】
また本発明において、第1及び第2の動き操作入力に基づき行われるゲーム演算処理は、例えばゲーム空間内のオブジェクト(プレーヤの操作対象となるゲームキャラクタやアイテム、その他のオブジェクト)の移動や動作や位置の制御演算でもよいし、ヒットチェック処理でもよいし、関連づけられたゲームパラメータの演算処理でもよいし、パワーや難易度の制御でもよいし、音楽ゲームにおける演奏入力の判定処理でもよい。
【0011】
また本発明において、動きセンサの所定の軸の出力値が所定の条件を満たすか否かの判断は、動きセンサの所定の軸の出力値が所定値以上になったか否かに基づき行うようにしてもよいし、第1の動き操作入力が検出されたか否かに基づき行うようにしてもよい。
【0012】
本発明によれば、動きセンサの所定の軸の出力値が所定の条件を満たすか否かの判断結果に応じて第2の動き操作入力の検出条件となる閾値を変えることができ、動きセンサの所定の軸方向への操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力が検出されてしまうことを防止することができる。
【0013】
(2)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1の動き操作入力が検出されなかった場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
第1の動き操作入力が検出された場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とする。
【0014】
本発明によれば、第1の動き操作入力の検出の有無に応じて第2の動き操作入力の検出条件となる閾値を変えることができ、第1の動き操作入力が検出されるような操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力が検出されてしまうことを防止することができる。
【0015】
(3)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づき第1の動き操作入力を検出し、前記動きセンサの第3軸の出力値に基づき第2の動き操作入力を検出することを特徴とする。
【0016】
本発明によれば、動きセンサの第1軸又は第2軸方向への操作が行われた場合に、プレーヤの意図に反して第2の動き操作入力(第3軸方向への操作入力)が検出されてしまうことを防止することができる。
【0017】
(4)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値と第2軸の出力値の合算値に基づいて、第1の動き操作入力を検出することを特徴とする。
【0018】
(5)また本発明に係るプログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御することを特徴とする。
【0019】
(6)また本発明に係るプログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御することを特徴とする。
【0020】
本発明によれば、プレーヤは簡単な操作でオブジェクトをコース内において移動させることができる。
【0021】
(7)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないことを特徴とする。
【0022】
本発明によれば、1回の操作に対して複数回の動き操作入力を検出してしまうことを防止することができる。
【0023】
(8)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出することを特徴とする。
【0024】
本発明によれば、プレーヤは動きセンサを内蔵する2つのコントローラを用いたダイナミックなゲームプレイを行うことができる。
【0025】
(9)また本発明に係るプログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第1のコントローラに内蔵された第1の動きセンサの所定の軸の出力値と第2のコントローラに内蔵された第2の動きセンサの所定の軸の出力値の合算値に基づき第1の動き操作入力を検出し、前記第1の動きセンサの所定の軸以外の軸の出力値と前記第2の動きセンサの所定の軸以外の軸の出力値の合算値に基づき第2の動き操作入力を検出することを特徴とする。
【0026】
本発明によれば、第1、第2の動きセンサの出力値の合算値に基づき動き操作入力を検出することで、2つのコントローラを同時に動かした場合と一方のコントローラのみを動かした場合とで検出結果を異ならせることができる。また2つのコントローラを同方向に動かした場合と逆方向に動かした場合とで検出結果を異ならせることができる。
【発明を実施するための最良の形態】
【0027】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0028】
1.構成
まず、図1を用いて本実施形態のゲーム装置の構成について説明する。なお、図1は、本実施形態のゲーム装置における機能構成の例である。また、本実施形態のゲーム装置は、当該構成要素(各部)の一部を省略した構成としてもよい。
【0029】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク等により実現できる。操作部160は、プレーヤが把持する第1のコントローラ161、第2のコントローラ165によって実現される。
【0030】
第1のコントローラ161は、第1の加速度センサ(動きセンサの一例である)162、ボタン、十字キー等の加速度センサ以外の操作入力値をえるための操作入力手段を含む。第1の加速度センサ162は第1のコントローラ161自体の動きに応じて生じる加速度ベクトルを検出する。
【0031】
第2のコントローラ165は、第2の加速度センサ(動きセンサの一例である)166を含む。第2の加速度センサ166は第2のコントローラ165自体の動きに応じて生じる加速度ベクトルを検出する。
【0032】
第1の加速度センサ162、第2の加速度センサ166は、操作に応じた加速度を検出し、検出した3軸方向の各軸の加速度情報(出力値)を出力するものであり、圧電型や動電式、歪みケージ式等のハードウェアにより実現できる。
【0033】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0034】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、ハードディスク、メモリーカード、メモリーカセット、磁気ディスク、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0035】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD(液晶表示装置)、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0036】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0037】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリーカードや携帯型ゲーム装置などがある。
【0038】
通信部196は、外部(例えばホスト装置や他のゲーム装置)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0039】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0040】
処理部100(プロセッサ)は、各機能ブロックへの命令の指示、ゲーム処理、画像生成処理、音生成処理などの各種の処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。処理部100の機能は、各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。処理部100は、記憶部170をワーク領域として各種処理を行う。
【0041】
処理部100は、ゲーム処理部110、画像生成部130、音生成部140を含む。なお、これらの一部を省略する構成としてもよい。
【0042】
ゲーム処理部110は、動き操作入力検出部120、ゲーム演算処理部124を含む。
【0043】
動き操作入力検出部120は、第1のコントローラ161及び第2のコントローラ165の少なくとも一方に内蔵された加速度センサの所定の軸の出力値に基づいて、第1の動き操作入力を検出し、第1のコントローラ161及び第2のコントローラ165の少なくとも一方に内蔵された加速度センサの所定の軸以外の軸の出力値に基づいて、第2の動き操作入力を検出する。
【0044】
また動き操作入力検出部120は、第1の加速度センサ162の所定の軸の出力値と第2の動きセンサ166の所定の軸の出力値の合算値(又は平均値)に基づいて、第1の動き操作入力を検出し、第1の加速度センサ162の所定の軸以外の軸の出力値と第2の加速度センサ166の所定の軸以外の軸の出力値の合算値(又は平均値)に基づいて、第2の動き操作入力を検出するようにしてもよい。
【0045】
また動き操作入力検出部120は、加速度センサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づいて、第1の動き操作入力を検出し、加速度センサの第3軸の出力値に基づいて、第2の動き操作入力を検出するようにしてもよい。
【0046】
また動き操作入力検出部120は、加速度センサの第1軸の出力値と第2軸の出力値の合算値(又は平均値)に基づいて、第1の動き操作入力を検出するようにしてもよい。
【0047】
また動き操作入力検出部120は、第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないようにしてもよい。
【0048】
また動き操作入力検出部120は、加速度センサの所定の軸の出力値が所定の条件を満たすか否かを判断し、所定の条件を満たさないと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、所定の条件を満たすと判断した場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出する。
【0049】
また動き操作入力検出部120は、第1の動き操作入力が検出されなかった場合には、加速度センサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、第1の動き操作入力が検出された場合には、加速度センサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出するようにしてもよい。
【0050】
ゲーム演算処理部124は、検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行う。
【0051】
またゲーム演算処理部124は、移動制御部126を含む。移動制御部126は、移動体オブジェクトの移動演算(移動シミュレーション)を行う。即ち、この移動制御部126は、操作部160によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム(移動アルゴリズム)などに基づいて、移動体オブジェクトをオブジェクト空間内で移動させるための処理を行う。具体的には、本実施形態の移動制御部126は、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。ここでフレームとは、オブジェクトの移動処理(シミュレーション処理)や画像生成処理を行う時間の単位である。そして、本実施形態では、フレームレートは毎フレーム固定としてもよいし、処理負荷に応じて可変としてもよい。
【0052】
特に本実施形態の移動制御部126は、検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御する。
【0053】
また移動制御部126は、検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御するようにしてもよい。
【0054】
なおゲーム処理部110は、図示しないオブジェクト空間設定部を含むようにしてもよい。オブジェクト空間設定部は、キャラクタ、車、戦車、建物、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ち、ワールド座標系でのオブジェクト(モデルオブジェクト)の位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0055】
またゲーム処理部110は、図示しない仮想カメラ制御部を含むようにしてもよい。仮想カメラ制御部は、プレーヤからの入力に基づき仮想カメラの位置、回転(向き)等を制御する処理を行う。
【0056】
またゲーム処理部110は、図示しない動作制御部を含むようにしてもよい。動作制御部は、移動体オブジェクトの動作演算(動作シミュレーション)を行う。即ち、この動作制御部は、操作部160によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム(動作アルゴリズム)や各種データ(モーションデータ)などに基づいて、移動体オブジェクトの動作(モーション、アニメーション)を制御するための処理を行う。具体的には、本実施形態の動作制御部は、オブジェクトの動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。動作制御部は、検出された第1の動き操作入力及び第2の動き操作入力に基づきオブジェクトの動作を制御するようにしてもよい。
【0057】
画像生成部130は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、本実施形態の画像生成部130は、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお、頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0058】
また、頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。
【0059】
ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色をフレームバッファ(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。
【0060】
これにより、オブジェクト空間内に設定された仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
【0061】
音生成部140は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0062】
なお、本実施形態のゲーム装置は、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また、複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0063】
2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【0064】
2−1.操作部
図2(A)(B)は、本実施形態の操作部の一例を示す図である。図2(A)は、第2のコントローラを示しており、図2(B)は第1のコントローラを示している。
【0065】
第1のコントローラ161は3軸(図2(B)のX軸、Y軸、Z軸)の第1の加速度センサ162(動きセンサの一例)を内蔵している。第1の加速度センサ162は、第1のコントローラ161にかかる加速度ベクトルを検出することができる。また第1のコントローラ161は、十字キー163、ボタン164等を含む。
【0066】
第2のコントローラ165は3軸(図2(A)のX軸、Y軸、Z軸)の第2の加速度センサ166(動きセンサの一例)を内蔵している。第2の加速度センサ166は、第2のコントローラ165にかかる加速度ベクトルを検出することができる。また第2のコントローラ165は、ボタン167等を含む。
【0067】
第1及び第2の加速度センサ162、166は、それぞれ3方向、すなわちX軸(コントローラの左右方向)、Y軸(コントローラの裏面―表面方向)、Z軸(コントローラの長手方向)の各軸の加速度を検出し、検出した加速度情報を出力する。またX軸方向及びY軸方向、又はX軸方向及びZ軸方向の加速度のみを検出する2軸の加速度センサを用いるようにしてもよい。
【0068】
2−2.加速コマンド(第1の動き操作入力の一例)
図3は本実施形態のゲーム画像の一例である。
【0069】
本実施の形態では操作部からの操作入力によりゲームキャラクタである競走馬オブジェクト210を走行させるゲームを行うもので、走行する競走馬オブジェクト210を含むオブジェクト空間を仮想カメラからみた画像が生成され、ゲーム画像200として表示される。
【0070】
図4は、馬の速度制御に関する加速振動コマンド(第1の動き操作入力の一例)の操作例であり、プレーヤが第1のコントローラ161を右手にもち、第2のコントローラ165を左手にもって、同図に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を加速させることができる。このような操作が行われると、各コントローラ自体の動きによって−Y軸(第1軸)方向及び−Z軸(第2軸)方向に加速度が生じる。
【0071】
すなわち、第1のコントローラ161に内蔵された第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2のコントローラ165に内蔵された第2の加速度センサのYZ軸の出力値の合算値の絶対値が、加速コマンドに関連した所定の閾値以上であれば加速コマンドが入力されたと判断し、加速処理が行われる。
【0072】
例えば加速コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度aを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間aにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を加速させることができる。なお加速度コマンドを検出した場合には、その後所定期間は加速度コマンドの検出を行わないようにしてもよい。このようにすることで、1回の振り操作に対応して1回の加速コマンドを検出することができ、プレーヤの意図に反して加速度コマンドを複数回検出してしまうことを防止することができる。
【0073】
また所定期間加速コマンドを検出しなかった場合には、プレーヤの操作対象オブジェクトである馬に所定期間、進行方向と逆方向に所定の加速度−bを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間−bにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を減速させることができる。
【0074】
このように本実施形態によれば、プレーヤは、あたかも両手に持った手綱を操作する感覚で、競走馬オブジェクトを加速させることができる。
【0075】
2−3.右寄せ/左寄せコマンド(第2の動き操作入力の一例)
図5、図6は、馬の向き制御に関する右寄せ/左寄せコマンド(第2の動き操作入力の一例)の入力例について説明するための図である。
【0076】
図5は、右寄せコマンドの操作例であり、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、同図に示すように同時に右側に(Y軸回りに時計回りに)傾ける操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を右に寄せることができる。このような操作が行われると、重力によって+X軸(第3軸)方向に加速度が生じる。
【0077】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサのX軸の出力値と第2のゲームコントローラ165に内蔵された第2の加速度センサのX軸の出力値の合算値の絶対値が、右寄せ/左寄せコマンドに関連した第1の閾値以上であり、当該合算値が正の値であれば右寄せコマンドが入力されたと判断し、右寄せ処理が行われる。
【0078】
例えば右寄せコマンドを検出したら、図7(A)に示すように、コースCSの道のりに沿って移動する競走馬オブジェクト210の進行方向MV(移動方向)を所定期間、所定の角度cだけ右方向に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである競走馬オブジェクト210に対応した向きパラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)を所定の角度cだけ右方向(時計回り)に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである競走馬オブジェクト210を右に寄せることができる。なお所定期間経過後には競走馬オブジェクト210を再びコースCSの道のりに沿って移動させるようにしてもよい。
【0079】
図6は、左寄せコマンドの操作例であり、プレーヤが第1のコントローラ161と第2のコントローラ165とを、同時に左側に(Y軸回りに反時計回りに)傾ける操作を行うことで、プレーヤの操作対象であるゲームキャラクタの馬を左に寄せることができる。このような操作が行われると、重力によって−X軸(第3軸)方向に加速度が生じる。
【0080】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサのX軸の出力値と第2のゲームコントローラ165に内蔵された第2の加速度センサのX軸の出力値の合算値の絶対値が、右寄せ/左寄せコマンドに関連した第1の閾値以上であり、当該合算値が負の値であれば左寄せコマンドが入力されたと判断し、左寄せ処理が行われる。
【0081】
例えば左寄せコマンドを検出したら、図7(B)に示すように、コースCSの道のりに沿って移動する競走馬オブジェクト210の進行方向MV(移動方向)を所定期間、所定の角度cだけ左方向(反時計回り)に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである競走馬オブジェクト210に対応した向きパラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)を所定の角度cだけ左方向に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである競走馬オブジェクト210を左に寄せることができる。なお右寄せ/左寄せコマンドを検出した場合には、その後所定期間は右寄せ/左寄せコマンドの検出を行わないようにしてもよい。このようにすることで頻繁に右寄せ/左寄せコマンドを検出して競走馬オブジェクト210の動きが不安定となってしまうことを防止することができる。
【0082】
このように本実施形態によれば、プレーヤは、あたかも両手に手綱を持ちながら自身の重心を右又は左に傾ける感覚で、競走馬オブジェクトを右又は左に寄せることができる。
【0083】
なお本実施形態では、プレーヤは加速コマンドと右寄せ/左寄せコマンドとを同時に入力することができる。すなわち、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、図5に示すように同時に右側に(Y軸回りに時計回りに)傾けた状態で、図4に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの競走馬オブジェクト210を加速させつつ、右に寄せることができる。このような操作が行われた場合には、各コントローラ自体の動きによって−Y軸方向及び−Z軸方向に加速度が生じるとともに、各コントローラを右側に傾ける操作のみが行われた場合に比べて、+X軸方向に大きな加速度が生じる。
【0084】
同様に、プレーヤが右手にもった第1のコントローラ161と、左手にもった第2のコントローラ165とを、図6に示すように同時に左側に(Y軸回りに反時計回りに)傾けた状態で、図4に示すように同時に下方向(又は前方向)に振る操作を行うことで、プレーヤの操作対象であるゲームキャラクタの競走馬オブジェクト210を加速させつつ、左に寄せることができる。このような操作が行われた場合には、各コントローラ自体の動きによって−Y軸方向及び−Z軸方向に加速度が生じるとともに、各コントローラを左側に傾ける操作のみが行われた場合に比べて、−X軸方向に大きな加速度が生じる。
【0085】
2−4.加速コマンド(第1の動き操作入力の一例)と右寄せ/左寄せコマンド(第2の動き操作入力の一例)の検出手法
以下、動きセンサとして加速度センサを用いて3軸それぞれの加速度値に基づいて加速コマンドと右寄せ/左寄せコマンドを検出する場合を例にとり説明する。
【0086】
図8は、加速度センサの出力値を加速度ベクトルとして示したグラフである。縦軸は加速度センサのYZ軸の出力値(第1のコントローラに内蔵された第1の加速度センサのYZ軸の出力値と第2のコントローラに内蔵された第2の加速度センサのYZ軸の出力値の合算値)を示し、横軸は加速度センサのX軸の出力値(第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値)を示す。また加速度ベクトルV1は、第1及び第2のコントローラを同時に下方向に振る操作が行われた場合に検出した加速度ベクトルを示し、加速度ベクトルV2は、第1及び第2のコントローラを同時に右側に傾ける操作が行われた場合に検出された加速度ベクトルを示し、加速度ベクトルV3は、第1及び第2のコントローラを同時に左側に傾けた状態で下方向に振る操作が行われた場合に検出した加速度ベクトルを示す。
【0087】
本実施形態では、加速度センサのYZ軸の出力値が閾値S0を越えた場合に加速コマンドを検出する。例えば加速度ベクトルV1、V3は、そのYZ軸成分が閾値S0を超えているため、このような加速度ベクトルを検出した場合には加速コマンドを検出する。
【0088】
また本実施形態では、加速度センサのYZ軸の出力値が閾値S0を超えなかった場合には、加速度センサのX軸の出力値が正の閾値S1a(第1の閾値)を越えた場合に右寄せコマンドを検出し、負の閾値S1b(第1の閾値)を越えた場合に左寄せコマンドを検出する。そして加速度センサのYZ軸の出力値が閾値S0を超えた場合には、加速度センサのX軸の出力値が正の閾値S2a(第2の閾値)を越えた場合に右寄せコマンドを検出し、負の閾値S2b(第2の閾値)を越えた場合に左寄せコマンドを検出する。
【0089】
例えば加速度ベクトルV2は、そのYZ軸成分が閾値S0を越えておらず、且つそのX軸成分が正の閾値S1a(第1の閾値)を越えているため、このような加速度ベクトルを検出した場合には右寄せコマンドを検出する。また加速度ベクトルV3は、そのYZ軸成分が閾値S0を越えおり、且つそのX軸成分が負の閾値S2b(第2の閾値)を越えているため、このような加速度ベクトルを検出した場合には加速コマンドに加えて左寄せコマンドを検出する。なお加速度ベクトルV1については、そのYZ軸成分が閾値S0を越えているため、そのX軸成分が正の閾値S2a(第2の閾値)を超えていない以上右寄せコマンドを検出しない。
【0090】
加速度ベクトルV1に示すように、プレーヤがコントローラを右側或いは左側に傾けずに下方向に振る操作を行ったつもりでもX軸方向に加速度が生じてしまうことがある。本実施形態では、YZ軸の出力値が閾値S0を超えた場合(加速コマンドを検出した場合)には、第1の閾値より大きな第2の閾値に基づき右寄せ/左寄せコマンドを検出しており、これによりコントローラを上下に振る操作が行われた場合にプレーヤの意図に反して右寄せ/左寄せコマンドが検出されてしまうことを防止することができる。
【0091】
またYZ軸の出力値が閾値S0を超えていない場合(加速コマンドを検出しなかった場合)には、比較的小さな第1の閾値に基づき右寄せ/左寄せコマンドを検出することにより、コントローラを傾けるという大きな加速度が出力されない操作からでも右寄せ/左寄せコマンドを検出することができる。なおコントローラを傾けながら下方向に振る操作が行われた場合には、X軸方向に比較的大きな加速度が生じるため第1の閾値より大きな第2の閾値を用いても右寄せ/左寄せコマンドを検出することができる。
【0092】
2−5.ムチ入力コマンド
図9は、馬の速度制御に関するムチ入力振動コマンドの操作例であり、同図に示すようにプレーヤが右手にもった第1のゲームコントローラ161のボタン164を押しながら、第1のゲームコントローラ161をふることで、プレーヤの操作対象であるゲームキャラクタ騎手がプレーヤの操作対象であるゲームキャラクタの馬にムチをいれ、馬の速度を飛躍的にアップさせることができる。
【0093】
すなわち、第1のゲームコントローラ161に内蔵された第1の加速度センサの出力値が所定の閾値を超え、且つ第1のゲームコントローラ161のボタン164の押下信号を受け付けた場合には、ムチ入力コマンドが入力されたと判断し、ムチ入力処理が行われる。
【0094】
例えばムチ入力コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度e(e>a)を与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ(ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例)の加速度を所定期間、通常の加速度aに比べ数倍の大きさのeにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を急加速させることができる。なおムチ入力コマンドを検出した場合には、第2のコントローラに内蔵された第2の加速度センサの出力値(X軸の出力値)と、右寄せ/左寄せコマンドに関連した第1の閾値とに基づき右寄せ/左寄せコマンドを検出して、プレーヤの操作対象オブジェクトである馬を急加速させつつ、右又は左に寄せるようにしてもよい。
【0095】
3.本実施形態の処理
次に、本実施形態の処理の一例について図10、図11のフローチャートを用いて説明する。
【0096】
図10は、加速コマンド(第1の動き操作入力の一例)の検出処理の流れを示すフローチャート図である。
【0097】
まず、第1のコントローラに内蔵された第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2のコントローラに内蔵された第2の加速度センサのYZ軸の出力値の合算値を取得する(ステップS10)。
【0098】
次に取得した合算値が閾値S0を越えた否かを判断し(ステップS12)、超えたと判断した場合には、加速コマンドを検出して、操作対象オブジェクトに所定の正の加速度を与えて加速させる(ステップS14)。このとき操作対象オブジェクトを加速させることで操作対象オブジェクトの速度が所定の最高速度を上回る場合には、操作対象オブジェクトの速度を所定の最高速度に設定する。
【0099】
そして加速コマンドを検出した後は、操作対象オブジェクトの加速を所定期間維持する(ステップS16)。すなわち加速コマンド検出後の所定期間は加速コマンドを検出しないようにする。
【0100】
ステップS12において、取得した合算値が閾値S0を越えていないと判断した場合には、取得した合算値が所定期間閾値S0を超えていないか否かを判断する(ステップS18)。所定期間閾値SOを超えていないと判断した場合には、操作対象オブジェクトに所定の負の加速度を与えて減速させる(ステップS20)。このとき操作対象オブジェクトを減速させることで操作対象オブジェクトの速度が所定の最低速度を下回る場合には、操作対象オブジェクトの速度を所定の最低速度に設定する。そしてステップS16の処理に進み、操作対象オブジェクトの減速を所定期間維持する。
【0101】
図11は、右寄せ/左寄せコマンド(第2の動き操作入力の一例)の検出処理の流れを示すフローチャート図である。
【0102】
まず、第1のコントローラに内蔵された第1の加速度センサのXYZ軸の出力値と第2のコントローラに内蔵された第2の加速度センサのXYZ軸の出力値を取得する(ステップS30)。
【0103】
次に取得した第1の加速度センサのYZ軸の出力値(Y軸の出力値とZ軸の出力値の合算値)と第2の加速度センサのYZ軸の出力値の合算値が閾値S0を越えた否かを判断し(ステップS32)、閾値S0を超えていないと判断した場合には、取得した第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値が閾値S1を超えたか否かを判断する(ステップS34)。
【0104】
ステップS32において、閾値S0を越えたと判断した場合には、取得した第1の加速度センサのX軸の出力値と第2の加速度センサのX軸の出力値の合算値が閾値S2(|S2|>|S1|)を超えたか否かを判断する(ステップS36)。
【0105】
ステップS34において閾値S1を越えたと判断した場合、又はステップS36において閾値S2を超えたと判断した場合には、右寄せ/左寄せコマンドを検出して、操作対象オブジェクトの移動方向を所定角度回転させる(ステップS38)。このとき取得したX軸の出力値の合算値が正の閾値S1(又は正の閾値S2)を越えたか負の閾値S1(又は負の閾値S2)を超えたかによって、右寄せコマンドであるか左寄せコマンドであるかを判断する。
【0106】
そして右寄せ/左寄せコマンドを検出した後は、操作対象オブジェクトの移動方向を所定期間維持する(ステップS40)。すなわち右寄せ/左寄せコマンド検出後の所定期間は右寄せ/左寄せコマンドを検出しないようにする。
【0107】
ステップS34において閾値S1を越えていないと判断した場合、又はステップS36において閾値S2を超えていないと判断した場合には、所定期間右寄せ/左寄せコマンドを検出していないか否かを判断する(ステップS42)。所定期間右寄せ/左寄せコマンドを検出していないと判断した場合には、操作対象オブジェクトの移動方向をコースに沿った道のり方向(例えばコース中央に設定されたパスに沿う方向)に設定する(ステップS44)。そしてステップS40の処理に進み、操作対象オブジェクトの移動方向を所定期間維持する。
【0108】
4.変形例
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0109】
例えば本実施形態では、動きセンサとして3軸の加速度センサを用いる場合について説明したが、2軸の加速度センサを用いて、加速度センサの第1軸(例えば図2に示すY軸又はZ軸)の出力値に基づき第1の動き操作入力を検出して、第2軸(例えば図2に示すX軸)の出力値に基づき第2の動き操作入力を検出するようにしてもよい。
【0110】
また本実施形態では、第1のコントローラに内蔵された第1の加速度センサの出力値と第2のコントローラに内蔵された第2の加速度センサの出力値に基づいて第1及び第2の動き操作入力を検出する場合について説明したが、1のコントローラに内蔵された加速度センサの出力値に基づき第1及び第2の動き操作入力を検出するようにしてもよい。またゲーム状況、ゲーム場面等のゲームパラメータの値に基づいて、第1のコントローラに内蔵された加速度センサの出力値を優先するか、第2のコントローラに内蔵された加速度センサの出力値を優先するかを決定するようにしてもよい。また第1及び第2のコントローラに内蔵された加速度センサの出力値に基づいて、どちらの出力値を優先するかを決定するようにしてもよい。
【0111】
また本実施形態では、加速コマンドを検出した場合にオブジェクトに所定の加速度を与える場合について説明したが、加速コマンドを検出した場合に加速度センサのYZ軸の出力値に基づきオブジェクトに与える加速度又は速度を求めて、コントローラの振りの強弱によってオブジェクトの加速度等が変化するようにしてもよい。
【0112】
また本実施形態では、右寄せ/左寄せコマンドを検出した場合にオブジェクトの移動方向を所定角度回転させる場合について説明したが、右寄せ/左寄せコマンドを検出した場合に加速度センサのX軸の出力値に基づきオブジェクトの移動方向の回転角度を求めて、コントローラの傾きの大きさや振りの強弱によってオブジェクトの移動方向の回転角度が変化するようにしてもよい。
【0113】
また本実施形態では、加速度センサのYZ軸の出力値が加速コマンドの検出条件となる閾値S0を超えたか否かに基づいて、右寄せ/左寄せコマンドの検出条件となる閾値を変更する場合について説明したが、加速度センサのYZ軸の出力値が加速コマンドの検出条件となる閾値S0とは異なる所定の閾値を超えたか否かに基づいて、右寄せ/左寄せコマンドの検出条件となる閾値を変更するようにしてもよい。
【0114】
また本実施形態では、プレーヤがコントローラを下方向に振る操作を行うことで競走馬オブジェクトを加速させる例について説明したが、これに加えてプレーヤが2つのコントローラを同時に上方向に振る操作を行うことで競走馬オブジェクトをジャンプさせるようにしてもよい。すなわち第1の加速度センサのYZ軸の出力値と第2の加速度センサのYZ軸の出力値の合算値が、ジャンプコマンド(第1の動き操作入力の一例)に関連した所定の閾値を超えた場合にジャンプコマンドが入力されたと判断して、競走馬オブジェクトを上方向に移動させつつジャンプする動作を行わせるジャンプ処理を行うようにしてもよい。またジャンプコマンドを検出した場合には、右寄せ/左寄せコマンドを検出しないようにしてもよい。
【0115】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、携帯型ゲームシステム、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【0116】
【図1】本実施形態のゲーム装置の機能ブロック図の例。
【図2】本実施形態の操作部の一例。
【図3】本実施形態のゲーム画像の一例。
【図4】馬の速度制御に関する加速振動コマンドの操作例。
【図5】馬の向き制御に関する右寄せコマンドの操作例。
【図6】馬の向き制御に関する左寄せコマンドの操作例。
【図7】図7(A)(B)は、本実施形態の馬の向き制御について説明するための図。
【図8】加速度センサの出力値を加速度ベクトルとして示したグラフ。
【図9】馬の速度制御に関するムチ入力振動コマンドの操作例。
【図10】加速コマンドの検出処理の流れを示すフローチャート図。
【図11】右寄せ/左寄せコマンドの検出処理の流れを示すフローチャート図。
【符号の説明】
【0117】
100 処理部、110 ゲーム処理部、120 動き操作入力検出部、124 ゲーム演算処理部、126 移動制御部、130 画像生成部、140 音生成部、160 操作部、161 第1のコントローラ、162 第1の加速度センサ、163 ボタン・十字キー等、165 第2のコントローラ、166 第2の加速度センサ、170 記憶部、180 情報記憶媒体、190 表示部、192 音出力部、194 携帯型情報記憶装置、196 通信部
【特許請求の範囲】
【請求項1】
コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うプログラムであって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部としてコンピュータを機能させ、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項2】
請求項1において、
前記動き操作入力検出部は、
第1の動き操作入力が検出されなかった場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
第1の動き操作入力が検出された場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項3】
請求項1又は2において、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づき第1の動き操作入力を検出し、前記動きセンサの第3軸の出力値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項4】
請求項3において、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値と第2軸の出力値の合算値に基づいて、第1の動き操作入力を検出することを特徴とするプログラム。
【請求項5】
請求項1乃至4のいずれかにおいて、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御することを特徴とするプログラム。
【請求項6】
請求項1乃至5のいずれかにおいて、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御することを特徴とするプログラム。
【請求項7】
請求項1乃至6のいずれかにおいて、
前記動き操作入力検出部は、
第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないことを特徴とするプログラム。
【請求項8】
請求項1乃至7のいずれかにおいて、
前記動き操作入力検出部は、
第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項9】
請求項1乃至8のいずれかにおいて、
前記動き操作入力検出部は、
第1のコントローラに内蔵された第1の動きセンサの所定の軸の出力値と第2のコントローラに内蔵された第2の動きセンサの所定の軸の出力値の合算値に基づき第1の動き操作入力を検出し、前記第1の動きセンサの所定の軸以外の軸の出力値と前記第2の動きセンサの所定の軸以外の軸の出力値の合算値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項10】
コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至9のいずれかのプログラムを記録したことを特徴とする情報記憶媒体。
【請求項11】
コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うゲーム装置であって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部とを含み、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするゲーム装置。
【請求項1】
コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うプログラムであって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部としてコンピュータを機能させ、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項2】
請求項1において、
前記動き操作入力検出部は、
第1の動き操作入力が検出されなかった場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
第1の動き操作入力が検出された場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項3】
請求項1又は2において、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値及び第2軸の出力値の少なくとも一方に基づき第1の動き操作入力を検出し、前記動きセンサの第3軸の出力値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項4】
請求項3において、
前記動き操作入力検出部は、
前記動きセンサの第1軸の出力値と第2軸の出力値の合算値に基づいて、第1の動き操作入力を検出することを特徴とするプログラム。
【請求項5】
請求項1乃至4のいずれかにおいて、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきオブジェクトの移動方向を制御することを特徴とするプログラム。
【請求項6】
請求項1乃至5のいずれかにおいて、
前記ゲーム演算処理部は、
検出された第1の動き操作入力に基づきコースに沿って移動するオブジェクトの速度又は加速度を制御し、検出された第2の動き操作入力に基づきコースに沿って移動するオブジェクトの移動方向を制御することを特徴とするプログラム。
【請求項7】
請求項1乃至6のいずれかにおいて、
前記動き操作入力検出部は、
第1の動き操作入力を検出した場合には、その後所定期間は第1の動き操作入力の検出を行わず、第2の動き操作入力を検出した場合には、その後所定期間は第2の動き操作入力の検出を行わないことを特徴とするプログラム。
【請求項8】
請求項1乃至7のいずれかにおいて、
前記動き操作入力検出部は、
第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、第1のコントローラ及び第2のコントローラの少なくとも一方に内蔵された動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項9】
請求項1乃至8のいずれかにおいて、
前記動き操作入力検出部は、
第1のコントローラに内蔵された第1の動きセンサの所定の軸の出力値と第2のコントローラに内蔵された第2の動きセンサの所定の軸の出力値の合算値に基づき第1の動き操作入力を検出し、前記第1の動きセンサの所定の軸以外の軸の出力値と前記第2の動きセンサの所定の軸以外の軸の出力値の合算値に基づき第2の動き操作入力を検出することを特徴とするプログラム。
【請求項10】
コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至9のいずれかのプログラムを記録したことを特徴とする情報記憶媒体。
【請求項11】
コントローラに内蔵された動きセンサの各軸の出力値に基づきゲームを行うゲーム装置であって、
前記動きセンサの所定の軸の出力値に基づき第1の動き操作入力を検出し、前記動きセンサの所定の軸以外の軸の出力値に基づき第2の動き操作入力を検出する動き操作入力検出部と、
検出された第1の動き操作入力及び第2の動き操作入力に基づきゲーム演算処理を行うゲーム演算処理部とを含み、
前記動き操作入力検出部は、
前記動きセンサの所定の軸の出力値が所定の条件を満たすか否かを判断し、
所定の条件を満たさないと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第1の閾値とに基づき第2の動き操作入力を検出し、
所定の条件を満たすと判断した場合には、前記動きセンサの所定の軸以外の軸の出力値と第2の閾値とに基づき第2の動き操作入力を検出することを特徴とするゲーム装置。
【図1】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図3】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図3】
【公開番号】特開2009−160076(P2009−160076A)
【公開日】平成21年7月23日(2009.7.23)
【国際特許分類】
【出願番号】特願2007−340181(P2007−340181)
【出願日】平成19年12月28日(2007.12.28)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】
【公開日】平成21年7月23日(2009.7.23)
【国際特許分類】
【出願日】平成19年12月28日(2007.12.28)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】
[ Back to top ]