(57)【要約】【課題】コントローラを動かすことにより入力する振動コマンドが受け付けられた否かを確認しながらゲームを行うこと。【解決手段】第１のコントローラ１６１及び第２のコントローラ１６５を含む操作部１６０からの入力に基づきゲームを行うプログラムであって、第１のコントローラ１６１及び第２のコントローラ１６５の少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部１２２と、動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部１２０と、動き操作入力の検出結果を表示するための動き操作入力表示オブジェクトの表示制御処理を行う操作入力表示制御処理部１２６と、を含む。【選択図】図３
2007300973.tif 000002
【特許請求の範囲】
【請求項１】
第１のコントローラ及び第２のコントローラを含む操作部からの入力に基づきゲームを行うプログラムであって、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部と、
動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部と、
動き操作入力の検出結果を表示するための動き操作入力表示オブジェクトの表示制御処理を行う操作入力表示制御処理部と、
動き操作入力表示オブジェクトを含むゲーム画像を生成する画像生成部と、
してコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
前記ゲーム演算処理部は、
動き操作入力に基づきオブジェクトの移動又は動作を制御する移動又は動作制御部を含むことを特徴とするプログラム。
【請求項３】
請求項１乃至２のいずれかにおいて、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値及び他の操作入力値に基づいて所与の動き操作入力の検出条件を判断することを特徴とするプログラム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記操作入力表示制御処理部は、
所定のタイミングで一定時間の間、動き操作入力表示オブジェクトが表示または変化するように制御することを特徴とするプログラム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記操作入力表示制御処理部は、
動き操作入力検出結果を表示するための動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記ゲーム演算処理部は、
所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、当該動き操作入力に基づきオブジェクトの向きや回転を制御するためのゲームパラメータを演算し、
前記操作入力表示制御処理部は、
所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、向きや回転の方向を表示するための動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記動き操作入力検出部は、
前記動きセンサの出力値に基づき、動き操作入力に対応付けられた操作量を検出し、
前記ゲーム演算処理部は、
動き操作入力に対応付けられた操作量に応じて、動き操作入力に対応付けられたゲームパラメータを演算し、
前記操作入力表示制御処理部は、
動き操作入力に対応付けられた操作量の大きさを表示するための動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項８】
請求項１乃至７のいずれかにおいて、
前記動き操作入力検出部は、
第１のコントローラに内蔵された第１の動きセンサの出力値と第２のコントローラに内蔵された第２の動きセンサの出力値に基づき所与の動き操作入力の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
第１のコントローラに対応ずけられた第１の動き操作入力表示オブジェクトと、
第２のコントローラに対応ずけられた第２の動き操作入力表示オブジェクトと、
を用いて、動き操作入力の検出を表示するための表示制御処理を行うことを特徴とするプログラム。
【請求項９】
請求項１乃至８のいずれかにおいて、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が所与の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
前記所与の条件に対応したパターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項１０】
請求項１乃至９のいずれかにおいて、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値に基づき所与の期間に行われた動作を検出する手段を含み、
前記操作入力表示制御処理部は、
前記検出された動作を示す動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項１１】
請求項１乃至１０のいずれかにおいて、
前記動き操作入力検出部は、
第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値に基づき所与の動き操作入力の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値を示す動き操作入力表示オブジェクトを表示することを特徴とするプログラム。
【請求項１２】
請求項１乃至１１のいずれかにおいて、
前記ゲーム演算処理部は、
操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドに基づきオブジェクトのゲームパラメータを演算する手段を含み、
前記操作入力表示制御処理部は、
操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応した操作入力の検出結果を表示するための操作入力表示オブジェクトの表示制御を行うことを特徴とするプログラム。
【請求項１３】
請求項１乃至１２のいずれかにおいて、
動き操作入力に対する初期設定操作入力を受け付ける初期設定操作期間を設定し、
初期設定操作期間にコントローラ操作により得られた動きセンサの出力値に基づき所与の動き操作入力の条件の設定値の調整を行う設定調整部を含むことを特徴とするプログラム。
【請求項１４】
第１のコントローラ及び第２のコントローラを含む操作部からの入力に基づきゲームを行うプログラムであって、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部と、
動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部と、
動き操作入力の検出結果を通知するための動き操作入力通知音の出力制御処理を行うコマンド通知音出力制御部と、
ゲーム画像を生成する画像生成部と、
してコンピュータを機能させることを特徴とするプログラム。
【請求項１５】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１乃至１４のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項１６】
第１のコントローラ及び第２のコントローラを含む操作部からの入力に基づきゲームを行う画像生成システムであって、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部と、
動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部と、
動き操作入力の検出結果を表示するための動き操作入力表示オブジェクトの表示制御処理を行う操作入力表示制御処理部と、
動き操作入力表示オブジェクトを含むゲーム画像を生成する画像生成部と、
を含むことを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
最近ではゲーム用のコントローラに動きを検出可能なセンサ（例えば加速度センサ）を内蔵し、コントローラの動きを検出して、ゲーム入力とするゲーム装置が開発されている。
【０００３】
このようなゲーム装置においては、プレーヤにコントローラを振ったり所定の動作をさせたりすることにより所定のコマンドの入力を行わせることができる。したがって、例えばゲーム上の動作に近い動作をおこなってコントローラを動かすようなエキサイティングなゲームを提供することができる。
【特許文献１】特開２００３−２２５４６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところがコントローラを振る動作等による操作入力は、ボタン等の入力と異なり、本当に受け付けられているのかどうかわかりにくいという問題点がある。
【０００５】
また例えばコントローラを振る動作をとってみても、ふり幅やふる周期やふる強さはプレーヤによって微妙に違ってくる。したがって慣れないプレーヤは規定通りにコントローラを振ってコマンド入力をしているつもりでも、受け付けられていないケースも起こりえる。
【０００６】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、コントローラを動かすことにより入力する動き操作入力が受け付けられた否かを確認しながらゲームを行うことが可能なプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００７】
（１）本発明は、
第１のコントローラ及び第２のコントローラを含む操作部からの入力に基づきゲームを行うプログラムであって、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部と、
動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部と、
動き操作入力の検出結果を表示するための動き操作入力表示オブジェクトの表示制御処理を行う操作入力表示制御処理部と、
動き操作入力表示オブジェクトを含むゲーム画像を生成する画像生成部と、
してコンピュータを機能させるプログラムに関係する。
【０００８】
また本発明は、上記各部を含む画像生成システムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【０００９】
動きセンサとは加速度センサや速度センサや変位を測定するセンサ等で構成することができる。
【００１０】
第１のコントローラ及び第２のコントローラはプレーヤが右手や左手で把持して操作するようにしてもよい。
【００１１】
また第１のコントローラ及び第２のコントローラは両方が動きセンサを内蔵していてもよいし、いずれか一方が内蔵していてもよい。
【００１２】
動き操作入力とは、第１のコントローラや第２のコントローラに所定の動作をさせたり、所定の姿勢に保ったりして入力を行う操作入力のことである。第１のコントローラや第２のコントローラに所定の動作をさせることで入力する構成のみならず、ボタンや十字キー等の他の操作部からの操作入力を組み合わせて入力する構成（例えばコントローラのボタンを押しながらコントローラを振る動作を行う操作入力等）も、本発明の動き動作入力の範囲内である。
【００１３】
動き操作入力に基づき行われる所与のゲーム演算処理は、例えばゲーム空間内のオブジェクト（プレーヤの操作対象よなるゲームキャラクタやアイテム、その他のオブジェクト）の移動や動作や位置の制御演算でもよいし、ヒットチェック処理でもよいし、関連づけられたゲームパラメータの演算処理でもよいし、パワーや難易度の制御でもよいし、音楽ゲームにおける演奏入力の判定処理でもよい。
【００１４】
動き操作入力表示オブジェクトは３次元オブジェクトでもよいし、２次元オブジェクトや文字やマークでもよい。
【００１５】
動き操作入力の検出結果を表示するとは、動き操作入力の有無の表示でもよいし、動き操作入力が例えば入力値の量（操作量）も制御の要素となる場合には操作量を表示してもよい。
【００１６】
動き操作入力の表示制御とは表示の有無の制御でもよいし、表示形態の制御（例えば動き操作入力表示オブジェクトの色や形状や大きさ等を変化させる制御や輝度を変化させたりブリンクさせたりする制御も含む）でもよい。
【００１７】
本発明によれば、動き操作入力の検出結果が動き操作入力表示オブジェクトとして表示されるので、プレーヤはコントローラ自体を動かす動作にかかる操作入力が動き操作入力として検出されているかどうかを確認しながらゲームを行うことができる。
【００１８】
（２）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
動き操作入力に基づきオブジェクトの移動又は動作を制御する移動又は動作制御部を含むことを特徴とする。
【００１９】
本発明において動き操作入力による移動又は動作の対象となるオブジェクトとはプレーヤの操作対象とオブジェクトであればよく、例えばプレーヤキャラクタでもよいし、プレーヤの有するアイテムオブジェクトでもよい。
【００２０】
移動又は動作とは例えば移動速度や加速度、移動方向、回転、キャラクタの動作や等を含む。
【００２１】
（３）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値及び他の操作入力値に基づいて所与の動き操作入力の検出条件を判断することを特徴とする。
【００２２】
本発明によれば、コントローラ自体を動かすことによる入力と他の入力手段の入力の組み合わせによる動き操作入力についても、動き操作入力の検出結果が動き操作入力表示オブジェクトとして表示することができる。
【００２３】
なお他の入力手段は第１のコントローラや第２のコントローラに設けられたボタンや十時キー等でもよい。このようにすればプレーヤはコントローラに設けられたボタン等をおしながら、コントローラを動かすことで、動き操作入力を入力することができる。
【００２４】
（４）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記操作入力表示制御処理部は、
所定のタイミングで一定時間の間、動き操作入力表示オブジェクトが表示または変化するように制御することを特徴とする。
【００２５】
例えば一定期間だけ動き操作入力表示オブジェクトが表示され、その後に表示しないように制御する構成でもよいし、一定期間だけ動き操作入力表示オブジェクトを変化させ、その後に変化しないように制御する構成でもよい。
【００２６】
このようにすると動き操作入力表示オブジェクトの表示や変化が終了したら、再び動き操作入力を入力したほうがよいとか入力できる等の情報をプレーヤに伝えることができる。
【００２７】
例えば１度動き操作入力を受け付け、そのあと一定時間期間の受け付け禁止期間を設ける場合、この受けつけ禁止期間の間動き操作入力表示オブジェクトが表示、または変化するように構成してもよい。このようにするとプレーヤは動き操作入力受付禁止期間を把握しやすくなるという効果がある。
【００２８】
（５）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記操作入力表示制御処理部は、
動き操作入力検出結果を表示するための動き操作入力表示オブジェクトを表示することを特徴とする。
【００２９】
検出結果に応じて、動き操作入力表示オブジェクト表示の有無を変化させてもよいし、動き操作入力表示オブジェクトの少なくとも一部の形態（ゲージの長さや大きさ、マークの形状、表示形態、色、数字の示す値）を変化させる制御を行うようにしてもよい。
【００３０】
（６）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、当該動き操作入力に基づきオブジェクトの向きや回転を制御するためのゲームパラメータを演算し、
前記操作入力表示制御処理部は、
所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、向きや回転の方向を表示するための動き操作入力表示オブジェクトを表示することを特徴とする。
【００３１】
本発明によれば、動き操作入力の検出とそれによって指示された向きや回転の方向が同時に把握できる。
【００３２】
（７）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
前記動きセンサの出力値に基づき、動き操作入力に対応付けられた操作量を検出し、
前記ゲーム演算処理部は、
動き操作入力に対応付けられた操作量に応じて、動き操作入力に対応付けられたゲームパラメータを演算し、
前記操作入力表示制御処理部は、
動き操作入力に対応付けられた操作量の大きさを表示するための動き操作入力表示オブジェクトを表示することを特徴とする。
【００３３】
動き操作入力に対応付けられた操作量は動きセンサの出力値の大きさによって決定するようにしてもよい。このような場合には出力値が大きさを有するセンサ（単にＯＮ・ＯＦＦを検出するセンサではないセンサ）を用いるようにしてもよい。
【００３４】
動き操作入力に対応付けられた操作量を有する場合には、動き操作入力によって命令の種類が決定され、対応付けられた操作量に応じて命令によって変化させる量等が決定されるようにしてもよい。例えば加速を指示する動き操作入力において、対応付けられた操作量の大きさに応じて加速の大きさ（例えば加速度の値）を制御するようにしてもよい。
【００３５】
（８）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第１のコントローラに内蔵された第１の動きセンサの出力値と第２のコントローラに内蔵された第２の動きセンサの出力値に基づき所与の動き操作入力の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
第１のコントローラに対応ずけられた第１の動き操作入力表示オブジェクトと、
第２のコントローラに対応ずけられた第２の動き操作入力表示オブジェクトと、
を用いて、動き操作入力の検出を表示するための表示制御処理を行うことを特徴とする。
【００３６】
例えば第１のコントローラの動きで判断される動き操作入力が検出された場合には第１の動き操作入力表示オブジェクトが変化し、第２のコントローラの動きで判断される動き操作入力が検出された場合には第２の動き操作入力表示オブジェクトが変化し、
例えば第１のコントローラと第２のコントローラの両方の動きで判断される動き操作入力が検出された場合には第１の動き操作入力表示オブジェクトと第２の動き操作入力表示オブジェクトの両方が変化するように制御してもよい。このようにすると動き操作入力の検出状態と第１、第２のコントローラの動作状況との関係をプレーヤは把握しやすいという効果がある。
【００３７】
（９）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が所与の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
前記所与の条件に対応したパターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示することを特徴とする。
【００３８】
本発明によればコントローラの動作によって所与の条件に対応するパターンが発生したことや、発生したパターンの種類をプレーヤが把握することができる。
【００３９】
例えば演奏ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の演奏パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００４０】
例えば演奏ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の演奏パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００４１】
また例えば格闘ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の技パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００４２】
（１０）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値に基づき所与の期間に行われた動作を検出する手段を含み、
前記操作入力表示制御処理部は、
前記検出された動作を示す動き操作入力表示オブジェクトを表示することを特徴とする。
【００４３】
例えば所定期間におけるコントローラの動きを動き操作入力表示オブジェクトとして再現させるようにしてもよい。このようにすると、プレーヤは所定期間に行った自己の動作を把握することができる。
【００４４】
（１１）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記動き操作入力検出部は、
第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値に基づき所与の動き操作入力の条件を満たしているか否か判断し、
前記操作入力表示制御処理部は、
第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値を示す動き操作入力表示オブジェクトを表示することを特徴とする。
【００４５】
（１２）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
前記ゲーム演算処理部は、
操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドに基づきオブジェクトのゲームパラメータを演算する手段を含み、
前記操作入力表示制御処理部は、
操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応した操作入力の検出結果を表示するための操作入力表示オブジェクトの表示制御を行うことを特徴とする。
【００４６】
操作入力表示オブジェクトと動き操作入力表示オブジェクトとは別個のオブジェクトとして構成されるようにしてもよい。
【００４７】
本発明によれば、ボタンやレバーや十時キー等の操作部に対する操作入力についても受付状況を把握することができる。
【００４８】
（１３）また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
動き操作入力に対する初期設定操作入力を受け付ける初期設定操作期間を設定し、
初期設定操作期間にコントローラ操作により得られた動きセンサの出力値に基づき所与の動き操作入力の条件の設定値の調整を行う設定調整部を含むことを特徴とする。
【００４９】
（１４）また本発明は、
第１のコントローラ及び第２のコントローラを含む操作部からの入力に基づきゲームを行うプログラムであって、
第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する動き操作入力検出部と、
動き操作入力に基づき所与のゲーム演算処理を行うゲーム演算処理部と、
動き操作入力の検出結果を通知するための動き操作入力通知音の出力制御処理を行うコマンド通知音出力制御部と、
ゲーム画像を生成する画像生成部と、
してコンピュータを機能させることを特徴とするプログラムプログラムに関係する。
【００５０】
また本発明は、上記各部を含むゲームシステムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【発明を実施するための最良の形態】
【００５１】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００５２】
１．構成
まず、図１を用いて本実施形態の画像生成システム（ゲームシステム）の構成について説明する。なお、図１は、本実施形態の画像生成システムにおける機能構成の例である。また、本実施形態の画像生成システムは、当該構成要素（各部）の一部を省略した構成としてもよい。
【００５３】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク等により実現できる。
【００５４】
操作部１６０は、第１のコントローラ１６１、第２のコントローラによって実現される。
【００５５】
第１のコントローラ１６１は、第１の加速度センサ（動きセンサの一例である）１６２、ボタン、十字キー等の加速度センサ以外の操作入力値をえるための操作入力手段を含む。
【００５６】
第２のコントローラ１６５は、第２の加速度センサ（動きセンサの一例である）１６６を含む。
【００５７】
第１の加速度センサ１６２は第１のコントローラ１６１自体の動きに応じて生じる加速度ベクトルを検出する。
【００５８】
第２の加速度センサ１６６は第１のコントローラ１６５自体の動きに応じて生じる加速度ベクトルを検出する。
【００５９】
第１の加速度センサ１６２、第２の加速度センサ１６６は、操作に応じた加速度を検出し、検出した加速度情報（出力値）を出力するものであり、圧電型や動電式、歪みケージ式等のハードウェアにより実現できる。
【００６０】
本実施の形態では、加速度センサ３の出力値は、ワールド座標系 での「下」方向 ( Y軸の反対方向 ) をコントローラ基準座標系に変換したものである。
【００６１】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００６２】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、ハードディスク、メモリーカード、メモリーカセット、磁気ディスク、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００６３】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ（液晶表示装置）、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。
【００６４】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００６５】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリーカードや携帯型ゲーム装置などがある。通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００６６】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００６７】
処理部１００（プロセッサ）は、各機能ブロックへの命令の指示、ゲーム処理、画像生成処理、音生成処理などの各種の処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００６８】
処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。処理部１００は、記憶部１７０をワーク領域として各種処理を行う。
【００６９】
処理部１００は、ゲーム処理部１１０、描画部１３０、音生成部１５０を含む。なお、これらの一部を省略する構成としてもよい。
【００７０】
ゲーム処理部１１０は、ゲーム演算処理部１２０、動き操作入力検出部１２２、操作入力表示制御処理部１２６、設定調整部１２８を含む。
【００７１】
動き操作入力検出部１２２は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が、動き操作入力の検出条件を満たしているか否か判断する。
【００７２】
ゲーム演算処理部１２０は、動き操作入力に基づき所与のゲーム演算処理を行う。
【００７３】
操作入力表示制御処理部１２６は、動き操作入力の検出結果を表示するための動き操作入力表示オブジェクトの表示制御処理を行う。
【００７４】
ゲーム演算処理部１２０は、動き操作入力に基づきオブジェクトの移動又は動作を制御する移動又は動作制御部１２４を含む。
【００７５】
動き操作入力検出部１２２は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値及び他の操作入力値に基づいて所与の動き操作入力の検出条件を判断するようにしてもよい。
【００７６】
操作入力表示制御処理部１２６は、所定のタイミングで一定時間の間、動き操作入力表示オブジェクトが表示または変化するように制御するようにしてもよい。
【００７７】
前記操作入力表示制御処理部１２６は、動き操作入力検出結果を表示するための動き操作入力表示オブジェクトを表示するようにしてもよい。
【００７８】
移動又は動作制御部１２４は、所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、当該動き操作入力に基づきオブジェクトの向きや回転を制御するためのゲームパラメータを演算し、操作入力表示制御処理部１２６は、所与の動き操作入力がオブジェクトの向きや回転に関する動き操作入力である場合には、向きや回転の方向を表示するための動き操作入力表示オブジェクトを表示するようにしてもよい。
【００７９】
動き操作入力検出部１２２は、前記動きセンサの出力値に基づき、動き操作入力に対応付けられた操作量を検出し、移動又は動作制御部１２４は、動き操作入力に対応付けられた操作量に応じて、動き操作入力に対応付けられたゲームパラメータを演算し、操作入力表示制御処理部１２６は、動き操作入力に対応付けられた操作量の大きさを表示するための動き操作入力表示オブジェクトを表示するようにしてもよい。
【００８０】
動き操作入力検出部１２２は、第１のコントローラに内蔵された第１の動きセンサの出力値と第２のコントローラに内蔵された第２の動きセンサの出力値に基づき所与の動き操作入力の条件を満たしているか否か判断し、操作入力表示制御処理部１２６は、第１のコントローラに対応ずけられた第１の動き操作入力表示オブジェクトと、第２のコントローラに対応ずけられた第２の動き操作入力表示オブジェクトと、を用いて、動き操作入力の検出を表示するための表示制御処理を行うようにしてもよい。
【００８１】
動き操作入力検出部１２２は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が所与の条件を満たしているか否か判断し、操作入力表示制御処理部１２６は、所与の条件に対応したパターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００８２】
動き操作入力検出部１２２は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値に基づき所与の期間に行われた動作を検出する手段を含み、操作入力表示制御処理部１２６は、検出された動作を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００８３】
移動又は動作制御部１２４は、第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値に基づき所与の動き操作入力の条件を満たしているか否か判断し、操作入力表示制御処理部１２６は、第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【００８４】
移動又は動作制御部１２４は、操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドに基づきオブジェクトの移動又は動作を制御するためのゲームパラメータを演算する手段を含み、前記操作入力表示制御処理部１２６は、操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドの検出または実行結果を表示するためのコマンド表示オブジェクトの表示制御を行うようにしてもよい。
【００８５】
設定調整部１２８は、動き操作入力に対する初期設定操作入力を受け付ける初期設定操作期間を設定し、初期設定操作期間にコントローラ操作により得られた動きセンサの出力値に基づき所与の動き操作入力の条件の設定値の調整を行う。
【００８６】
移動又は動作制御１２４は、オブジェクト、例えば、キャラクタ、車、又は飛行機等の移動体オブジェクトの移動又は動作演算（移動又は動作シミュレーション）を行う。即ち、この移動又は動作処理部１１２は、操作部１６０によりプレーヤが入力した操作データ、プログラム（移動又は動作アルゴリズム）、または、各種データ（モーションデータ）などに基づいて、オブジェクト（移動オブジェクト）をオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させる処理を行う。
【００８７】
具体的には、本実施形態の移動又は動作処理部１２４は、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（各パーツオブジェクトの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なお、このフレームは、オブジェクトの移動又は動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００８８】
移動又は動作処理部１２４は、演算された向き／回転パラメータに基づきオブジェクト空間の操作対象オブジェクトの回転、姿勢、動作、移動方向の少なくとも１つを制御するようにしてもよい。
【００８９】
なおゲーム処理部１１０は、図示しないオブジェクト空間設定部を含むようにしてもよい。オブジェクト空間設定部は、キャラクタ、車、戦車、建物、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ち、ワールド座標系でのオブジェクト（モデルオブジェクト）の位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００９０】
またゲーム処理部１１０は、図示しない仮想カメラ制御部を含むようにしてもよい。仮想カメラ制御部は、プレーヤからの入力に基づき仮想カメラの位置、回転（向き）等を制御する処理を行う。
【００９１】
また描画部１３０は、ゲーム処理部１２０で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まず、オブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。
【００９２】
なお、頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００９３】
頂点処理では、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そして、ラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（フラグメント処理）が行われる。ピクセル処理では、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内に設定された仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００９４】
なお、描画部１３０が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００９５】
そして、描画部１３０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００９６】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。また、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、記憶部１７０に保存される。
【００９７】
テクスチャマッピングは、テクスチャ記憶部に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００９８】
特に、本実施形態では、オブジェクトを描画する際に、所与のテクスチャをマッピングする処理を行うようにしてもよい。この場合には、各オブジェクトに対してマッピングされるテクスチャの色分布（テクセルパターン）を動的に変化させることができる。
【００９９】
この場合において、色分布が異なるテクスチャを動的に生成してもよいし、複数の色分布が異なるテクスチャを予め用意しておき、使用するテクスチャを動的に切り替えるようにしてもよい。また、オブジェクト単位でテクスチャの色分布を変化させてもよいし、オブジェクト単位でテクスチャの色分布を変化させるようにしてもよい。
【０１００】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわち、オブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７６に格納されるＺ値を参照する。そして参照されたＺバッファ１７６のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【０１０１】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより２つの色を合成した色を求める処理を行う。
【０１０２】
ＲＱ＝（１−α）×Ｒ１＋α×Ｒ２    （１）
ＧＱ＝（１−α）×Ｇ１＋α×Ｇ２    （２）
ＢＱ＝（１−α）×Ｂ１＋α×Ｂ２    （３）
また合成処理が加算αブレンディングである場合を例にとれば、描画部１２０は、下式に従ったα合成処理を行う。
【０１０３】
ＲＱ＝Ｒ１＋α×Ｒ２                （４）
ＧＱ＝Ｇ１＋α×Ｇ２                （５）
ＢＱ＝Ｂ１＋α×Ｂ２                （６）
また、合成処理がα乗算である場合を例にとれば、描画部１２０は、下式に従ったα合成処理を行う。
【０１０４】
ＲＱ＝α×Ｒ１                      （７）
ＧＱ＝α×Ｇ１                      （８）
ＢＱ＝α×Ｂ１                      （９）
また合成処理がα乗加算である場合を例にとれば、描画部１２０は、下式に従ったα合成処理を行う。
【０１０５】
ＲＱ＝α×Ｒ１＋Ｒ２                      （７）
ＧＱ＝α×Ｇ１＋Ｇ２                      （８）
ＢＱ＝α×Ｂ１＋Ｂ２                      （９）
ここで、Ｒ１、Ｇ１、Ｂ１は、描画バッファ１７２に既に描画されている画像（背景画像）の色（輝度）のＲ、Ｇ、Ｂ成分であり、Ｒ２、Ｇ２、Ｂ２は、描画バッファ１７２に描画するオブジェクト（プリミティブ）の色のＲ、Ｇ、Ｂ成分である。また、ＲＱ、ＧＱ、ＢＱは、αブレンディングにより得られる画像の色のＲ、Ｇ、Ｂ成分である。
【０１０６】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えばＲＧＢの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【０１０７】
音生成部１４０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【０１０８】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【０１０９】
２．本実施形態の手法
２−１．操作部
図２（Ａ）（Ｂ）は、本実施形態の操作部の一例を示す図である。
【０１１０】
図２（Ａ）（Ｂ）は、第１のコントローラを示しており、図２（Ｂ）は第２のコントローラを示している。
【０１１１】
第１のコントローラ１６１は第１の加速度センサ１６２（動きセンサの一例）を内蔵している。第１の加速度センサ１６２は、第１のコントローラにかかる加速度ベクトルを検出することができる。
【０１１２】
また第１のコントローラ１６１は、十字キー１６３、ボタン１６４等を含む。
【０１１３】
第２のコントローラ１６６は第１の加速度センサ１６６（動きセンサの一例）を内蔵している。第１の加速度センサ１６６は、第２のコントローラにかかる加速度ベクトルを検出することができる。
【０１１４】
また第２のコントローラ１６５は、ボタン１６７等を含む。
【０１１５】
第１の加速度センサ１６２、第２の加速度センサ１６６は、操作に応じた加速度を検出し、検出した加速度情報（出力値）を出力するものであり、圧電型や動電式、歪みケージ式等の加速度センサなどのハードウェアにより実現できる。
【０１１６】
本実施の形態の第１の加速度センサ１６２、第２の加速度センサ１６６で得られる情報は、ワールド座標系における３軸（Ｘ軸、Ｙ軸、Ｚ軸）に対するそれぞれの加速度ベクトルである。
【０１１７】
２−２．振動コマンド（動き操作入力の一例）と振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）
以下、競走馬を走行させるゲームを例にとり振動コマンド（動き操作入力の一例）と振動コマンド表示オブジェクトについて説明する。
【０１１８】
図３は本実施のゲーム画像の一例である。
【０１１９】
２１０はプレーヤの操作対象となるゲームキャラクタ（競走馬オブジェクト）である。本実施の形態では操作部からの操作入力によりゲームキャラクタである競走馬を走行させるゲームを行うもので、走行する競走馬オブジェクトを含むオブジェクト空間を仮想カメラからみた画像が生成され、ゲーム画像として表示される。
【０１２０】
２３０−１、２３０−２は、振動コマンドの検出を表示するための振動コマンド表示オブジェクトある。ここでは２３０−１、２３０−２が一対で１つの振動コマンド表示オブジェクトであり、後述するように本実施の形態で実行される振動コマンドに応じて表示形態が変化する。
【０１２１】
振動コマンドとは、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサ（加速度、速度、変位を測定するセンサ）の出力値が、所与の振動コマンドの条件を満たしている場合に実行されるコマンドの事である。
【０１２２】
なお第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサ（加速度、速度、変位を測定するセンサ）の出力値及び他の操作入力値が、ゲームキャラクタの移動又は動作を制御するための所与の振動コマンドの条件を満たしている場合に実行されるコマンドも振動コマンドである。
【０１２３】
振動コマンド表示オブジェクトは、各振動コマンドごとに設定されてもよいし、１つの振動コマンド表示オブジェクトの表示形態（色や形状、ブリンク、大きさ等）が振動コマンドに種類に応じて変化するよようにしてもよい。
【０１２４】
振動コマンド表示オブジェクトは、３次元的なオブジェクトとして構成してもよいし、２次元的なオブジェクト（例えばスプライトや板ポリゴン）として構成してもよい。
【０１２５】
２−３．加速／減速振動コマンド（動き操作入力の一例）と加速／減速振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）
図４（Ａ）（Ｂ）は、馬の速度制御に関する振動コマンド（動き操作入力の一例）の入力例について説明するための図であり、図５（Ａ）（Ｂ）は、馬の速度制御に関する振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）の一例である。
【０１２６】
図４（Ａ）は、加速振動コマンドの操作例であり、同図に示すようにプレーヤが第１のゲームコントローラ１６１を右手にもち、第２のゲームコントローラ１６５を左手にもって、同時に前後に動かすことで、プレーヤの操作対象であるゲームキャラクタの馬を加速させることができる。
【０１２７】
すなわち、第１のゲームコントローラ１６１に内蔵された第１の加速度センサの検出値及び第２のゲームコントローラ１６５に内蔵された第２の加速度センサの検出値が、第１のゲームコントローラと第２のゲームコントローラを同時に前後に動かした場合の条件（加速振動コマンドの条件、図１２参照）を満たしていたら、加速振動コマンドが入力されたと判断し（加速振動コマンドの検出）、加速処理が行われる。
【０１２８】
例えば加速振動コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度ａを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ（ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例）の加速度を所定期間ａにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を加速させることができる。
【０１２９】
そして本実施の形態では、振動コマンド表示オブジェクトを所定の状態にすることにより、加速振動コマンドが検出されたことをプレーヤに知らせることができる。
【０１３０】
図５（Ａ）は、加速振動コマンドが検出された時の場合の振動コマンド表示オブジェクト（以下加速振動コマンド表示オブジェクトという）の一例である。本実施の形態では、加速振動コマンドを1回検出すると、加速振動コマンド表示オブジェクト２３０−１、２３０−２の加速ゲージ２３２−１、２３２−２（加速の場合は色がＡのゲージ）が０〜１００まで所定時間で1往復する。すなわちプレーヤは色Ａのゲージが1往復することで、自己の操作（第１のコントローラ１６１と第２のコントローラ１６５を同時に前後に動かす動作）により加速振動コマンドが1回受け付けられたことを把握することができる。プレーヤが第１のコントローラ１６１と第２のコントローラ１６５を同時に前後に動かす動作を続けると、順次加速振動コマンドが検出され、そのたびごとに馬は加速されることになる。
【０１３１】
図４（Ｂ）は、減速振動コマンドの操作例であり、同図に示すようにプレーヤが第１のゲームコントローラ１６１を右手にもち、第２のゲームコントローラ１６５を左手にもって、第１のゲームコントローラ１６１と第２のゲームコントローラ１６５を同時に立てることで、プレーヤの操作対象であるゲームキャラクタの馬を減速させることができる。
【０１３２】
すなわち、第１のゲームコントローラ１６１に内蔵された第１の加速度センサの検出値及び第２のゲームコントローラ１６５に内蔵された第２の加速度センサの検出値が、第１のゲームコントローラ１６１と第２のゲームコントローラ１６５を同時に立てた場合の条件（減速振動コマンドの条件、図１３参照）を満たしていたら、減速振動コマンドが入力されたと判断し（減速振動コマンドの検出）、減速処理が行われる。
【０１３３】
例えば減速振動コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に毎フレームごとに進行方向と逆方向に所定の加速度−ｂを与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ（ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例）の加速度を所定期間−ｂにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を減速させることができる。
【０１３４】
そして本実施の形態では、振動コマンド表示オブジェクトを所定の状態にすることにより、減速振動コマンドが検出されたことをプレーヤに知らせることができる。
【０１３５】
図５（Ｂ）は、減速振動コマンドが検出された時の場合の振動コマンド表示オブジェクト（以下減速振動コマンド表示オブジェクトという）の一例である。本実施の形態では、減速振動コマンドを1回検出すると、減速振動コマンド表示オブジェクト２３０−１、２３０−２の減速ゲージ２３３−１、２３３−２（減速の場合は色がＢのゲージ）が０〜１００まで所定時間で1往復する。すなわちプレーヤは色Ｂのゲージが1往復することで、自己の操作（第１のコントローラと第２のコントローラを同時に立てる動作）により減速振動コマンドが1回受け付けられたことを把握することができる。プレーヤが第１のコントローラ１６１と第２のコントローラ１６５を同時に立てる姿勢を継続すると、順次減速振動コマンドが検出され、そのたびごとに馬は減速されることになる。
【０１３６】
２−４．右寄せ／左寄せ振動コマンド（動き操作入力の一例）と右寄せ／左寄せ振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）
図６（Ａ）（Ｂ）は、馬の向き制御に関する振動コマンド（動き操作入力の一例）の入力例について説明するための図であり、図７（Ａ）（Ｂ）は、馬の向き制御に関する振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）の一例である。
【０１３７】
図６（Ａ）は、右寄せ振動コマンドの操作例であり、同図に示すようにプレーヤが右手にもった第１のゲームコントローラ１６１を手前にひき、左手にもった第２のコントローラは動かさないことで、プレーヤの操作対象であるゲームキャラクタの馬を右に寄せることができる。
【０１３８】
すなわち、第１のゲームコントローラ１６１に内蔵された第１の加速度センサの検出値及び第２のゲームコントローラ１６５に内蔵された第２の加速度センサの検出値が、第１のゲームコントローラ１６１のみ動かし、第２のゲームコントローラ１６５は動かさない場合の条件（右寄せ振動コマンドの条件）を満たしていたら、右寄せ振動コマンドが入力されたと判断し（右寄せ振動コマンドの検出）、右寄せ処理が行われる。
【０１３９】
例えば右寄せ振動コマンドを検出したら、プレーヤの操作対象オブジェクトである馬の進行方向を所定の角度ｃだけ右方向に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した向きパラメータ（ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例）を所定の角度ｃだけ右方向に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである馬を右に寄せることができる。これを利用して馬を右に寄せたり、コーナーを時計回りに曲がったりさせることができる。
【０１４０】
なお第１のコントローラ１６１からの加速度値に基づき、加速度値の大きさを求め、加速度値の大きさによって右への回転角を制御するようにしてもよい。このようにすると第１のコントローラ１６１を大きく引いたり小さく引いたりすることで、曲がる角度を変化させることができる。
【０１４１】
そして本実施の形態では、振動コマンド表示オブジェクトを所定の状態にすることにより、右寄せ振動コマンドが検出されたことをプレーヤに知らせることができる。
【０１４２】
図６（Ｂ）は、左寄せ振動コマンドの操作例であり、同図に示すようにプレーヤが左手にもった第２のゲームコントローラ１６５を手前にひき、右手にもった第１のコントローラ１６１は動かさないことで、プレーヤの操作対象であるゲームキャラクタの馬を左に寄せることができる。
【０１４３】
すなわち、第１のゲームコントローラ１６１に内蔵された第１の加速度センサの検出値及び第２のゲームコントローラ１６５に内蔵された第２の加速度センサの検出値が、第２のゲームコントローラ１６５のみ動かし、第１のゲームコントローラ１６１は動かさない場合の条件（左寄せ振動コマンドの条件、図１４参照）を満たしていたら、左寄せ振動コマンドが入力されたと判断し（左寄せ振動コマンドの検出）、左寄せ処理が行われる。
【０１４４】
例えば左寄せ振動コマンドを検出したら、プレーヤの操作対象オブジェクトである馬の進行方向を所定の角度ｃだけ左方向に回転させるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した向きパラメータ（ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例）を所定の角度ｃだけ左方向に回転させる。このようにすることで、プレーヤの操作対象オブジェクトである馬を左に寄せることができる。これを利用して馬を左に寄せたり、コーナー反時計回りに曲がったりさせることができる。
【０１４５】
なお第２のコントローラ１６５からの加速度値に基づき、加速度値の大きさを求め、加速度値の大きさによって左への回転角を制御するようにしてもよい。このようにすると第２のコントローラ１６５を大きく引いたり小さく引いたりすることで、曲がる角度を変化させることができる。
【０１４６】
そして本実施の形態では、振動コマンド表示オブジェクトを所定の状態にすることにより、左寄せ振動コマンドが検出されたことをプレーヤに知らせることができる。
【０１４７】
図７（Ａ）は、左寄せ振動コマンドが検出された時の場合の振動コマンド表示オブジェクト（以下、左寄せ振動コマンド表示オブジェクトという）の一例である。本実施の形態では、左寄せ振動コマンドを1回検出すると、左寄せ振動コマンド表示オブジェクト２５０が所定時間表示させる。なお検出された加速度値の大きさによって左への回転角の大小を制御する場合には回転角の大小に応じて、左寄せ振動コマンド表示オブジェクト２５０の矢印の長さをかえるようにしてもよい。
【０１４８】
プレーヤは左寄せ振動コマンド表示オブジェクト２５０が表示されることで、自己の操作（第２のコントローラを引いて第１のコントローラを動かさない動作）により左寄せ振動コマンドが受け付けられたことを把握することができる。  またプレーヤが第２のコントローラ１６５を引き、第１のコントローラ１６１を動かさない動作を繰り返すと、順次左寄せ振動コマンドが検出され、そのたびごとに馬の向きを左に回転させるようにしてもよい。
【０１４９】
図７（Ｂ）は、右寄せ振動コマンドが検出された時の場合の振動コマンド表示オブジェクト（以下、右寄せ振動コマンド表示オブジェクトという）の一例である。本実施の形態では、右寄せ振動コマンドを1回検出すると、右寄せ振動コマンド表示オブジェクト２５２が所定時間表示させる。なお検出された加速度値の大きさによって右への回転角の大小を制御する場合には回転角の大小に応じて、右寄せ振動コマンド表示オブジェクト２５２の矢印の長さをかえるようにしてもよい。
【０１５０】
プレーヤは右寄せ振動コマンド表示オブジェクト２５２が表示されることで、自己の操作（第１のコントローラ１６１を引いて第２のコントローラ１６５を動かさない動作）により右寄せ振動コマンドが受け付けられたことを把握することができる。
【０１５１】
またプレーヤが第１のコントローラ１６１を引き、第２のコントローラ１６５を動かさない動作を繰り返すと、順次右寄せ振動コマンドが検出され、そのたびごとに馬の向きを右に回転させるようにしてもよい。
【０１５２】
２−５．ムチ入力振動コマンド（動き操作入力の一例）とムチ入力振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）
図８は、馬の速度制御に関する他の振動コマンド（動き操作入力の一例）（以下、ムチ入力振動コマンドという）の入力例について説明するための図であり、図９は、ムチ入力振動コマンドが実行されたゲーム画像の一例である。
【０１５３】
図８は、ムチ入力振動コマンドの操作例であり、同図に示すようにプレーヤが右手にもった第１のゲームコントローラ１６１のボタン１６４を押しながら、第１のゲームコントローラ１６１をふることで、プレーヤの操作対象であるゲームキャラクタ騎手２１２がプレーヤの操作対象であるゲームキャラクタの馬２１０にムチ２１４をいれ、馬の速度を飛躍的にアップさせることができる。
【０１５４】
すなわち、第１のゲームコントローラ１６１に内蔵された第１の加速度センサの検出値及び第１のゲームコントローラ１６１のボタン１６４の押下信号が、第１のゲームコントローラ１６１を押しながら、第１のゲームコントローラ１６１をふる場合の条件（ムチ入力振動コマンドの条件、図１５参照）を満たしていたら、ムチ入力振動コマンドが入力されたと判断し（ムチ入力振動コマンドの検出）、ムチ入力処理が行われる。
【０１５５】
例えばムチ入力振動コマンドを検出したら、プレーヤの操作対象オブジェクトである馬に所定期間、所定の加速度ｅ（ｅ＞ａ）を与えるようにしてもよい。すなわちプレーヤの操作対象オブジェクトである馬に対応した加速度パラメータ（ゲームキャラクタの移動又は動作を制御するためのゲームパラメータの一例）の加速度を所定期間通常の加速度ａに比べ数倍の大きさのｅにする。このようにすることで、プレーヤの操作対象オブジェクトである馬を急加速させることができる。
【０１５６】
そして本実施の形態では、振動コマンド表示オブジェクトを所定の状態にすることにより、ムチ入力振動コマンドが検出されたことをプレーヤに知らせることができる。
【０１５７】
図９は、ムチ入力振動コマンドが検出されたゲーム画像の一例である。
【０１５８】
本実施の形態では、ムチ入力振動コマンドを1回検出すると、加速振動コマンド表示オブジェクト２３０−１、２３０−２の加速ゲージ２３２−１、２３２−２（加速の場合は色がＡのゲージ）が０〜１００まで所定時間で1往復するとともに、加速振動コマンド表示オブジェクト２３０−１、２３０−２自体がブリンク表示される。これによりプレーヤは自己の操作（第１のコントローラ１６１のボタン１６４を押しながら振る動作）によりムチ入力振動コマンドが1回受け付けられたことを把握することができる。
【０１５９】
なおムチ入力振動コマンドが検出された場合にはプレーヤの操作対象であるゲームキャラクタの騎手２１２は馬２１０に対してムチ２１４を打つモーションを行う。
【０１６０】
２−６．振動コマンド（動き操作入力の一例）の検出手法
以下、動きセンサとして加速度センサを用いて３軸（Ｘ軸、Ｙ軸、Ｚ軸）のそれぞの加速度値を検出して３軸の加速度値に基づいて振動コマンドの条件を満たしているか否か判断する場合を例にとり説明する。
【０１６１】
図１０（Ａ）（Ｂ）（Ｃ）は、それぞれＸ軸、Ｙ軸、Ｚ軸に対する加速度センサの出力値である加速度値の遷移を示したグラフである。
【０１６２】
例えば本実施の形態で、第１のコントローラに対して振る動作が行われているか否かは、所定期間Ｔの間の加速度値の大きさある所定値以上になったかどうかで判断するようにようにしてもよい。
【０１６３】
ここで、加速度値の大きさは時刻ｔにおけるＸ軸、Ｙ軸、Ｚ軸のそれぞれの加速度の大きさに基づき判断するようにしてもよい。たとえば時刻ｔ１におけるＸ軸に対する加速度値の大きさがｘ１、Ｙ軸に対する加速度値の大きさがｙ１、Ｚ軸に対する加速度値のｚ１として、時刻ｔにおける求める加速度値の大きさｋ１を下記の式により演算してもよい。
【０１６４】
【数１】
2007300973.tif 000003
【０１６５】
また所定期間Ｔの間の加速度値の大きさがある所定値以上になったかどうかは、所定期間Ｔ（ｔ１〜ｔｎ）の加速度値の平均値をとり、平均値がある値以上になったかどうかで判断するようにしてもよい。
【０１６６】
また例えば振動コマンド条件としてコントローラの姿勢が関係する場合（例えば減速振動コマンドのようにコントローラを立てたか否かが判定要件になる場合）には、例えばＹ軸の加速度値の大きさｙとＺ軸の加速度値の大きさｚに基づきアークタンジェント（Ｙ／Ｚ）を取得して判断するようにしてもよい。
【０１６７】
２−７．反作用入力の認識防止手法
図１１は、本実施の形態の反作用入力の認識防止手法について説明するための図である。３００はユーザーが加速度センサを内蔵したコントローラを振っているときに、内蔵する加速度センサが所与の軸に対して検出した加速度値の時間的な遷移である。ユーザーがＴ１、Ｔ２、Ｔ３の間にそれぞれ、１回づつコントローラを往復させると、各期間Ｔ１、Ｔ２、Ｔ３ではそれぞれ、４つのパルスが発生している。例えば区間Ｔ１では３１０、３１２，３１４，３１６の極値を有する４つのパルスが発生している。ここで３１４、３１６の極値を有する２つのパルスは３１０、３１２の極値を有する２つのパルスの反作用入力として生じるパルスである。
【０１６８】
例えば加速度値の大きさが所定値以上である場合にコントローラを振っていることを検出する場合には、所定値の閾値Ｓを設定して、検出した加速度値が閾値Ｓを超えたときに振動コマンドを１回検出したと判断することができる。すなわち区間Ｔ１においては時刻ｔ１において加速度値ｑ１が閾値Ｓを超えるのでここで振動コマンドを検出するようにしてもよい。
【０１６９】
本実施の形態では、一旦振動コマンドを検出したら、その後所定期間（例えばｔ１で振動コマンドを検出したら、その後ｋ１の間）は、振動コマンドを検出しない。したがって、次に振動コマンドを検出するのは所定期間後に最初に検出した加速度値が閾値Ｓを超えるときであるｔ３である。
【０１７０】
したがってｔ２においては、加速度値ｑ２が閾値Ｓを超えるが振動コマンドは検出されない。このように４パルスの周期に基づき振動コマンドを認識しない期間（コマンド認識禁止期間）を設定することにより、反作用入力によるパルスを検出せず、１回の振りに対応して１回の振動コマンドを検出することができる。
【０１７１】
なおコマンドを検出しない期間の長さは、これ以外にも適宜設定することができる。例えばｈ秒単位でコマンドを検出するように設定したい場合には１回コマンドを検出したら、その後ｈ’秒（ｈ’は加速度値の遷移特性及びｈに応じて適宜設定する）はコマンド認識禁止期間とするようにしてもよい。
【０１７２】
２−８．加速振動コマンドの検出処理
図１２は、加速振動コマンドの検出処理の流れを示すフローチャート図である。
【０１７３】
まず左右のコントローラ（右が第１のコントローラ、左が第２のコントローラとする）の全ての状態（検出される加速度値やその他の操作部（ボタン等）からの入力信号）を、ある一定期間保持する（ステップＳ１０）。
【０１７４】
次に左（右）のコントローラの加速度の大きさ (X,Y,Zによる長さ)を取得する（ステップＳ２０）。
【０１７５】
次に取得した値がある一定値以上か否か判断し（ステップＳ３０）、一定値以上である場合には、他のコントローラが保持している近い期間のデータを取得する（ステップＳ４０）。
【０１７６】
そして他のコントローラから取得した値がある一定値以上か否か判断し（ステップＳ５０）、一定値以上である場合には、加速入力と認識する（ステップＳ６０）。
【０１７７】
そして加速入力を認識した後は、ある一定期間は加速入力を認識しない（ステップＳ７０）。これにより反作用入力の検出を避けることができる。なお加速入力を認識した後は、ある一定期間すべての振動コマンドを認識しないようにしてもよい。
【０１７８】
２−９．減速振動コマンドの検出処理
図１３は、減速振動コマンドの検出処理の流れを示すフローチャート図である。
【０１７９】
まず左右のコントローラのY,Zの加速度から、アークタンジェント（Y/Z）を取得する（ステップＳ１１０）。
【０１８０】
次に左右のコントローラの加速度の大きさ (X,Y,Zによる長さ)を取得する（ステップＳ２２０）。
【０１８１】
次に取得したアークタンジェント（Y/Z）値がある一定値以上か否か判断し（ステップＳ１３０）、一定値以上である場合には、取得した左右のコントローラの加速度の大きさが一定範囲内か否か判断し（ステップＳ１４０）、一定範囲ないである場合には、減速準備と認識して、減速準備期間をカウンタでカウントする（ステップＳ１５０）。
【０１８２】
そして減速準備期間が一定時間を経過したか否か判断し（ステップＳ１６０）、一定期間を経過した場合には減速入力と認識する（ステップＳ１７０）。このようにすることで、一瞬の間アークタンジェント（Y/Z）値がある一定値以上となり、左右のコントローラの加速度の大きさがある一定範囲になっただけで減速させるのを防止することができる。なお減速入力を認識した後は、ある一定期間すべての振動コマンドを認識しないようにしてもよい。
【０１８３】
２−１０．左よせ振動コマンドの検出処理
図１は、左よせ振動コマンドの検出処理の流れを示すフローチャート図である。
【０１８４】
まず左右のコントローラの全ての状態を、ある一定期間保持する（ステップＳ２１０）。
【０１８５】
次に左のコントローラの加速度の大きさ (X,Y,Zによる長さ)を取得する（ステップＳ２２０）。
【０１８６】
次に取得した値がある一定値以上か否か判断し（ステップＳ２３０）、一定値以上である場合には、右のコントローラが保持している近い期間のデータを取得する（ステップＳ２４０）。
【０１８７】
次に右のコントローラから取得した値がある一定値以下か否か判断し（ステップＳ２５０）、一定値以下である場合には、左に曲がる指示入力（左寄せ振動コマンド）と認識する（ステップＳ２６０）。
【０１８８】
そして左に曲がる指示入力を認識した後は、ある一定期間は左に曲がる指示入力を認識しない（ステップＳ１７０）。これにより反作用入力の検出を避けることができる。なお左寄せ振動コマンドを認識した後は、ある一定期間すべての振動コマンドを認識しないようにしてもよい。
【０１８９】
２−１１．ムチ入力振動コマンドの検出処理
図１５は、ムチ入力振動コマンドの検出処理の流れを示すフローチャート図である。
鞭準備として定めたボタンを押されたか否か判断し（ステップＳ３１０）、押された場合には鞭準備入力と認識する（ステップＳ３２０）。
【０１９０】
次に右コントローラ（第１のコントローラ）の加速度の大きさ（X,Y,Zによる長さ）が、ある一定以上か否か判断し（ステップＳ３３０）、一定値以上である場合には鞭入力と認識する（ステップＳ３４０）。
【０１９１】
２−１２．振動コマンドの検出を振動コマンド表示オブジェクト（動き操作入力表示オブジェクトの一例）として表示する処理
図１６は、振動コマンド表示オブジェクトを表示する表示制御処理の流れを示すフローチャート図である。
【０１９２】
所与の振動コマンドを検出したか否か判断し（ステップＳ４１０）、検出した場合には、振動コマンドに基づきゲームキャラクタの移動又は動作を制御するためのゲームパラメータを演算し、演算されたゲームパラメータに基づきオブジェクト空間の操作対象オブジェクトの移動又は動作を制御する（ステップＳ４２０）。
【０１９３】
そして振動コマンドに対応した振動コマンド表示オブジェクトを一定期間所定の状態にする（ステップＳ４３０）。
【０１９４】
２−１３．キャリブレーション調整処理
図２１（Ａ）（Ｂ）はキャリブレーション調整処理のためのゲーム画面の一例について説明するための図である。
【０１９５】
例えばプレーヤが初期設定モードを選択すると、図２１（Ａ）に示すような初期設定画面が表示され、ユーザーに対して「画面に向かってコントローラを基準位置に構えてください」等のメッセージや人がコントローラを画面に向かって基準位置でかまえているお手本となる画像が表示され、初期設定期間が設定される。
【０１９６】
６１０は基準位置にお手本通りに構えた時のコントローラの傾き具合を示す矢印画像である。
【０１９７】
初期設定期間にお手本にそってプレーヤがコントローラを構えると図２１（Ｂ）に示すような画像が表示される。６２０は、プレーヤコントローラを基準位置に構えた時のコントローラの傾き具合を示す矢印画像である。矢印画像６２０の傾き具合は初期設定期間内にコントローラに内蔵された加速度センサの出力値に基づき与えられる。図２１（Ｂ）では、プレーヤの矢印画像６２０は基準位置の矢印画像と少しずれている。これはシステムがデフォルトでもっている基準位置に対応して設定された初期設定値と、実際のプレーヤの構える基準位置に対応した初期設定値が連れていることを示している。
【０１９８】
ここで、「あなたの基準位置はこれでよいですか？」と言うメッセージが出力され、イエスボタン画像６３０がブリンクしている最中にプレーヤがプレーヤが確定入力を行うとプレーヤの基準位置が６２０で確定される。
【０１９９】
この場合、本実施の形態ではプレーヤの入力した基準位置に基づき動き操作入力の検出条件となる設定値の調整処理を行う。
【０２００】
図１７は、キャリブレーション処理の流れを示すフローチャート図である。
【０２０１】
初期設定操作期間か否か判断し（ステップＳ５１０）、初期設定操作期間であれば、コントローラ操作により得られた動きセンサの出力値に基づき所与の振動コマンドの条件の向きに関する設定値の調整を行う（ステップＳ５２０）。
【０２０２】
初期設定期間はゲームに先立ち設定するようにしてもよい。
【０２０３】
初期設定期間にユーザーに対して基準位置で基本姿勢でコントローラを把持してもらい、そのときの加速度センサの出力値を取得する。ここで例えば基本姿勢や基準位置をきめておいて、その姿勢や位置でコントローラを把持してもらっても、手にもったときのコントローラの傾き等がひとによって微妙に異なる。
【０２０４】
本実施の形態によれば、振動コマンドの条件に向きの要素が含まれている場合には、ユーザーごとに設定された基準位置からのオフセットとして判断することができるので、ユーザーごとに微妙に異なる基準位置の違いを吸収することができる。
【０２０５】
また例えば初期設定期間にユーザーに対して振りの動作を行ってもらい、そのときの加速度センサの出力値を取得する。振りの動作もユーザーごとにその周期や速度や強さやふり幅が異なることから、検出される加速度値の遷移のユーザーごとに異なってくる。
【０２０６】
本実施の形態によれば、振動コマンドの条件に加速度値の大きさ向きの要素が含まれている場合には、初期設定期間に検出した加速度値の大きさに基づき、ユーザーごとに加速度値の大きさを判定する際の閾値を設定するようにしてもよい。
【０２０７】
なお、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語（描画領域、ピクセル値、変換テーブル等）として引用された用語（フレームバッファ・ワークバッファ、α値、ルックアップテーブル等）は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【０２０８】
上記実施の形態では動きセンサとして加速度センサを用いる場合を例にとり説明したがこれにかぎられない。例えば速度センサや変位を測定するセンサ等で構成してもよい。
【０２０９】
また上記実施の形態では加速度センサで３軸についての加速度値をそれぞれ検出する場合を例にとり説明したがこれに限られない。例えば２軸や１軸についての加速度値を検出場合でもよい。
【０２１０】
また、上記実施の形態では競馬ゲームを例にとり説明したがこれに限られず、種々のゲームに適用できる。例えば、野球等の球技のゲームでもよいし、楽器等の演奏ゲームでもよいし、格闘ゲーム等でもよい。
【０２１１】
図２０（Ａ）（Ｂ）は、演奏ゲームにおける動き操作入力表示コマンドの一例について説明するための図である。
【０２１２】
図２０（Ａ）（Ｂ）は、マラカスを模したコントローラを動かして動き操作入力を行う演奏ゲームのゲーム画像である。静止表示された基準マーク５１０に対して指示マーク５２０、５２２が近づいて来るゲーム画像が表示される。５２０は左マラカス操作指示マークであり、５２２は右マラカス操作指示マークである。プレーヤは、右手に持った右マラカス型コントローラと左手にもった左マラカス型コントローラを、曲に合わせて基準マークに近づいてくる左マラカス操作指示マーク５２０や右マラカス操作指示マークが基準マーク５１０に重なったタイミングでそれぞれ左手や右手に持ったマラカスをふることで演奏ゲームを行う。
【０２１３】
５５０は左マラカス型コントローラに対応した動き操作入力表示コマンドであり、５６０は右マラカス型コントローラに対応した動き操作入力表示コマンドである。
【０２１４】
プレーヤが左マラカス型コントローラを振ると、図２９（Ｂ）の５５０に示すようにの左マラカス型コントローラが振られたことを示すゲージ５５２が所定期間表示されるようにしてもよい（例えば所定期間でゲージが上下に往復する画像表示が行われるようにしてもよい）。
【０２１５】
またプレーヤが右マラカス型コントローラを振ると、図２９（Ｂ）の５６０に示すようにの右マラカス型コントローラが振られたことを示すゲージ５６２が所定期間表示されるようにしてもよい（例えば所定期間でゲージが上下に往復する画像表示が行われるようにしてもよい）。
【０２１６】
また動き操作入力検出部は、第１のコントローラに内蔵された第１の動きセンサの出力値と第２のコントローラに内蔵された第２の動きセンサの出力値に基づき所与の振動コマンドの条件を満たしているか否かを判断し、前記操作入力表示制御処理部は、第１のコントローラに対応づけられた第１の振動コマンド表示オブジェクトと、第２のコントローラに対応づけられた第２の振動コマンド表示オブジェクトと、を用いて、振動コマンドの検出を表示するための表示制御処理を行うようにしてもよい。
【０２１７】
図１８（Ａ）（Ｂ）は、第１のコントローラと第２のコントローラのそれぞれに対応して振動コマンド表示オブジェクトが設けられている例について説明するための図である。
【０２１８】
図１８（Ａ）の４１０は第１のコントローラに対応付けられた第１の振動コマンド表示オブジェクトであり、４２０は第２のコントローラに対応付けられた第２の振動コマンド表示オブジェクトである。
【０２１９】
例えば第１のコントローラの動きで判断される振動コマンドが検出された場合には第１の振動コマンド表示オブジェクト４１０が変化し、第２のコントローラの動きで判断される振動コマンドが検出された場合には第２の振動コマンド表示オブジェクト４２０が変化し、第１のコントローラと第２のコントローラの両方の動きで判断される振動コマンドが検出された場合には第１の振動コマンド表示オブジェクト４１０と第２の振動コマンド表示オブジェクト４２０の両方が変化するように制御してもよい。
【０２２０】
図１８（Ｂ）の４２０’、４１０’は、第１のコントローラと第２のコントローラの両方の動きで判断される振動コマンドが検出された場合に、第１の振動コマンド表示オブジェクト４１０と第２の振動コマンド表示オブジェクト４２０の両方がブリンクすることで、振動コマンドが検出されたことを表示している様子を示している。
【０２２１】
このようにすると振動コマンドの検出状態と第１、第２のコントローラの動作状況との関係をプレーヤは把握しやすいという効果がある。
【０２２２】
図１９（Ａ）（Ｂ）は、動き操作入力以外の操作部に対応して振動コマンド表示オブジェクトが設けられている例について説明するための図である。
【０２２３】
図１９（Ａ）の４３０は十字キーに対応付けられた振動コマンド表示オブジェクトであり、４４０はボタンに対応付けられた振動コマンド表示オブジェクトである。
【０２２４】
例えば十字キーの操作とコントローラの動きの両方で判断される振動コマンドが検出された場合には十字キーに対応付けられた振動コマンド表示オブジェクト４３０が変化し、ボタンの操作とコントローラの動きの両方で判断される振動コマンドが検出された場合にはボタンに対応付けられた振動コマンド表示オブジェクト４４０が変化するように制御してもよい。
【０２２５】
図１９（Ｂ）の４３０’、４４０’は、十字キーの操作とコントローラの動きの両方で判断される振動コマンドとボタンの操作とコントローラの動きの両方で判断される振動コマンドが検出された場合に、十字キーに対応付けられた振動コマンド表示オブジェクト４３０とボタンに対応付けられた振動コマンド表示オブジェクト４４０に、振動ゲージ４３２，４４２が表示されることで、振動コマンドが検出されたことを表示している様子を示している。
【０２２６】
また振動コマンド検出部は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値が所与の条件を満たしているか否か判断し、前記操作入力表示制御処理部は、前記所与の条件に対応したパターンの発生またはその種類を示す振動コマンド表示オブジェクトを表示するようにしてもよい。
【０２２７】
本発明によればコントローラの動作によって所与の条件に対応するパターンが発生したことや、発生したパターンの種類をプレーヤが把握することができる。
【０２２８】
例えば演奏ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の演奏パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【０２２９】
例えば演奏ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の演奏パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【０２３０】
また例えば格闘ゲームであれば、動きセンサの出力値が所与の条件を満たした場合には、所与の技パターンの発生またはその種類を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【０２３１】
また動き操作入力検出部は、第１のコントローラ及び第２のコントローラの少なくとも一方に内蔵された動きセンサの出力値に基づき所与の期間に行われた動作を検出する手段を含み、前記操作入力表示制御処理部は、前記検出された動作を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【０２３２】
例えば所定期間におけるコントローラの動きを動き操作入力表示オブジェクトとして再現させるようにしてもよい。このようにすると、プレーヤは所定期間に行った自己の動作を把握することができる。
【０２３３】
また移動又は動作制御部は、第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値に基づき所与の動き操作入力の条件を満たしているか否か判断し、前記操作入力表示制御処理部は、第１の動きセンサの出力値の大きさと第２の動きセンサの出力値の大きさの合算値を示す動き操作入力表示オブジェクトを表示するようにしてもよい。
【０２３４】
また前記移動又は動作制御部は、操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドに基づきオブジェクトの移動又は動作を制御するためのゲームパラメータを演算する手段を含み、前記操作入力表示制御処理部は、操作部に設けられた動きセンサ以外の操作入力手段からの操作入力に対応したコマンドの検出または実行結果を表示するためのコマンド表示オブジェクトの表示制御を行うようにしてもよい。
【０２３５】
コマンド表示オブジェクトと動き操作入力表示オブジェクトとは別個のオブジェクトとして構成されるようにしてもよい。
【０２３６】
本発明によれば、ボタンやレバーや十時キー等の操作部に対する操作入力についても受付状況を把握することができる。
【０２３７】
また動き操作入力の検出結果を通知するための動き操作入力通知音の出力制御処理を行うようにしてもよい。
【０２３８】
また、本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【０２３９】
【図１】本実施形態の画像生成システムの機能ブロック図の例。
【図２】図２（Ａ）（Ｂ）は、本実施形態の操作部の一例を示す図。
【図３】本実施のゲーム画像の一例。
【図４】図４（Ａ）（Ｂ）は、馬の速度制御に関する振動コマンドの入力例について説明するための図。
【図５】図５（Ａ）（Ｂ）は、馬の速度制御に関する振動コマンド表示オブジェクトの一例。
【図６】図６（Ａ）（Ｂ）は、馬の向き制御に関する振動コマンドの入力例について説明するための図。
【図７】図７（Ａ）（Ｂ）は、馬の向き制御に関する振動コマンド表示オブジェクトの一例。
【図８】馬の速度制御に関する他の振動コマンド（以下、ムチ入力振動コマンドという）の入力例。
【図９】ムチ入力振動コマンドが実行されたゲーム画像の一例。
【図１０】図１０（Ａ）（Ｂ）（Ｃ）は、それぞれＸ軸、Ｙ軸、Ｚ軸に対する加速度センサの出力値である加速度値の遷移を示したグラフ。
【図１１】本実施の形態の反作用入力の認識防止手法について説明するための図。
【図１２】加速振動コマンドの検出処理の流れを示すフローチャート図。
【図１３】減速振動コマンドの検出処理の流れを示すフローチャート図。
【図１４】左よせ振動コマンドの検出処理の流れを示すフローチャート図。
【図１５】ムチ入力振動コマンドの検出処理の流れを示すフローチャート図。
【図１６】振動コマンド表示オブジェクトを表示する表示制御処理の流れを示すフローチャート図。
【図１７】キャリブレーション処理の流れを示すフローチャート図。
【図１８】図１８（Ａ）（Ｂ）は、第１のコントローラと第２のコントローラのそれぞれに対応して振動コマンド表示オブジェクトが設けられている例について説明するための図。
【図１９】図１９（Ａ）（Ｂ）は、動き操作入力以外の操作部に対応して振動コマンド表示オブジェクトが設けられている例について説明するための図。
【図２０】図２０（Ａ）（Ｂ）は、演奏ゲームにおける動き操作入力表示コマンドの一例について説明するための図。
【図２１】図２１（Ａ）（Ｂ）はキャリブレーション調整処理のためのゲーム画面の一例について説明するための図。
【符号の説明】
【０２４０】
１００  処理部、１１０  ゲーム処理部、１２２  動き操作入力検出部、１２４  移動又は動作制御部、１２６  操作入力表示制御処理部、１２８  設定調整部、１３０  描画部、１４０  音生成部、１６０  操作部、１６１  第１のコントローラ、１６２  第１の加速度センサ、１６３  ボタン・十字キー等、１６５  第２のコントローラ、１６６  第２の加速度センサ、１７０  記憶部、１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、１９４  携帯型情報記憶装置、１９６  通信部
【図１】
2007300973.tif 000004
【図２】
2007300973.tif 000005
【図３】
2007300973.tif 000006
【図４】
2007300973.tif 000007
【図５】
2007300973.tif 000008
【図６】
2007300973.tif 000009
【図７】
2007300973.tif 000010
【図８】
2007300973.tif 000011
【図９】
2007300973.tif 000012
【図１０】
2007300973.tif 000013
【図１１】
2007300973.tif 000014
【図１２】
2007300973.tif 000015
【図１３】
2007300973.tif 000016
【図１４】
2007300973.tif 000017
【図１５】
2007300973.tif 000018
【図１６】
2007300973.tif 000019
【図１７】
2007300973.tif 000020
【図１８】
2007300973.tif 000021
【図１９】
2007300973.tif 000022
【図２０】
2007300973.tif 000023
【図２１】
2007300973.tif 000024