説明

プログラム、情報記憶媒体、およびゲームシステム

【課題】所定の移動態様でコントローラ16を移動させる場合に、認識率を低下させることなく、コントローラ16の移動態様を適切に認識できるプログラム、情報記憶媒体、およびゲームシステムを提供する。
【解決手段】コントローラ16の所定の移動態様に関連付けられた複数の基準データを記憶し、所定の移動態様による入力を受け付ける入力受付期間内に、複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で加速度センサ30から出力されたか否かを判定し、出力されたと判定された場合に、所定の移動態様による入力を受け付けてゲーム処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、およびゲームシステムに関する。
【背景技術】
【0002】
従来から、加速度センサを搭載したリモコン型のコントローラを用いて入力を行うゲームシステムが知られている(例えば、特許文献1参照)。このようなゲームシステムでは、加速度センサの出力値からコントローラの移動態様などを算出し、算出されたコントローラの移動態様に応じてゲーム処理を行う。例えば特許文献1には、加速度センサの出力値からコントローラの上下方向の動きが算出されると、オブジェクトの翼を上下に羽ばたかせる制御を行うことが記載されている。
【特許文献1】特開2007−282787号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、所定の移動態様でコントローラが移動されたか否かを判定する場合に、コントローラの移動時に出力される加速度センサの出力値の全てが、予め定められた判定用のデータの値に近似しなければならないとすると、判定条件を満足することが難しくなり、認識率が低下してしまうおそれがある。
【0004】
本発明は上記事情に鑑みてなされたものであり、その目的は、所定の移動態様でコントローラを移動させる場合に、認識率を低下させることなく、コントローラの移動態様を適切に認識できるプログラム、情報記憶媒体、およびゲームシステムを提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのゲームシステムであって、前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、前記所定の移動態様による入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、前記判定部に出力されたと判定された場合に、前記所定の移動態様による入力を受け付けてゲーム処理を行うゲーム処理部とを含むゲームシステムに関するものである。
【0006】
また本発明は、上記各部としてコンピュータを機能させるプログラム、および上記各部としてコンピュータを機能させるプログラムを記憶するコンピュータ読み取り可能な情報記憶媒体に関するものである。
【0007】
本発明では、コントローラの所定の移動態様による入力が受け付けられたか否かを、複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序でセンサから出力されたか否かで判定する。従って本発明によれば、認識率を低下させることなく、コントローラの移動態様を適切に認識できる。
【0008】
(2)また本発明は、動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのゲームシステムであって、前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、前記所定の移動態様で前記コントローラを所定回数移動させる入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、前記判定部に出力されたと判定される毎に、前記所定回数を限度として前記判定部に出力されたと判定された回数をカウントするカウント処理を行うカウント部と、前記カウントされた回数に応じてゲーム処理を行うゲーム処理部とを含むゲームシステムに関するものである。
【0009】
また本発明は、上記各部としてコンピュータを機能させるプログラム、および上記各部としてコンピュータを機能させるプログラムを記憶するコンピュータ読み取り可能な情報記憶媒体に関するものである。
【0010】
本発明では、所定の移動態様でコントローラを所定回数移動させる入力が受け付けられたか否かを、複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序でセンサから出力された回数で判定する。従って本発明によれば、認識率を低下させることなく、コントローラの移動態様を適切に認識できる。
【0011】
(3)また本発明のゲームシステム、プログラム及び情報記憶媒体では、前記ゲーム処理部が、前記カウントされた回数が多いほど、ゲーム処理によって得られる特典の価値を高くするようにしてもよい。
【0012】
このようにすると、所定の移動態様でコントローラを所定回数移動させる入力の適合度が高いほど得られる特典の価値が高くなるため、ゲームの趣向性を高めることができるようになる。
【0013】
(4)また本発明のゲームシステム、プログラム及び情報記憶媒体では、前記ゲーム処理部が、前記カウントされた回数が前記所定回数に達していることを条件に、前記所定の移動態様で前記コントローラを所定回数移動させる入力を受け付けてゲーム処理を行うようにしてもよい。
【0014】
このようにすると、所定の移動態様でコントローラを所定回数移動させる入力が成功した場合のみ、入力を受け付けるようにすることができる。
【0015】
(5)また本発明のゲームシステム、プログラム及び情報記憶媒体では、前記所定の移動態様での前記コントローラの移動時における前記センサの出力値に基づいて、前記複数の基準データを決定する決定部を更に含むようにしてもよい。
【0016】
このようにすると、コントローラを所定の移動態様で動かすプレーヤに適した複数の基準データを設定することができるようになる。
【0017】
(6)また本発明のゲームシステム、プログラム及び情報記憶媒体では、前記ゲーム処理部が、前記所定の移動態様で前記コントローラを移動させることをプレーヤに指示する指示標識を表示部に表示させるようにしてもよい。
【0018】
このようにすると、コントローラを所定の移動態様で動かすタイミングをプレーヤに報知することができるようになる。
【0019】
(7)また本発明のゲームシステム、プログラム及び情報記憶媒体では、楽曲の再生制御を行う音制御部を更に含み、前記ゲーム処理部が、前記楽曲の再生に合わせて前記指示標識を表示部に表示させるとともに、前記コントローラの前記所定の移動態様に関連づけられたダンスを行うキャラクタを表示部に表示させるようにしてもよい。
【0020】
(8)また本発明のゲームシステム、プログラム及び情報記憶媒体では、前記センサが検出する物理量は、前記コントローラの加速度ベクトルであり、前記複数の基準データの中の各基準データの値は、少なくとも1軸方向での加速度ベクトルとしてもよい。
【発明を実施するための最良の形態】
【0021】
以下、本発明の実施の形態(本実施形態)について説明する。なお、以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【0022】
1.ゲームシステムの構成
図1は、本実施形態のゲームシステム1の概略構成図の一例である。
【0023】
ゲームシステム1は、プレーヤ20が把持して位置、姿勢、向きを任意に変更可能なコントローラ16と、ゲーム処理を行うゲーム装置本体10と、ゲーム画像を表示させるディスプレイ19とを含む。なお本実施形態では、コントローラ16とゲーム装置本体10とは無線通信により情報の送受信を行っているが、例えば、コントローラ16とゲーム装置本体10とを通信ケーブルで接続し、当該通信ケーブルを介して情報の送受信を行うようにしてもよい。
【0024】
コントローラ16には、加速度センサ30が内蔵されており、この加速度センサ30は、コントローラ16の動きを加速度ベクトル(動きに応じて値が変化する物理量の一例)として検出する。なお本実施形態では、加速度センサ30として、3軸それぞれの加速度ベクトルを検出することができる3軸加速度センサを用いているが、1軸、あるいは2軸の加速度ベクトルを検出する加速度センサを用いてもよい。
【0025】
ゲーム装置本体10は、加速度センサ30が出力する出力値(加速度ベクトル)に基づいてゲーム処理を行い、その処理結果に基づいて、ディスプレイ19に種々のゲーム画像を表示させるとともに、スピーカ(図示省略)にゲーム中のBGMなどの各種の音声を出力させる。
【0026】
このように本実施形態では、コントローラ16の動きを加速度センサ30が検出するため、コントローラ16の動きを操作情報として入力することできる。従って、プレーヤ20はゲーム上の動作に近い動作を行ってコントローラ16を動かすような仮想現実感が高められたゲームを楽しむことができる。
【0027】
2.ゲームシステムの機能ブロック
図2は、本実施形態のゲームシステム1の機能ブロック図の一例である。なお本実施形態のゲームシステム1では、図2の構成要素(各部)を全て含む必要はなく、その一部を省略した構成としてもよい。
【0028】
コントローラ16は、プレーヤが行った操作を操作情報として入力するためのものである。特に本実施形態のコントローラ16は、コントローラ16の動き、姿勢、向き等の少なくともいずれか1つに応じて値が変化する物理量を検出するセンサ162を内蔵しており、センサ162によって検出された物理量を操作情報として入力する。
【0029】
センサ162は、コントローラ16の動き、姿勢、向き等の少なくともいずれか1つに応じて値が変化する物理量として加速度、角速度、速度などの単位時間当たりの変化量を検出し、検出した加速度等の値を出力するものである。本実施形態では、センサ162の機能を加速度センサ30(圧電型や動電式、歪みケージ式等)により実現しているが、姿勢方位センサやジャイロなどにより実現してもよい。また本実施形態では、センサ162は5mec毎に出力値を出力する。
【0030】
なおコントローラ16は、表示部190などの指示面に対するコントローラ16の指示位置を操作情報として入力するようにしてもよい。この場合には、例えば、コントローラ16にCMOSセンサやCCDなどの撮像素子(受光素子)を設け、この撮像素子によって指示面(指示面付近)に設けられたLED等の光源を撮像し、撮像された光源の位置情報と予め設定されている撮像側の基準位置情報とから、指示面に対するコントローラ16の指示位置を求めるようにすればよい。
【0031】
またコントローラ16に、ボタン、レバー、マイク、トラックボール、タッチパネルなどを更に設けるようにしてもよい。またコントローラ16は、プレーヤが把持して動かすものであってもよいし、プレーヤが身につけて動かすものであってもよい。
【0032】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータ(具体的には、本実施形態の各部としてコンピュータを機能させるためのプログラムやデータ)などを格納するものであり、その機能は、光ディスク(CD、DVD等)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。
【0033】
記憶部170は、処理部100や通信部194などのワーク領域や、情報記憶媒体180から展開されたプログラムやデータの格納領域となるもので、その機能はRAM(VRAM)などのハードウェアにより実現できる。そして記憶部170は、主記憶部172、基準データ記憶部174、カウンタ175、描画バッファ176を含んで構成されており、基準データ記憶部174には、コントローラ16の所定の移動態様に関連付けられた複数の基準データが記憶されており、カウンタ175には、後述する判定部114に出力されたと判定された回数が後述するカウント部115によって記憶される。
【0034】
表示部190(ディスプレイ19)は、処理部100により生成された画像を出力するものであり、その機能は、CRTディスプレイ、LCD(液晶ディスプレイ)、OELD(有機ELディスプレイ)、PDP(プラズマディスプレイパネル)、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0035】
音出力部192は、処理部100により生成された音を出力するものであり、その機能は、スピーカ、あるいはヘッドフォンなどにより実現できる。
【0036】
通信部194は、外部(サーバ、他のゲームシステム1など)との間でネットワークを介した通信を行うためのものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアやプログラムなどにより実現できる。
【0037】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラムやデータは、サーバが有する情報記憶媒体からネットワーク及び通信部194を介して情報記憶媒体180(記憶部170)に配信するようにしてもよい。このようなサーバの情報記憶媒体の使用も本発明の範囲に含まれる。
【0038】
処理部100(プロセッサ)は、コントローラ16からの操作情報、あるいは情報記憶媒体180から記憶部170に展開されたプログラムやデータなどに基づいて、ゲーム処理、画像生成処理、あるいは音生成処理などの各種処理を記憶部170の主記憶部172をワーク領域として行う。ゲーム処理としては、例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、あるいはゲーム終了条件が満たされた場合にゲームを終了する処理などを行う。なお処理部100の機能は、各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0039】
そして処理部100は、音制御部110、ゲーム処理部112、判定部114、カウント部115、決定部116、描画部140を含んで構成される。なお、これらの一部を省略する構成としてもよい。
【0040】
音制御部110は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて音処理を行い、ゲーム音(楽曲、BGM、効果音など)を生成し、音出力部192に出力させる。具体的には、情報記憶媒体180から主記憶部172に読み込まれた音データのゲーム音(楽曲、BGM、効果音など)の再生制御を行う。例えば音楽演奏ゲームであれば、ゲームの開始に合わせて、ゲームステージに応じた楽曲の再生を行う。
【0041】
ゲーム処理部112は、表示部190に表示される画像(オブジェクト画像)の表示制御を行う。具体的には、指示標識(所定の移動態様でコントローラ16を移動させることをプレーヤ20に指示する指示標識)、キャラクタ、移動体(車、飛行機など)、建物、樹木、柱、壁、マップ(地形)などの表示すべきオブジェクトを発生させたり、オブジェクトの表示や表示位置を指示したり、オブジェクトを消滅させたりするなどの表示制御を行う。即ち、発生したオブジェクトをオブジェクトリストに登録したり、オブジェクトリストを描画部140等に転送したり、消滅したオブジェクトをオブジェクトリストから削除したりするなどの表示制御を行う。例えば音楽演奏ゲームであれば、楽曲の再生に合わせて所定の移動態様(移動軌跡)でコントローラ16を移動させることをプレーヤ20に指示する指示標識を表示部190に表示させるとともに、コントローラ16の所定の移動態様に関連づけられたダンスを行うキャラクタを表示部190に表示させる表示制御を行う。
【0042】
またゲーム処理部112は、オブジェクト(2次元データ又は3次元データで定義される表示物)の動作や移動が発生した場合に、発生した移動や動作の様子を示す画像を表示部190に表示するための制御を行う。具体的には、コントローラ16からの操作情報、プログラム(移動アルゴリズム)や、各種データ(モーションデータ)などに基づいて、表示物を移動させる処理や動作させる処理を行う。より詳細に説明すると、表示物の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(各パーツの位置、回転角度、或いは形状)を、1フレーム(1/60秒)毎に順次求める処理を行う。なおフレームは、表示物の移動や動作を制御する処理や画像を生成する描画処理を行う時間の単位である。
【0043】
またゲーム処理部112は、後述する判定部114に出力されたと判定された場合に、コントローラ16の所定の移動態様による入力を受け付けてゲーム処理を行う。例えば、音楽演奏ゲームであれば、得点パラメータを更新する処理やゲームの進行を制御するパラメータ(ゲームの続行の可否、あるいはクリアの可否を判別するパラメータ)を更新する処理などを行う。また例えば、キャラクタにコントローラ16の所定の移動態様に関連づけられたダンスを行わせる。また例えば、キャラクタの体力パラメータ(ゲームの進行を制御するパラメータの一例)に応じて勝敗を決定する格闘ゲームであれば、通常攻撃よりも相手キャラクタの体力パラメータを大幅に減少させることができる特殊攻撃を自キャラクタに発動させる処理などを行う。また例えば、車などの移動体をコース上で移動させ順位やタイムを競い合うレースゲームであれば、移動体の速度パラメータを加算して移動体を急加速させる処理などを行う。なお、これらのゲーム処理は一例を挙げたに過ぎず、他の態様のゲーム処理についても適宜採用することができる。なお各種ゲームで使用されるパラメータは、記憶部170に記憶される。
【0044】
またゲーム処理部112は、後述するカウント部115にカウントされた回数に応じてゲーム処理を行う。例えば、音楽演奏ゲームであれば、カウント部115にカウントされた回数に応じて得点パラメータを更新する処理やカウント部115にカウントされた回数に応じてゲームの進行を制御するパラメータ(ゲームの続行の可否、あるいはクリアの可否を判別するパラメータ)を更新する処理などを行う。また例えば、格闘ゲームであれば、相手キャラクタの体力パラメータをカウント部115にカウントされた回数に応じて減少させることができる特殊攻撃を自キャラクタに発動させる処理などを行う。また例えば、レースゲームであれば、カウント部115にカウントされた回数に応じて移動体の速度パラメータを加算して移動体を急加速させる処理などを行う。
【0045】
またゲーム処理部112は、カウント部115にカウントされた回数が多いほど、ゲーム処理によって得られる特典の価値を高くする。例えば、音楽演奏ゲームであれば、カウント部115にカウントされた回数が多いほど得点パラメータの加算量を大きくする。また例えば、格闘ゲームであれば、カウント部115にカウントされた回数が多いほど相手キャラクタの体力パラメータの減少量を大きくする。また例えば、レースゲームであれば、カウント部115にカウントされた回数が多いほど移動体の速度パラメータの加算量を大きくする。
【0046】
またゲーム処理部112は、カウント部115にカウントされた回数が所定回数に達していることを条件に、所定の移動態様でコントローラを所定回数移動させる入力を受け付けてゲーム処理を行うようにしてもよい。例えば、音楽演奏ゲームであれば、カウント部115にカウントされた回数が所定回数に達していることを条件に、得点パラメータを更新する処理やゲームの進行を制御するパラメータ(ゲームの続行の可否、あるいはクリアの可否を判別するパラメータ)を更新する処理などを行うようにしてもよい。また例えば、カウント部115にカウントされた回数が所定回数に達していることを条件に、キャラクタにコントローラ16の所定の移動態様に関連づけられたダンスを行わせるようにしてもよい。また例えば、格闘ゲームであれば、カウント部115にカウントされた回数が所定回数に達していることを条件に、通常の攻撃よりも相手キャラクタの体力パラメータを大幅に減少させることができる特殊攻撃を自キャラクタに発動させるようにしてもよい。また例えば、レースゲームであれば、カウント部115にカウントされた回数が所定回数に達していることを条件に、移動体の速度パラメータを加算して移動体を急加速させるようにしてもよい。
【0047】
判定部114は、コントローラ16の所定の移動態様による入力を受け付ける入力受付期間内に、基準データ記憶部174に記憶されている複数の基準データの中の各基準データの値との間で所与の関係が成立する出力値が予め定められた順序でセンサ162から出力されたか否かを判定する。また判定部114は、所定の移動態様でコントローラ16を所定回数移動させる入力を受け付ける入力受付期間内に、基準データ記憶部174に記憶されている複数の基準データの中の各基準データの値との間で所与の関係が成立する出力値が予め定められた順序でセンサ162から出力されたか否かを判定する。「基準データの値との間で所与の関係が成立する出力値」には、基準データの値を超える出力値、基準データの値以上の出力値、基準データの値以下の出力値、あるいは基準データの値を下回る出力値などが該当する。例えば音楽演奏ゲームであれば、所定の移動態様でコントローラ16を移動させることをプレーヤ20に指示する指示標識が表示されている期間(入力受付期間の一例)内に、基準データ記憶部174に記憶されている複数の基準データの中の各基準データの値との間で所与の関係が成立する出力値(詳細には、基準データの値が正の整数である場合には基準データの値以上の出力値、基準データの値が負の整数である場合には基準データの値以下の出力値)が予め定められた順序でセンサ162から出力されたか否かを判定する。なお本実施形態では、判定部114は判定処理を1フレーム毎に行うため、判定処理は複数の出力値を用いて行うことになる。また「予め定められた順序」は、プログラム内で設定してもよいし、記憶部170に順序判定用のデータを用意してもよい。
【0048】
カウント部115は、入力受付期間内に判定部114に出力されたと判定された回数をカウントするカウント処理を行う。具体的には、判定部114に出力されたと判定される毎に、所定回数を限度として判定部114に出力されたと判定された回数をカウンタ175に更新記憶する。
【0049】
決定部116は、所定の移動態様でのコントローラ16の移動時におけるセンサ162の出力値に基づいて、基準データ記憶部174に記憶される複数の基準データを決定する。例えば、ゲーム開始前に、プレーヤにゲームで使用する移動態様でコントローラ16を移動させ、コントローラ16の移動時におけるセンサ162からの出力値に基づいて複数の基準データを決定し、決定された複数の基準データを基準データ記憶部174に記憶する。
【0050】
描画部140は、処理部100で行われるゲーム処理などの結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。なお、描画部140が生成する画像は、いわゆる2次元画像であってもよいし、3次元画像であってもよい。
【0051】
2次元画像を生成する場合には、優先度の高いオブジェクトが優先度の低いオブジェクトの前面に表示されるようにオブジェクトを合成して描画データを作成する。そして、この描画データに基づいて、合成後のオブジェクトを描画バッファ176(フレームバッファあるいは中間バッファなどのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画して、2次元画像を生成する。
【0052】
3次元画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理を行い、その処理結果に基づいて、描画データ(プリミティブの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を作成する。そして、この描画データ(プリミティブデータ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ)を描画バッファ176に描画する。これにより、ゲーム空間内において仮想カメラ(所与の視点)から見える画像を生成する。
【0053】
なお、本実施形態のゲームシステム1は、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、サーバあるいは1つのゲームシステム1を用いて生成してもよいし、ネットワークを介して接続されたサーバや複数のゲームシステム1を用いて分散処理により生成してもよい。
【0054】
3.本実施形態の手法
次に、図3〜図7を参照しながら本実施形態のゲームシステム1で行われる音楽演奏ゲームの制御手法について説明する。
【0055】
3−1.音楽演奏ゲームの概要
まず、図3〜図4を参照しながら本実施形態の音楽演奏ゲームの概要について説明する。図3は、本実施形態の音楽演奏ゲームのゲーム画像の一例を示す図であり、図4は、コントローラ座標系の一例を示す図である。
【0056】
本実施形態の音楽演奏ゲームでは、楽曲の再生に合わせて所定の移動態様でコントローラ16を移動させることをプレーヤ20に指示する指示標識がディスプレイ19に表示されるので、プレーヤ20はこの指示標識で指示された移動態様でコントローラ16を動かすことでダンスの振り付けを行う。
【0057】
例えば図3に示す例では、プレーヤキャラクタ300とともに、コントローラ16の−y軸方向に重力Gが働く状態で移動開始位置311からz軸方向を軸として反時計回りに円の移動軌跡でコントローラ16を移動させることを指示する指示標識310がディスプレイ19に表示されている。なお本実施形態では図4に示すように、コントローラ16(加速度センサ30)の座標系は、コントローラ16の左右方向をx軸、コントローラ16の上下方向をy軸、コントローラ16の前後方向(長手方向)をz軸と定義しており、コントローラ16の−y軸方向に重力Gが働く状態を基準としてコントローラ16を移動させることを想定している。
【0058】
そしてプレーヤ20が、この指示標識310で指示された移動態様でコントローラ16を動かすと、プレーヤキャラクタ300がコントローラ16の動きに合わせて、左腕305を指示標識310で指示された方向に回転させて、プレーヤ20の操作に対応したダンスを再現する。
【0059】
また、指示標識310がディスプレイ19に表示されている間に、指示標識310で指示された移動態様によるコントローラ16の移動が行われた場合には、「GREAT!」などとプレーヤ20の操作を評価する表示が行われ、得点が加算される。一方、指示標識310がディスプレイ19に表示されている間に、指示標識310で指示された移動態様によるコントローラ16の移動が行われなかった場合には、「BAD!」などとプレーヤ20の操作を酷評する表示が行われ、得点は加算されない。
【0060】
このように本実施形態では、プレーヤ20が指示標識で指示された移動態様でコントローラ16を動かすことで、あたかもプレーヤ20自身がダンサーとなってダンスの振り付けを行っているかのような仮想現実感が高められたゲームを楽しむことができる。
【0061】
3−2.入力判定手法
次に、図5〜図6を参照しながら本実施形態の入力判定手法について説明する。
【0062】
本実施形態の音楽演奏ゲームでは、プレーヤ20は、楽曲の再生に合わせて指示標識で指示された移動態様でコントローラ16を動かすことでダンスの振り付けを行う。
【0063】
ところで、コントローラ16が所定の移動態様で移動されたか否かを判定する場合に、コントローラ16の移動時に出力される加速度センサ30の出力値の全てが、予め定められた判定条件を満足しなければならないとすると、判定条件を満足することが難しくなり、認識率が低下してしまうおそれがある。
【0064】
そこで本実施形態では、コントローラ16の所定の移動態様に関連付けられた複数の基準データを基準データ記憶部174に記憶し、この複数の基準データの中の各基準データの値との間で所与の関係が成立する出力値(詳細には、基準データの値が正の整数である場合には基準データの値以上の出力値、基準データの値が負の整数である場合には基準データの値以下の出力値)が予め定められた順序で加速度センサ30から出力された場合に、コントローラ16の所定の移動態様による入力が行われたものと判別する手法を採用している。
【0065】
また、所定の移動態様でコントローラ16を所定回数移動させる場合には、複数の基準データの中の各基準データの値との間で所与の関係が成立する出力値が予め定められた順序で加速度センサ30から出力された回数をカウントすることで、所定の移動態様でコントローラ16を所定回数移動させる入力が、このカウントされた回数に応じた適合度で行われたものと判定する手法を採用している。
【0066】
以下、図5〜図6を参照しながら具体的に説明する。図5は、指示標識310で指示された移動態様の入力判定を行う際に使用される基準データの一例を示す図であり、図6は、図5の基準データによって特定されるコントローラ16の移動方向を説明するための図である。
【0067】
本実施形態では、図5に示す基準データA〜基準データHを用いて、指示標識310で指示された移動態様によるコントローラ16の移動が行われたか否かを判別する。なお、x軸方向には重力Gが働かないため、基準データA〜基準データHのx成分の値はy軸を基準に対称となっているが、y軸方向には重力Gが働くため、基準データA〜基準データHのy成分の値はx軸を基準に対称となっていない。
【0068】
基準データAでは、x成分の値が1.0に設定され、y成分およびz成分の値が0.0に設定されている。つまり基準データAは、図6に示す矢印321の方向にコントローラ16が移動されたか否かを判別するデータであり(矢印321の方向(−x軸方向)にコントローラ16を移動させると、矢印321の逆方向である+x軸方向に慣性力が働く。この結果、加速度センサ30はx成分において+の出力値を出力するため)、加速度センサ30からx成分において1.0以上の出力値が出力された場合に基準データAを満足したと判定される。
【0069】
基準データBでは、x成分およびy成分の値が0.5に設定され、z成分の値が0.0に設定されている。つまり基準データBは、図6に示す矢印322の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からx成分およびy成分において0.5以上の出力値が同時に出力された場合に基準データBを満足したと判定される。
【0070】
基準データCでは、y成分の値が1.0に設定され、x成分およびz成分の値が0.0に設定されている。つまり基準データCは、図6に示す矢印323の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からy成分において1.0以上の出力値が出力された場合に基準データCを満足したと判定される。
【0071】
基準データDでは、x成分の値が−0.5に設定され、y成分の値が0.5に設定され、z成分の値が0.0に設定されている。つまり基準データDは、図6に示す矢印324の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からx成分において−0.5以下の出力値が出力されるのと同時にy成分において0.5以上の出力値が出力された場合に基準データDを満足したと判定される。
【0072】
基準データEでは、x成分の値が−1.0に設定され、y成分およびz成分の値が0.0に設定されている。つまり基準データEは、図6に示す矢印325の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からx成分において−1.0以下の出力値が出力された場合に基準データEを満足したと判定される。
【0073】
基準データFでは、x成分の値が−0.5に設定され、y成分の値が−0.3に設定され、z成分の値が0.0に設定されている。つまり基準データFは、図6に示す矢印326の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からx成分において−0.5以下の出力値が出力されるのと同時にy成分において−0.3以下の出力値が出力された場合に基準データFを満足したと判定される。
【0074】
基準データGでは、加速度ベクトルのy成分の値が−0.5に設定され、x成分およびz成分の値が0.0に設定されている。つまり基準データGは、図6に示す矢印327の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からy成分において−0.5以下の出力値が出力された場合に基準データGを満足したと判定される。
【0075】
基準データHでは、加速度ベクトルのx成分の値が0.5に設定され、y成分の値が−0.3に設定され、z成分の値が0.0に設定されている。つまり基準データHは、図6に示す矢印328の方向にコントローラ16が移動されたか否かを判別するデータであり、加速度センサ30からx成分において0.5以上の出力値が出力されるのと同時にy成分において−0.3以下の出力値が出力された場合に基準データHを満足したと判定される。
【0076】
そして加速度センサ30の出力値が、基準データA〜基準データHの値をA→B→C→D→E→F→G→Hの順序で満足した場合には、矢印321→矢印322→矢印323→矢印324→矢印325→矢印326→矢印327→矢印328の順序でコントローラ16が移動されたことになる。つまりコントローラ16は、−y軸方向に重力Gが働く状態で移動開始位置311からz軸方向を軸として反時計回りに円の移動軌跡で移動されたことになるため、指示標識310で指示された移動態様によるコントローラ16の移動が行われたものと判定される。
【0077】
このように本実施形態では、指示標識310で指示された移動態様によるコントローラ16の移動が行われた否かを、基準データ記憶部174に記憶された基準データA〜基準データHの各基準データの値をA→B→C→D→E→F→G→Hの順序で満足したか否かで判定するため、指示標識310で指示された移動態様でのコントローラ16の移動時に出力される加速度センサ30の出力値の全てが、予め定められた判定条件を満足する必要はない。従って、認識率を低下させることなく、指示標識310で指示された移動態様によるコントローラ16の移動が行われたことを適切に認識できる。
【0078】
また本実施形態では、入力受付期間内に指示標識310で指示された移動態様によるコントローラ16の移動が所定回数行われたか否かを判別する場合には、入力受付期間内に加速度センサ30の出力値が基準データ記憶部174に記憶された基準データA〜基準データHの各基準データの値をA→B→C→D→E→F→G→Hの順序で満足する毎に、その回数をカウンタ175にカウントする。そして、所定の移動態様でコントローラ16を所定回数移動させる入力が、このカウントされた回数に応じた適合度で行われたものと判定する。
【0079】
このように本実施形態では、入力受付期間内に指示標識310で指示された移動態様によるコントローラ16の移動が所定回数行われたか否かを、入力受付期間内に加速度センサ30の出力値が基準データ記憶部174に記憶された基準データA〜基準データHの各基準データの値をA→B→C→D→E→F→G→Hの順序で満足した回数(カウント値)で判定するため、指示標識310で指示された移動態様でのコントローラ16の移動時に出力される加速度センサ30の出力値の全てが、予め定められた判定条件を満足する必要はない。従って、認識率を低下させることなく、指示標識310で指示された移動態様でコントローラ16を所定回数移動させる入力が行われたことを認識できる。これに加え本実施形態では、指示標識310で指示された移動態様でコントローラ16を所定回数移動させる入力がカウント値に応じた適合度で行われたことを認識できるため、多種多様のゲーム処理を行うことができる。
【0080】
指示標識310で指示された移動態様によるコントローラ16の移動を入力受付期間内に3回行う場合を例にとり説明する。例えばカウンタ175に記憶されたカウント値が3であり、指示標識310で指示された移動態様によるコントローラ16の移動が3回行われたものと判定された場合には、「GREAT!」などとプレーヤ20の操作を高評価する表示が行われ、高い得点が加算される。また例えばカウンタ175に記憶されたカウント値が2であり、指示標識310で指示された移動態様によるコントローラ16の移動が2回行われたものと判定された場合には、「GOOD!」などとプレーヤ20の操作を評価する表示が行われ、通常の得点が加算される。また例えばカウンタ175に記憶されたカウント値が1であり、指示標識310で指示された移動態様によるコントローラ16の移動が1回行われたものと判定され場合には、「POOR!」などとプレーヤ20の操作を低評価する表示が行われ、低い得点が加算される。また例えばカウンタ175に記憶されたカウント値が0であり、指示標識310で指示された移動態様によるコントローラ16の移動が1回も行われなかったと判定された場合には、「BAD!」などとプレーヤ20の操作を酷評する表示が行われ、得点は加算されない。
【0081】
このように本実施形態では、カウント値が大きいほど(適合度が高いほど)、プレーヤが得られる得点、評価(特典の一例)の価値が高くなるため、音楽演奏ゲームの趣向性を高めることができる。
【0082】
なお入力受付期間を、指示標識310で指示された移動態様によるコントローラ16の移動毎に用意するようにしてもよい。
【0083】
上述の例であれば、指示標識310で指示された移動態様によるコントローラ16の移動を3回行うため、入力受付期間を第1の期間〜第3の期間までの3期間用意し、第1の期間内に、指示標識310で指示された移動態様によるコントローラ16の1回目の移動が行われたか否かを判定し、第2の期間内に、指示標識310で指示された移動態様によるコントローラ16の2回目の移動が行われたか否かを判定し、第3の期間内に、指示標識310で指示された移動態様によるコントローラ16の3回目の移動が行われたか否かを判定するようにしてもよい。
【0084】
また、カウント値が所定回数に達していることを条件に、指示標識310で指示された移動態様でコントローラ16を所定回数移動させる入力を受け付けるようにしてもよい。
【0085】
上述の例であれば、カウンタ175に記憶されたカウント値が3であることを条件に、指示標識310で指示された移動態様でコントローラ16を3回移動させる入力を受け付け、「GREAT!」などとプレーヤ20の操作を高評価する表示を行い、得点を加算する。一方、カウンタ175に記憶されたカウント値が3以外である場合には、指示標識310で指示された移動態様でコントローラ16を3回移動させる入力を受け付けず、「BAD!」などとプレーヤ20の操作を酷評する表示を行い、得点を加算しない。
【0086】
また、−y軸方向に重力Gが働く状態でz軸方向を軸として移動開始位置311から反時計回りにコントローラ16を移動させた際の加速度センサ30の出力値に基づいて、基準データ記憶部174に記憶される基準データA〜基準データHを決定するようにしてもよい。この場合には、ゲーム開始前に、プレーヤ20に−y軸方向に重力Gが働く状態でz軸方向を軸として反時計回りにコントローラ16を移動させ、コントローラ16の移動時における加速度センサ30の出力値から、基準データ記憶部174に記憶される基準データA〜基準データHを決定すればよい。例えば、基準データAであれば、コントローラ16の移動時における加速度センサ30の出力値の中から最も値の大きいx成分を採用すればよい。なお、基準データの値を満足し易くするために、採用された速度センサ30の出力値を調整した値(採用された速度センサ30の出力値を大きくした値や小さくした値)を基準データとしてもよい。このようにすると、プレーヤ20によるコントローラ16の移動に適した基準データA〜基準データHを設定することができるようになる。
【0087】
3−3.本実施形態の処理
次に、図7を参照しながら本実施形態の処理の一例について説明する。図7は、本実施形態の処理の一例を説明するためのフローチャート図である。
【0088】
ゲームシステム1は、複数のゲームステージの中からプレーヤがプレイするゲームステージが選択されると、選択されたゲームステージに応じた楽曲の再生などを行い、音楽演奏ゲームを開始する(ステップS10)。
【0089】
続いて、所定の移動態様でコントローラ16を所定回数移動させることをプレーヤ20に指示する指示標識をディスプレイ19に表示し(ステップS12でY)、指示標識が表示されている間に、複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で加速度センサ30から出力されたか否かを判定し(ステップS14)、出力されたと判定された場合のみ(ステップS14でY)、カウンタ値をインクリメントする処理を行う(ステップS16)。
【0090】
そして、ステップS14の判定処理がコントローラ16を移動させる回数分行われるまで、ステップS14〜ステップS16の処理を繰り返し行い(ステップS18でN)、ステップS14の判定処理がコントローラ16を移動させる回数分行われると(ステップS18でY)、カウンタ値に応じた得点を加算する(ステップS20)。
【0091】
そして、楽曲の再生が終了するまで、ステップS12〜ステップS20の処理を繰り返し行い(ステップS22でN)、楽曲の再生が終了すると音楽演奏ゲームを終了する(ステップS22でY)。
【0092】
4.変形例
本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。また上記実施形態で説明した構成は、一例を示したに過ぎず、上記実施形態の構成と同様の効果を奏する均等な手法を採用した場合においても本発明の範囲に含めることができる。
【0093】
例えば上記実施形態では、予め移動開始位置を指定し、この移動開始位置からコントローラ16の移動を行うことを例にとり説明したが、移動開始位置を指定しないようにしてもよい。この場合には、予め定められた順序として例えば図8に示す複数の順序を採用し、図8に示すいずれかの順序で基準データA〜基準データHを満足した場合には、指示標識310で指示された移動態様によるコントローラ16の移動が行われたものと判定するようにすればよい。なお図7から明らかなように、図8に示すいずれかの順序で基準データA〜基準データHを満足した場合には、コントローラ16は−y軸方向に重力Gが働く状態でz軸方向を軸として反時計回りに円の移動軌跡で移動されたことになる。
【0094】
また例えば上記実施形態では、予め定められた順序として、基準データA〜基準データHの値の全てを満足する順序(A→B→C→D→E→F→G→H)を例にとり説明したが、必ずしも基準データA〜基準データHの値の全てを満足する必要はない。この場合には、予め定められた順序として例えば図9に示す複数の順序を採用できる。このようにすると、指示標識310で指示された移動態様によるコントローラ16の移動の難易度を調整することができるようになる。
【0095】
また例えば上記実施形態では、指示標識310で指示された移動態様によるコントローラ16の移動が所定回数行われたか否かを判別する場合に、加速度センサ30の出力値が基準データ記憶部174に記憶された基準データA〜基準データHの各基準データの値をA→B→C→D→E→F→G→Hの順序で満足した回数を基に、指示標識310で指示された移動態様によるコントローラ16の移動の適合度を判別していたが、満足した基準データの数を基に、指示標識310で指示された移動態様によるコントローラ16の移動の適合度を判別するようにしてもよい。
【0096】
また例えば上記実施形態では、2軸(x軸およびy軸)にまたがる移動態様である円の移動軌跡を例にとり入力判定手法を説明したが、3軸にまたがる移動態様や、1軸(x軸、y軸、あるいはZ軸)での移動についてもこの入力判定手法を適用することができる。
【0097】
また上記実施形態では、指示標識をディスプレイ19に表示することで所定の移動態様でコントローラ16を移動させることをプレーヤ20に報知していたが、スピーカから指示音を出力したり、ディスプレイ19の輝度を高くして画面を明るくすることで所定の移動態様でコントローラ16を移動させることをプレーヤ20に報知してもよい。またコントローラ16にバイブレータを内蔵し、このバイブレータを振動させることで報知してもよいし、コントローラ16にスピーカを設け、このスピーカから指示音を出力することで報知してもよい。また、例えば格闘ゲームにおいて、所定の移動態様でコントローラ16を移動させると特殊攻撃を自キャラクタに発動させる場合や、レースゲームにおいて、所定の移動態様でコントローラ16を移動させると移動体を急加速させる場合には、所定の移動態様でコントローラ16を移動させることをプレーヤ20に報知しなくてもよい。
【0098】
また上記実施形態では、指示標識がディスプレイ19に表示されている期間を入力受付期間として説明したが、例えば、指示標識表示後に更に指示標識を光らせることで、この指示標識を光らせる期間を入力受付期間としてもよい。
【0099】
また、上記実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。そして、本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。
【0100】
また上記実施形態では、音楽演奏ゲームを例にとり説明したが、格闘ゲーム、アクションゲーム、レースゲーム、スポーツゲーム、ロールプレイングゲーム、シューティングゲーム、パズルゲーム等の種々のゲームに本手法を採用することができる。
【0101】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、携帯型ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、携帯電話等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【0102】
【図1】本実施形態のゲームシステム1の概略構成図の一例を示す図。
【図2】本実施形態のゲームシステム1の機能ブロック図の一例を示す図。
【図3】本実施形態の音楽演奏ゲームのゲーム画像の一例を示す図。
【図4】コントローラ座標系の一例を示す図。
【図5】指示標識310で指示された移動態様の入力判定を行う際に使用される基準データの一例を示す図。
【図6】図5の基準データによって特定されるコントローラ16の移動方向を説明するための図。
【図7】本実施形態の処理の一例を説明するためのフローチャート図。
【図8】図5の基準データを満足する順序の一例を示す図。
【図9】図5の基準データを満足する順序の一例を示す図。
【符号の説明】
【0103】
1 ゲームシステム、10 ゲーム装置本体、16 コントローラ、
19 ディスプレイ、20 プレーヤ、30 加速度センサ、
100 処理部、110 音制御部、112 ゲーム処理部、114 判定部、
115 カウント部、116 決定部、140 描画部、
160 コントローラ、162 センサ、170 記憶部、
172 主記憶部、174 基準データ記憶部、176 描画バッファ、
180 情報記憶媒体、190 表示部、192 音出力部、194 通信部、
300 プレーヤキャラクタ、310 指示標識

【特許請求の範囲】
【請求項1】
動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのプログラムであって、
前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、
前記所定の移動態様による入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、
前記判定部に出力されたと判定された場合に、前記所定の移動態様による入力を受け付けてゲーム処理を行うゲーム処理部としてコンピュータを機能させることを特徴とするプログラム。
【請求項2】
動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのプログラムであって、
前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、
前記所定の移動態様で前記コントローラを所定回数移動させる入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、
前記判定部に出力されたと判定された回数をカウントするカウント処理を行うカウント部と、
前記カウントされた回数に応じてゲーム処理を行うゲーム処理部としてコンピュータを機能させることを特徴とするプログラム。
【請求項3】
請求項2において、
前記ゲーム処理部が、
前記カウントされた回数が多いほど、ゲーム処理によって得られる特典の価値を高くすることを特徴とするプログラム。
【請求項4】
請求項2または3において、
前記ゲーム処理部が、
前記カウントされた回数が前記所定回数に達していることを条件に、前記所定の移動態様で前記コントローラを所定回数移動させる入力を受け付けてゲーム処理を行うことを特徴とするプログラム。
【請求項5】
請求項1〜4のいずれかにおいて、
前記所定の移動態様での前記コントローラの移動時における前記センサの出力値に基づいて、前記複数の基準データを決定する決定部として更にコンピュータを機能させることを特徴とするプログラム。
【請求項6】
請求項1〜5のいずれかにおいて、
前記ゲーム処理部が、
前記所定の移動態様で前記コントローラを移動させることをプレーヤに指示する指示標識を表示部に表示させることを特徴とするプログラム。
【請求項7】
請求項6において、
楽曲の再生制御を行う音制御部として更にコンピュータを機能させ、
前記ゲーム処理部が、
前記楽曲の再生に合わせて前記指示標識を表示部に表示させるとともに、前記コントローラの前記所定の移動態様に関連づけられたダンスを行うキャラクタを表示部に表示させることを特徴とするプログラム。
【請求項8】
請求項1〜7のいずれかにおいて、
前記センサが検出する物理量は、前記コントローラの加速度ベクトルであり、
前記複数の基準データの中の各基準データの値は、少なくとも1軸方向での加速度ベクトルであることを特徴とするプログラム。
【請求項9】
コンピュータにより読取可能な情報記憶媒体であって、請求項1〜8のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
【請求項10】
動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのゲームシステムであって、
前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、
前記所定の移動態様による入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、
前記判定部に出力されたと判定された場合に、前記所定の移動態様による入力を受け付けてゲーム処理を行うゲーム処理部とを含むことを特徴とするゲームシステム。
【請求項11】
動きに応じて値が変化する物理量を検出するセンサを備えたコントローラを用いて入力を行うゲームのためのゲームシステムであって、
前記コントローラの所定の移動態様に関連付けられた複数の基準データを記憶する記憶部と、
前記所定の移動態様で前記コントローラを所定回数移動させる入力を受け付ける入力受付期間内に、前記複数の基準データの中の各基準データとの間で所与の関係が成立する出力値が予め定められた順序で前記センサから出力されたか否かを判定する判定処理を行う判定部と、
前記判定部に出力されたと判定される毎に、前記所定回数を限度として前記判定部に出力されたと判定された回数をカウントするカウント処理を行うカウント部と、
前記カウントされた回数に応じてゲーム処理を行うゲーム処理部とを含むことを特徴とするゲームシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate