(57)【要約】【課題】スカッシュのような複雑で激しいボール（移動体オブジェクト）の動きをするスポーツをゲームで模擬する場合の，上記の要望及び問題点の解決をする移動オブジェクトの予測軌道に情報を持たせて表示する。【解決手段】  仮想空間に設けられた複数の平面があるフィールド上で，プレイヤの入力操作に応答して動作するキャラクタとボールとの衝突を判定して，該ボールの軌道を変化させるゲームの様子を，前記仮想空間に配置される仮想視点から見た画像で表示する処理をコンピュータシステムに実行させるためのコンピュータプログラムであって，前記コンピュータシステムに，移動する前記ボールの軌道を演算する軌道演算ステップと，  前記軌道を画面に表示する軌道表示ステップと，前記軌道が前記衝突から所定の平面に接した回数を計測する回数計測ステップと，前記計測した回数が所定回数を越えた場合，前記軌道表示の形態を変更して表示する軌道表示変更ステップとを実行させる。【選択図】図７
2008119211.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間に設けられた複数の平面があるフィールド上で，プレイヤの入力操作に応答して動作するキャラクタとボールとの衝突を判定して，該ボールの軌道を変化させるゲームの様子を，前記仮想空間に配置される仮想視点から見た画像で表示する処理をコンピュータシステムに実行させるためのコンピュータプログラムであって，
前記コンピュータシステムに，移動する前記ボールの軌道を演算する軌道演算ステップと，
前記軌道を画面に表示する軌道表示ステップと，
前記軌道が前記衝突から所定の平面に接した回数を計測する回数計測ステップと，
前記計測した回数が所定回数を越えた場合，前記軌道表示の形態を変更して表示する軌道表示変更ステップと，
を実行させることを特徴とするコンピュータプログラム。
【請求項２】
請求項１において，
前記軌道表示ステップは，前記ボールの所定時間先までを予測表示させることを特徴とするコンピュータプログラム。
【請求項３】
請求項１または請求項２において，
前記軌道演算ステップは，前記ボールの移動方向と移動速度と回転方向のうち少なくとも１つに基づいて前記軌道を演算することを特徴とするコンピュータプログラム。
【請求項４】
請求項３において，
前記プレイヤの入力操作に基づいて前記衝突が判定された場合において，前記コンピュータシステムに，前記入力操作の加速度に基づいて，前記ボールの移動方向と移動速度と回転方向のうち少なくとも１つを変更するパラメータ変更ステップと，
を更に実行させることを特徴とするコンピュータプログラム。
【請求項５】
請求項１乃至４のいずれかにおいて，
前記コンピュータシステムに，
前記プレイヤの入力操作に基づいて前記衝突が起こる位置を判定する衝突位置判定ステップと，
前記衝突位置を所定の形態で画面に表示する衝突位置表示ステップと，
を更に実行させることを特徴とするコンピュータプログラム。
【請求項６】
請求項１乃至５のいずれかにおいて，
前記ボールが前記所定の面に前記所定回数接した場合，前記ゲームを終了させるゲーム終了ステップを更に実行させることを特徴とするコンピュータプログラム。
【請求項７】
請求項１乃至請求項６のいずれかにおいて，
前記軌道表示ステップは，前記ボールの移動軌道を線または点群で表示することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，移動オブジェクトの予測軌道に情報を持たせて表示するコンピュータプログラム及び，これを適用するゲーム装置に関し，特に，遊戯者（プレイヤ）により操作される入力機器（ポインティングデバイス）の出力に応じて，表示装置にオブジェクトを移動表示させるプログラムに関する。
【背景技術】
【０００２】
これまでプレイヤの操作に基づき，表示装置の画面上に移動オブジェクトとしてボールの移動表示を行い，ボールを扱うスポーツを模擬するゲームが種々ゲーム装置において実行可能とされている。
【０００３】
そして，ボールゲームとして，例えば，特許文献１に記載されるように，ゴルフのショット操作の前にショットの要素に基づきボールの予想弾道軌跡を表示するもの，あるいは，特許文献２に記載されるように，テーブルテニス等を模擬するゲームにおいて，プレイヤの入力操作の仕方に応じてスイングの打法を判定し，打法に対応したボールの軌跡を表示装置に表示して，プレイヤに対する参考情報を表示する発明が知られている。
【０００４】
一方，プレイヤにより操作される入力機器として種々新たな機能が開発され，これらを利用して，新たなスポーツを模擬するゲームを実現することが可能となって来た。
【０００５】
しかし，新たなゲーム化されるスポーツは，プレイヤには一般的でないものもある。したがって，かかる場合は，ゲームの中でそのルールや判定結果を反映させながら当該スポーツゲームを楽しめることが重要である。
【特許文献１】特開２００４−２９０６５７号公報
【特許文献２】特許第３７６３７７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記の特許文献１，２に記載の従来発明にあっては，先に説明したようにボールの予想される軌跡を表示してプレイヤに有利な情報を表示することが行われる。しかし，例えば，スカッシュのようなスポーツの場合，プレイヤにとってルールが一般的でない。さらに，スカッシュのボールは，直方体の空間内を天井以外の５面で跳ね返りながら高速で移動し，複雑で激しいボールの動きをする。
【０００７】
さらに，スカッシュのルールは複雑である。例えば，ノーバウンドで，前面壁に当てることが要件である。さらに周囲の４つの壁に接触してもバウンド回数には含まれないが，床面に２バウンドすると，相手側に得点が入る等である。
【０００８】
このような複雑なルールと，激しいボールの移動があるスポーツをゲーム上で模擬する場合，床面と壁面のどちらでボールがバウンドしたかの区別がつき難いのでリアルタイムでボールの予測軌道を常時表示し，プレイヤに対しどのタイミングで，あるいはどの位置でボールを打てば良いかの情報を与えることが好ましい。
【０００９】
また，予測不可能な要素の影響を受けた際に，即座に反映した情報を描画表示することが必要であり，更に軌道の描画において，ルールに関する情報が表示されることが望ましい。
【００１０】
したがって，本発明の目的は，スカッシュのような複雑で激しいボール（移動体オブジェクト）の動きをし，又，ルールが複雑であるスポーツをゲームで模擬する場合の，上記の要望及び問題点の解決をする移動オブジェクトの予測軌道に情報を持たせて表示するコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記の課題を解決する本発明の第１の側面は，仮想空間に設けられた複数の平面があるフィールド上で，プレイヤの入力操作に応答して動作するキャラクタとボールとの衝突を判定して，該ボールの軌道を変化させるゲームの様子を，前記仮想空間に配置される仮想視点から見た画像で表示する処理をコンピュータシステムに実行させるためのコンピュータプログラムであって，前記コンピュータシステムに，移動する前記ボールの軌道を演算する軌道演算ステップと，前記軌道を画面に表示する軌道表示ステップと，前記軌道が前記衝突から所定の平面に接した回数を計測する回数計測ステップと，前記計測した回数が所定回数を越えた場合，前記軌道表示の形態を変更して表示する軌道表示変更ステップとを実行させることを特徴とする。
【００１２】
上記側面において，前記軌道表示ステップは，前記ボールの所定時間先までを予測表示させるようにできる。
【００１３】
上記において，前記軌道演算ステップは，前記ボールの移動方向と移動速度と回転方向のうち少なくとも１つに基づいて前記軌道を演算するようにしてもよい。
【００１４】
また，前記プレイヤの入力操作に基づいて前記衝突が判定された場合において，前記コンピュータシステムに，前記入力操作の加速度に基づいて，前記ボールの移動方向と移動速度と回転方向のうち少なくとも１つを変更するパラメータ変更ステップとを更に実行させるようにしてもよい。
【００１５】
上記のいずれかにおいて，前記コンピュータシステムに，前記プレイヤの入力操作に基づいて前記衝突が起こる位置を判定する衝突位置判定ステップと，前記衝突位置を所定の形態で画面に表示する衝突位置表示ステップとを更に実行させるようにしてもよい。
【００１６】
さらに，上記において，前記ボールが前記所定の面に前記所定回数接した場合，前記ゲームを終了させるゲーム終了ステップを更に実行させる。
【００１７】
また，上記において，前記軌道表示ステップは，前記ボールの移動軌道を線または点群で表示するようにしてもよい。
【発明を実施するための最良の形態】
【００１８】
以下に図面に従い本発明の実施例を説明する。なお，実施例としてスカッシュを模擬するゲームを例にして説明するが本発明の適用は，かかるスカッシュに限定されるものではない。
【００１９】
図１は，本発明に適用されるゲーム装置として機能するコンピュータシステムの構成例の機能ブロック図である。各機能部は，バス１０を通してデータの授受を行う。
【００２０】
外部メモリあるいは，内部メモリとして表されるＲＯＭ２に格納されるゲームプログラムに従い，メインＣＰＵ１によりゲームが実行制御される。
【００２１】
このゲーム実行制御において，制御手段としてのメインＣＰＵ１により，ＲＯＭ２に格納されるオブジェクトデータに対し座標変換を行い，仮想三次元空間においてゲームプログラムに従い移動制御されるオブジェクトのデータが形成される。さらに，移動制御される仮想三次元座標を有するオブジェクトのデータは，メインＣＰＵ１により，表示装置５に表示されるべく二次元座標に透視変換される。
【００２２】
この際，レンダリングプロセッサ４は，この二次元座標に座標変換されるオブジェクトデータに対し，ゲームプログラムに従い，テクスチャメモリ６からテクスチャデータを読み出し，読み出したテクスチャを貼り付け，画像データとしてビデオメモリ７に描画する。
【００２３】
ビデオメモリ７に描画された画像データは，所定周期で読み出され，表示装置５に送られることにより，表示装置５に，ゲームプログラムに従い移動制御されるオブジェクトを含むゲーム画像が表示される。
【００２４】
かかるゲーム装置における基本的な動作に対し，本発明は，ＲＯＭ２に格納されるゲームプログラムに従い処理され，特に移動オブジェクト（スカッシュゲームにおけるボール）の予測移動軌道に情報を持たせて表示することに特徴を有する。
【００２５】
したがって，本願の対象とする発明の側面は，かかる移動オブジェクトの予測移動軌道に情報を持たせて描画を行うゲームプログラム及び，かかるゲームプログラムにより実行制御されるゲーム装置にある。
【００２６】
図１において，更に本発明の適用においてプレイヤにより画面上でスカッシュを行うキャラクタの移動を制御するために用いられる第１のコントローラと，プレイヤがスカッシュを行うキャラクタの移動オブジェクトであるボールをヒットするタイミングを制御する第２のコントローラからの信号を受信する無線受信器８を備えている。
【００２７】
無線受信器８は，第１のコントローラ及び第２のコントローラで生成された情報を無線，例えばブルーツース(Bluetooth:登録商標)を用いて受信する。
【００２８】
さらに，図１において本発明とは直接関係しないが，他の外部機器と接続されるインタフェース部９がバス１０に接続されている。
【００２９】
図２は，かかる無線受信器８，及びプレイヤにより操作される第１及び第２のコントローラ２０，２１の関係を説明する図である。
【００３０】
第１のコントローラ２０は，第２のコントローラ２１に有線で接続可能である。第２のコントローラ２１に無線機能例えば，上記のブルーツース機能を有し，第１のコントローラ２０で生成された情報と，第２のコントローラ２１で生成した情報を所定のフォーマットでゲーム装置本体３０に内蔵される無線受信器８に送信する。
【００３１】
かかる第１のコントローラ２０及び第２のコントローラ２１として，例えば，任天堂株式会社により提供されるWii(登録商標)と称されるリモコンシステムが使用可能である。
【００３２】
第１のコントローラ２０及び第２のコントローラ２１は，ゲーム装置本体３０とは，分離されているので，プレイヤは，第１のコントローラ２０及び第２のコントローラ２１を両手で持って自由に操作することが可能である。
【００３３】
図２において，ゲーム装置本体３０に表示装置５が接続され，スカッシュゲームを描画している表示画面５０が示されている。
【００３４】
ゲーム装置本体３０のインターフェース部８（図２では図示されていない）に有線で第１のコントローラ２０が接続されている。また，第２のコントローラ２１は，ゲーム装置本体３０の無線受信器９と無線接続されている。
【００３５】
ここで，第１のコントローラ２０及び第２のコンとローラ２１の詳細について更に図３〜図５により説明する。
【００３６】
図３は，第１のコントローラ２０を説明する図である。図示されるようにジョイスティック２００を有し，これを上下左右に傾けることが可能である。ジョイスティック２００を傾けた方向を示す信号を，インターフェース部８を通してメインＣＰＵ１が受信する。そして，メインＣＰＵ１は，受信した信号に対応して図３の右側に表示されるようにキャラクタ４０の表示画面５０に表示される２次元座標位置を変更する。
【００３７】
これにより，キャラクタ４０は，表示装置５の表示画面５０において，第１のコントローラ２０の操作方向に対応して移動表示される。
【００３８】
一方，図４は，第２のコントローラ２１について説明する図である。第２のコントローラ２１は，種々の機能を有しているが，本発明の適用において使用される機能は，第２のコントローラ２１が，プレイヤによって振られる際の加速度とその方向を検知して出力する機能である。
【００３９】
かかる機能を有するために，第２のコントローラ２１には３軸の加速度センサーが搭載されている。３軸の加速度センサーは，３次元空間における加速度，傾き，振動をＸ，Ｙ，Ｚ軸の３軸成分に分けて検出するセンサーとして一般に知られている。
【００４０】
例えば，中央に錘部を有し，錘部をＸ，Ｙ軸方向のビームと周辺枠で支え，且つビームに形成された歪検出素子（ピエゾ抵抗素子）の出力の組み合わせで，Ｘ，Ｙ，Ｚ軸の３軸成分に分けて検出することができる。
【００４１】
第２のコントローラ２１は，この検出された出力を更に所定のフォーマットにより無線でゲーム装置本体３０の無線受信器９に送信する無線機能を有している。
【００４２】
図４において，第２のコントローラ２１を矢印方向に振ると，加速度センサーによりコントローラ２１の降りが検知され，ゲーム装置本体３０側に送信される。したがって，メインＣＰＵ１は，プログラムに従って，コントローラ２１の降りの検知信号に基づいて，キャラクタ４０の持つラケット４１を振るような画像を生成して，表示画面５０に表示する。
【００４３】
さらに，制御として，コントローラ２１の加速度センサーによって，コントローラ２１の降りの強さが検知されるので，この情報もゲーム装置本体３０に送ることができる。これにより，後に説明するようにラケット４１により打たれるボールの打ち出し強さが制御される。
【００４４】
また，制御として，図５に示すように，ボールの飛んでくる方向Ａに対する，ラケットの打ち出すタイミングに応じて，ボールが打ち返される方向Ｂが制御される。
【００４５】
図５（１）は，ラケット４１を振るタイミングが早いときにボールが打ち返される方向Ｂであり左方向に打ち出される。図５（２）は，ラケット４１を振るタイミングが中間のときのボールが打ち返される方向Ｂであり，ボールの飛んでくる方向Ａと同じ方向に向かう。また，図５（１）は，ラケット４１を振るタイミングが遅いときのボールが打ち返される方向Ｂであり，右方向に打ち出される。
【００４６】
かかる基本的な制御に基づいて実行される本発明の移動オブジェクト（スカッシュにおけるボール）の移動軌道の表示制御の詳細を説明する前に，本発明に従う移動オブジェクトの移動軌道の表示制御の概略を説明しておく。
【００４７】
図６Ａ〜図６Ｃ及び，図７は，ゲームプログラムに従いメインＣＰＵ１により表示装置５に表示制御されるスカッシュゲームの表示画面例（その１〜その４）である。
【００４８】
図６Ａ〜図６Ｃ及び，図７において，背面壁を除いて，前面壁Ｗ１，左右壁Ｗ２，Ｗ３及びフロア（床面）Ｗ４のフィールドが表示されている。プレイヤにより移動制御されるキャラクタ４０ｂと，コンピュータ側によりプログラムに従い移動制御される，競技相手のキャラクタ４０ａが表示されている。なお，二人のプレイヤ間で競技を行う場合は，キャラクタ４０ａは，キャラクタ４０ｂを操作するプレイヤと異なるプレイヤにより移動制御される。
【００４９】
さらに，図６Ａ〜図６Ｃに示す表示画面の画像は，キャラクタ４０ａがボール５０をラケット４１aでヒットしたときのボールの予想移動軌跡を表示している。
【００５０】
図６Ａは，ラケット４１aでヒットされた後，前面の壁Ｗ１に当たり，ついで，床面Ｗ４に落下して２バウンドして更に床面Ｗ４を転がる状態の，あるフレーム時点の予想移動軌跡６０，６１を表示している。
【００５１】
図６Ｂは，図６Ａに続くフレームの表示画面の画像であり，ボール５０が床面Ｗ４でバウンドしたときのタイミング以降の予想移動軌跡６０，６１を表示している。このとき，ボール５０をヒットする番のプレイヤ４０ｂによって，ラケット４１ｂを操作する入力操作があり，キャラクタ４０ｂの位置に基づくヒット可能範囲７０に，ボール５０があるか否かを判定して，範囲内であった場合に予想ヒット点５１を表示する。
【００５２】
図６Ｃは，図６Ｂに続くフレームの表示画面の画像であり，ボール５０が床面Ｗ４でバウンドして，より高くバウンドした状態であり，予想ヒット点５１にほぼ到達した状態である。このとき，プレイヤの操作するキャラクタ４０ｂの持つラケット４１ｂがボールの予想ヒット点５１により近づいた状態を表示している。
【００５３】
また，図６Ａ〜図６Ｃにおいて，予想移動軌跡６０は，床面Ｗ１に２バウンドする前までの移動軌跡を示し，２バウンド以降の移動軌跡は，ゲームルールにおいて，失策と判定されるので，予想移動軌跡６０とは，異なる線の太さ，あるいは，線の色等で区別して上記表示画面に表示される。
【００５４】
さらに，予想移動軌跡６０，６１は，ボール５０をラケットでヒットした時点から例えば，２秒後までの予想移動軌道が示される。
【００５５】
図７は，ボール５０をヒットした後の表示画面に表示される画像の例である。
【００５６】
ヒットすべき順番にあるキャラクタ４０ｂのラケット４１ｂが操作されると，ボール５０が予想ヒット点５１でヒットされ，ヒットした点を出発点５２として新たな予想移動軌跡６０ａ，６１ａが形成され，表示される。
【００５７】
このときの新たな予想移動軌跡６０ａ，６１ａは 前面壁Ｗ１当たった後，ノーバウンドで，背面壁に当たり，ついで背面壁から床面Ｗ４で第１のバウンドをするまで予想移動軌跡６０ａと，更に２バウンド以降の予想移動軌跡６１ａが，示されている。
【００５８】
先に説明したように，２バウンド以降の予想移動軌跡６１ａは，第１のバウンドをするまで予想移動軌跡６０ａと異なる表示（軌跡表示の色，又は線の太さ等，表示・非表示による区別による相違）が行われる。さらに，ボールがヒットされた時点から所定の時間経過例えば，２秒後以降の移動軌跡表示は行われない。
【００５９】
図８は，ボール軌跡の一例を拡大して表示した図である。複数のボールを並べて紙面の手前側Ｐ１から奥行き方向に向かうボール軌跡を示している。ボールの２回目のバウンド時点Ｐ２以降の表示を色で変えている。また，ボール同士の間隔で，ボール移動の早さを表現している。
【００６０】
上記のように本発明は，ボール５０をヒットした時点から所定時間経過までのボールの予想移動軌道を表示し，且つ，負けとなる床面Ｗ４にツーバウンド以降のボール予想移動軌道の表示を変えるように制御している。
【００６１】
これにより，激しく動くボールの行方を予測でき，且つルールに対応して，ボールを打ち返すべきタイミングを推測することを可能とするので，該当のスポーツになじみの無いプレイヤにとっても容易にゲームを楽しむことができる。
【００６２】
図９，図１０は，上記した本発明の移動オブジェクトの予測移動軌道に情報を持たせて表示するコンピュータプログラム手順の詳細を説明する動作フローである。
【００６３】
先ず図９において，スカッシュゲームが開始されると，サーブを打つプレイヤに対応する第２のコントローラ２１（図９においては，ラケット４１に相当し，デバイスと略称する）の操作をメインＣＰＵ１が検出する（ステップＳＴ１）。
【００６４】
デバイスに対する操作の検出は，メインＣＰＵ１によりデバイスの３軸（Ｘ，Ｙ，Ｚ）重力値を一定時間（１秒）ＲＡＭ３に記憶する。そして，一定時間におけるデバイスの加速度の変化と，静止時からの重力方向の変化を検出して，デバイスが前方向に振られたとみなされたと判断する。
【００６５】
この加速度と重力方向の検出は，ともに加速度センサーの３軸重力値の変化を基に計算される。また，加速度センサーを用いない場合は，従来のコントローラ等を用い，プレイヤのボタン入力操作による入力信号の変化を検出し，検出されたときをデバイスが操作されたと判断する（以下の「デバイス操作」も同様である）。
【００６６】
ステップＳＴ１で，デバイス操作を受け付けると，並列して処理されるボールの軌道を計算するボール軌道処理から所定時間経過（例えば，２秒後）までのボール軌道データを受け取り，画面に軌道を表示させる（ステップＳＴ２）。
【００６７】
このとき，ボール軌道が床面（コート）Ｗ４にバウンドした回数が２回以上になった場合は，それまでのボール軌道の色と異ならせて表示する。あるいは，点群から線，線から点群，２バウンド後は表示しない等の対応処理が可能である。これは，ボール５０が壁面Ｗ２，Ｗ３にもバウンドしてボールの軌道が変化しやすいため，プレイヤにどの場所，どのタイミングで打ったらよいかを分かりやすくさせるためである。
【００６８】
なお，上記ボール軌道処理は，ボール５０の３軸（Ｘ，Ｙ，Ｚ）速度パラメータ（ボールに回転がある場合は回転パラメータも含む）と，４壁面や床面（コート）に跳ね返る場合は，ボールの弾性係数を基にして２秒後までのボール軌道を毎フレーム計算する。また，弾性係数はボールだけでなく，４壁面や床面（コート）に持たせても良いし，ボールの３軸速度パラメータは，速度と方向（ベクトル）で，別々に持たせても良い。
【００６９】
このゲームは，４壁面と床面（コート）は全て座標軸方向に沿っている。
【００７０】
上記のボール軌道処理（ステップＳＴ２）の詳細は図１０の動作フローに示すので後に再度説明する。
【００７１】
ついで，ボール５０が２バウンド，もしくは前面の壁Ｗ１にノーバウンドで当たらない場合等，ルール上ではゲーム終了となる表示がされた場合は，ゲームを終了させる（ステップＳＴ３）。
【００７２】
ステップＳＴ３でゲーム終了とならなかった場合は，ボール５０を打つべきプレイヤがデバイス操作をしたか検出する（ステップＳＴ４）。デバイス操作が検出されなかった場合はステップＳＴ２に戻る（ステップＳＴ４，ＮＯ）。
【００７３】
ＳＴ４でデバイス操作が検出された場合（ステップＳＴ４，ＹＥＳ）は，この時点からのデバイス操作による加速度と重力方向（３軸重力値）の変化をバッファＲＡＭ３に記録し始める（ステップＳＴ５）。
【００７４】
従来のコントローラを使用する場合は，十字キーやラケットを振るボタン等の入力を契機にＲＡＭ３に記録し始める。
【００７５】
キャラクタ４０とボール５０の位置関係を計算して，キャラクタ４０がボール５０を打てる範囲にいるかを検出する（ステップＳＴ６）。この判定は先に説明したように所定の領域（図６Ｂのヒット可能範囲７０内の領域）に，ボール５０が存在するか否かで判定する。
【００７６】
ステップＳＴ６でキャラクタ４０が打てる範囲にいなかった場合，空振りモーションを描画し，その後ステップＳ２に戻る（ステップＳＴ７，ＹＥＳ）。
【００７７】
キャラクタがボールを打てる範囲にいる場合は，キャラクタとボールの位置関係からスイングモーションを決定して表示を開始する（ステップＳＴ８）。
【００７８】
ステップＳＴ６における位置関係からボール打点を算出し，プレイヤに軌道が変わる部分を教えるため所定の形態（例えば，画面上で，軌道表示６０よりも拡大した赤い球５１：図６Ｂ参照）で表示する（ステップＳＴ９）。
【００７９】
ステップＳＴ８で開始したスイングモーション表示で，ボールとラケットとが衝突するかの判定処理を待つ（ステップＳＴ１０）。
【００８０】
ステップＳＴ１０でボールとラケットとの衝突判定が得られると，ステップＳＴ５でバッファＲＡＭ３に記憶を始めた最新２５フレーム分の重力と加速度の変化量を基に，ボールの３軸（Ｘ，Ｙ，Ｚ）速度パラメータと，回転パラメータを変更する（ステップＳＴ１１）。
【００８１】
加速度変化が大きい場合にはボールの速度を速くしたり，図５に示したように衝突タイミングの早さによってボールの３軸速度（ＸとＹ）の比率を傾けて，左右方向に打ち分けることができる。
【００８２】
さらに，衝突に近い時のデバイス操作を優先して反映させるため，２５フレーム中の新しい値から順に，ボールに与える影響度を高く評価する。
【００８３】
デバイス操作の変化（加速度の大小など）は補正して，なるべくゲームが続くようにする。
【００８４】
また，ボールを打つ方向も前面の壁Ｗ１の中央に寄るように補正している。
【００８５】
従来のコントローラの場合も同様に，２５フレーム分の十字キーの値を基にボールを打つ方向を決定したり，ラケットを振るボタンの入力時間や入力パターンで，ボールを打つ強さを決めることができる。
【００８６】
ついで，ボールとラケットの衝突表示が終了したかを判定する（ステップＳＴ１２）。
ボールとラケットの衝突表示が終了すると（ステップＳＴ１２），バウンド回数のリセットと，ボールとラケットの衝突を検出するキャラクタの交代を行い，ステップＳＴ２に戻り，上記の処理が継続される（ステップＳＴ１３）。
【００８７】
つぎに，図１０の動作フロー図に従い，ステップＳＴ２のボール軌道処理の詳細を説明する。
【００８８】
ボール軌道描画処理開始すると，ボールの，あるフレームの状態を示す一連のデータ（ボール情報として１フレーム分の位置，速度，回転，描画色等の情報を持つ）として，現在時点の状態を持つデータ（ボール情報Ｃ）が用意されている必要がある。
【００８９】
まず，各種パラメータを初期化する。各種パラメータの初期化として，ボール軌道描画処理の為に確保する必要があるパラメータは以下の４種である。
【００９０】
軌道表示バッファ
処理フレーム数カウンタ（Ｎ）
バウンド回数カウンタ（Ｂ）
ボール軌道描画処理用のワークメモリ（ボール情報Ａ）
これら４種を，以下のように初期化する。なお，上バッファ及びカウンタは，ＲＡＭ３に生成することができる。
i 軌道表示バッファを初期化する。
【００９１】
軌道表示バッファは，ボール情報を，軌道予測を行うフレーム数分だけ複製して保持することができる。ここで軌道表示バッファ全てを一旦消去する。
ii 処理フレーム数カウンタを初期化する（ステップＳＴ１４）
Ｎ＝１  とする。
iii  バウンド回数カウンタを初期化する。
【００９２】
Ｂ＝０  とする。
iv  ボールの，現在時点の状態を複製する。
【００９３】
現在時点のボール状態のデータ（ボール情報Ｃ）を，ボール軌道描画処理用のワークメモリ（ボール情報Ａ）にコピーする。
【００９４】
処理フレーム数カウンタと，軌道予測を行うフレーム数と比較する。処理フレーム数カウンタが，既に軌道予測を行うフレーム数を超えていれば（ステップＳＴ１５，ＹＥＳ），生成された軌道表示バッファの内容を元に軌道を描画し（ステップＳＴ２６），処理を終える（図９のフローに戻る）。
【００９５】
処理フレーム数カウンタが，まだ軌道予測を行うフレーム数を超えていなければ（ステップＳＴ１５，ＮＯ），次のように，ボール情報Ａを評価・更新し，ボール情報Ａの状態を１フレーム分未来方向に進める。
【００９６】
このために，ボール情報Ａの評価・更新としてつぎの処理を行う。
【００９７】
i  初期化処理として，ボールと地形との干渉状態（床面に触れた，壁に触れた，など）を示すフラグをクリアする。
【００９８】
ii  ボール情報Ａのうち，位置を，速度・回転を基に，１フレーム分移動させて，位置を更新する（ステップＳＴ１６）。
【００９９】
iii  ついで，ボール情報Ａのうち，速度・回転を，空気抵抗・重力などのパラメータに基づいて，１フレーム分変化させる。
【０１００】
iv  反射処理として，ボール情報Ａのうち，ボール位置が，壁面または床面に接していれば（ステップＳＴ１７，ＹＥＳ）），ボールのパラメータ（弾性係数等）と壁のパラメータに基づき，ボール情報Ａの 位置，速度，回転を変更し（ステップＳＴ１８），Ｎフレーム後のボール位置を再計算する（ステップＳＴ１９）。
【０１０１】
また，触れた面に応じて，ボールと地形との干渉状態を示すフラグを設定する。
【０１０２】
すなわち，更新されたボール情報Ａが床面Ｗ４に触れていれば（床面に触れたことを示すフラグが立っていれば）（ステップＳＴ２０，ＹＥＳ），バウンド回数カウンタをインクリメントする（ステップＳＴ２１）。
【０１０３】
バウンド回数カウンタが，２回（ゲームのルール上，ミスと見なされるバウンド回数）に達しているかを評価し（ステップＳＴ２２），既に達していれば（ステップＳＴ２２，ＹＥＳ），ボール情報Ａが保持する描画色を，Ｎフレーム後のボール位置でミスになることを示す色（例えば，紫）で表示するように軌道表示バッファに設定保存する（ステップＳＴ２３）。
【０１０４】
反対に，未だ達していなければ，ボール情報Ａが保持する描画色を，Ｎフレーム後のボール位置でミスにならないことを示す色（例えば，赤）で表示するように軌道表示バッファに設定する（ステップＳＴ２４）。
【０１０５】
ついで，処理フレーム数カウンタのカウントＮをし（ステップＳＴ２５），更にステップＳＴ１５に戻り，上記処理を繰り返す。
【０１０６】
上記実施例に従い説明したうように，本発明によりスカッシュのような複雑なルールで且つ激しいボール（移動体オブジェクト）の動きをするスポーツをゲームで模擬する場合に，移動オブジェクトの予測軌道に情報を持たせて表示することができる。
【０１０７】
すなわち，予測軌道の表示がない場合は，プレイヤに床面（コート）と壁面のうち，どちらの面でボールがバウンドしたかを知らせることが困難であるが，予測軌道を表示することにより，プレイヤに視覚的に知らせることができる。
【０１０８】
また，そのことにより，ルール上で定められているバウンド数以内で，ボールを打つタイミングと位置を知らせることができ，ゲームの難易度を抑えることができる。よって，プレイヤにラリーを続かせることができ，ルールを熟知していないプレイヤをより楽しませることができる。
【０１０９】
これにより，ルールに熟知していないプレイヤに対しても容易にゲームを楽しむことが可能なゲームシステムを提供することができる。
【図面の簡単な説明】
【０１１０】
【図１】本発明に適用されるゲーム装置として機能するコンピュータシステムの構成例の機能ブロック図である。
【図２】インターフェース部と，無線受信器及び，プレイヤにより操作される第１及び第２のコントローラの関係を説明する図である。
【図３】第１のコントローラを説明する図である。
【図４】第２のコントローラについて説明する図である。
【図５】ラケットの打ち出すタイミングに応じて，ボールが打ち返される方向の制御を説明する図である。
【図６Ａ】ゲームプログラムに従いメインＣＰＵ１により表示装置５に表示制御されるスカッシュゲームのあるフレームの表示画面例（その１）である。
【図６Ｂ】図６Ａのフレームに続くフレームの表示画面例（その２）である。
【図６Ｃ】図６Ｂのフレームに続くフレームの表示画面例（その３）である。
【図７】ゲームプログラムに従いメインＣＰＵ１により表示装置５に表示制御されるスカッシュゲームのボールをヒットした後の表示画面例（その４）である。
【図８】ボール軌跡の一例を拡大して表示した図である。
【図９】本発明の移動オブジェクトの予測軌道に情報を持たせて表示するコンピュータプログラム手順の詳細を説明する動作フローである。
【図１０】図９の動作フロー中のステップＳＴ２（ボール軌道処理）の詳細を説明するフローである。
【符号の説明】
【０１１１】
１  メインＣＰＵ
２  ＲＯＭ
３  ＲＡＭ
４  レンダリングプロセッサ
５  表示装置
６  テクスチャメモリ
７  ＶＲＡＭ
８  インターフェース部
９  無線受信器
１０  バス
２０  第１のコントローラ
２００  ジョイスティック
２１  第２のコントローラ
３０  ゲーム装置本体
４０  キャラクタ
４１  ラケット
５０  表示画面
６０  予想移動軌道
【図１】
2008119211.tif 000003
【図２】
2008119211.tif 000004
【図３】
2008119211.tif 000005
【図４】
2008119211.tif 000006
【図５】
2008119211.tif 000007
【図６Ａ】
2008119211.tif 000008
【図６Ｂ】
2008119211.tif 000009
【図６Ｃ】
2008119211.tif 000010
【図７】
2008119211.tif 000011
【図８】
2008119211.tif 000012
【図９】
2008119211.tif 000013
【図１０】
2008119211.tif 000014