(57)【要約】  【構成】ゲーム装置１２はＣＰＵ３６を含み、仮想ゲーム空間内を移動する仮想カメラから見た場面をモニタ３４に表示する。モニタ３４に表示すべき画像の縦横比率が取得され、縦横比率に基づいて仮想カメラの視野が設定され、さらに、縦横比率に基づいて仮想カメラの移動速度が設定される。たとえば、画像の縦に対する横の比率が大きいほど、横方向の視野が広くされるので、仮想カメラの横方向の移動速度が小さくされる。  【効果】仮想カメラの移動速度を画面比率に応じて適切に設定でき、画像を見易くすることができる。【選択図】  図２
2008119344.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間内を移動する仮想カメラから見た場面を表示手段に表示するゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
前記表示手段に表示すべき画像の縦横比率を取得する画像比率取得ステップ、
前記縦横比率に基づいて前記仮想カメラの移動速度を設定する移動速度設定ステップ、
前記移動速度に基づいて前記仮想カメラの移動を制御する移動制御ステップ、および
前記移動制御ステップによって制御された前記仮想カメラの視野の範囲を示す画像を生成する画像生成ステップを前記コンピュータに実行させる、ゲームプログラム。
【請求項２】
前記移動速度設定ステップは、前記仮想カメラの前記移動速度として、回り込み速度を前記縦横比率に基づいて設定し、
前記移動制御ステップは、前記仮想カメラの回り込みを前記回り込み速度に基づいて制御する、請求項１記載のゲームプログラム。
【請求項３】
前記縦横比率に基づいて異なる横方向の前記視野を設定する視野設定ステップをさらに前記コンピュータに実行させ、
前記移動速度設定ステップは、前記仮想カメラの横方向の移動速度を前記縦横比率に基づいて設定する、請求項１または２記載のゲームプログラム。
【請求項４】
前記移動速度設定ステップは、前記画像の縦に対する横の比率が大きいほどその値が小さくなるように前記横方向の移動速度を設定する、請求項３記載のゲームプログラム。
【請求項５】
前記移動速度設定ステップは、前記画像比率取得ステップによって前記縦横比率の取得された前記画像および基準画像の縦の比率を同じにした場合の、前記画像および前記基準画像の横の比率を算出する横比率算出ステップを含み、前記横比率算出ステップによって算出された２つの前記横の比率に基づいて前記横方向の移動速度を算出する、請求項４記載のゲームプログラム。
【請求項６】
前記移動速度設定ステップは、前記縦横比率に基づいて設定される前記横方向の移動速度を前記仮想カメラの縦方向の角度に基づいて補正する補正ステップをさらに含む、請求項３ないし５のいずれかに記載のゲームプログラム。
【請求項７】
前記縦横比率に基づいて前記仮想カメラの前記視野を規定する画角を設定する視野設定ステップをさらに前記コンピュータに実行させる、請求項１ないし６のいずれかに記載のゲームプログラム。
【請求項８】
仮想空間内を移動する仮想カメラから見た場面を表示手段に表示するゲーム装置であって、
前記表示手段に表示すべき画像の縦横比率を取得する画像比率取得手段、
前記縦横比率に基づいて前記仮想カメラの移動速度を設定する移動速度設定手段、
前記移動速度に基づいて前記仮想カメラの移動を制御する移動制御手段、および
前記移動制御手段によって制御された前記仮想カメラの視野の範囲を示す画像を生成する画像生成手段を備える、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はゲームプログラムおよびゲーム装置に関し、特にたとえば仮想カメラの移動速度を制御する、ゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
従来、ゲームの進行に応じて仮想空間内の視点の移動を制御する技術が知られている。特許文献１に記載された技術では、オブジェクトと仮想視点との距離に応じて仮想視点の移動速度が制御される。具体的には、モニタに表示される仮想上の炎（オブジェクト）を消火するゲームにおいて、ターゲットとなる炎の近くでは仮想視点の移動速度が遅くなるように制御される。また、仮想視点は所定のパス（経路）に沿って移動され、その移動速度はターゲットの有無に拘わらずパスの形状に応じて変化され、たとえば、直線状のパスでは移動速度の最大値が大きく、曲線上又はその付近では移動速度の最大値が小さくされる。
【０００３】
また、特許文献２に記載された技術では、遊戯者の操作するキャラクタの状況に応じて視点の位置が制御される。具体的には、視点は自動車（キャラクタ）の後方でかつ多少上方に設定され、ワールド座標系で設定された指定位置に沿って移動される。指定位置はキャラクタに最も近い位置が０ポイントであり、最も離れた位置が５００ポイントである。視点条件を満足するか否かによって視点の指定位置が設定されており、視点条件が満足されたときに、視点の現在位置が指定位置と異なる場合には、１フレーム当りのポイント数で設定された移動速度で視点は移動される。例えば、クラッシュの場合には、指定位置０ポイントへ速度４ポイント／フレームで視点は自動車に最接近され、障害物接近の場合には指定位置３５ポイントへ速度１０ポイント／フレームで視点は素早く自動車に接近され、スピンの場合には、指定位置３００ポイントへ速度３ポイント／フレームで視点は自動車から遠方位置に離される。
【０００４】
さらに、特許文献３に記載された技術では、プレイヤの操作するバイクの後方斜め上方を基準位置としてこのバイクに追従させるように視点が設定され、バイクの速度成分を制御関数として視点の位置が移動される。具体的には、バイクの前方（Ｚ軸方向）への速度が増すと、視点がバイクから離れる方向に移動される。また、バイクが上下方向（Ｙ軸方向）への速度成分を持つ場合には、視点はそのＹ軸方向への速度成分のベクトル方向とは逆方向に移動される。さらに、バイクが横方向（Ｘ軸方向）へ所定の速度で移動する場合には、バイクの横方向への速度成分とは逆方向に視点が移動される。
【特許文献１】特開２０００−３２２５９１号公報
【特許文献２】特開平１１−２０７０２９号公報
【特許文献３】特開平１１−１４６９７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述のような各特許文献に開示されたゲーム装置では、オブジェクトの状態やゲーム場面に応じて視点の移動速度が制御される。しかしながら、ディスプレイに表示される画面の縦横の比率に応じて視点の移動速度が制御されるものではなかった。一般に、画面の縦横比率として、４：３（ノーマル）や１６：９（ワイド）等があるが、１６：９の画面は４：３の画面に比べて縦に対する横の比率が大きいため、画面の幅方向の情報量が多くなる。そのため、１６：９の画面では、４：３の場合と同じ速度で視点を移動（特に横方向に回り込むような移動）させると、画面の端の部分の画像がより速く動いてしまい、見難くなるという問題があった。
【０００６】
それゆえに、この発明の主たる目的は、新規な、ゲームプログラムおよびゲーム装置を提供することである。
【０００７】
この発明の他の目的は、画面比率に応じて視点の移動速度を設定することのできる、ゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００８】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために後述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【０００９】
第１の発明は、仮想空間内を移動する仮想カメラから見た場面を表示手段に表示するゲーム装置のコンピュータにおいて実行されるゲームプログラムである。ゲームプログラムは、画像比率取得ステップ、移動速度設定ステップ、移動制御ステップ、および画像生成ステップをコンピュータに実行させる。画像比率取得ステップは、表示手段に表示すべき画像の縦横比率を取得する。移動速度設定ステップは、縦横比率に基づいて仮想カメラの移動速度を設定する。移動制御ステップは、移動速度に基づいて仮想カメラの移動を制御する。画像生成ステップは、移動制御ステップによって制御された仮想カメラの視野の範囲を示す画像を生成する。
【００１０】
第１の発明では、ゲームプログラムは、ゲーム装置（１２）のコンピュータ（３６、４２）において実行され、それによって、仮想空間内を移動する仮想カメラから見た場面が表示手段（３４）に表示される。画像比率取得ステップ（Ｓ３１）では、表示すべき画像の縦横比率が取得される。この取得された縦横比率に応じて仮想カメラのパラメータのうちの移動速度が設定される。つまり、移動速度設定ステップ（Ｓ１３）では、縦横比率に基づいて仮想カメラの移動速度が設定される。移動制御ステップ（Ｓ１９）では、設定された移動速度に基づいて仮想カメラの移動が制御され、したがって、画面比率に応じた速度で仮想カメラが移動される。そして、画像生成ステップ（Ｓ２１）では、移動された仮想カメラの視野の範囲を示す画像が生成される。
【００１１】
第１の発明によれば、表示すべき画像の画面比率に応じて仮想カメラの移動速度を変化させることができ、仮想カメラの移動速度を画面比率に応じて最適な速さに設定することができる。
【００１２】
第２の発明は、移動速度設定ステップは、仮想カメラの前記移動速度として、回り込み速度を縦横比率に基づいて設定し、移動制御ステップは、仮想カメラの回り込みを回り込み速度に基づいて制御する、第１の発明に従属するゲームプログラムである。
【００１３】
第２の発明では、仮想カメラが回り込む際の移動速度を画面比率に応じて変化させることができるので、仮想カメラが回り込むときに生成される画像を見易くすることができる。
【００１４】
第３の発明は、縦横比率に基づいて異なる横方向の視野を設定する視野設定ステップをさらにコンピュータに実行させ、移動速度設定ステップは、仮想カメラの横方向の移動速度を縦横比率に基づいて設定する、第１または第２の発明に従属するゲームプログラムである。
【００１５】
第３の発明では、視野設定ステップ（Ｓ３３−Ｓ３７）で縦横比率に基づいて異なる横方向視野を設定することができ、表示すべき画像の横方向の視野に応じて仮想カメラの横方向の移動速度を変化させることができるので、画像の横方向の情報量の違いに応じて仮想カメラの横方向の移動速度を適切に設定でき、したがって、仮想カメラが横方向に移動するときに表示される画像を見易くすることができる。たとえば、画面の比率としてノーマルかワイドかを選択するような場合には、画面の横方向の視野を異ならせることができるので、仮想カメラの横方向の移動速度を変えることによって画像の動きを見易くすることができる。
【００１６】
第４の発明は、移動速度設定ステップは、画像の縦に対する横の比率が大きいほどその値が小さくなるように横方向の移動速度を設定する、第３の発明に従属するゲームプログラムである。
【００１７】
第４の発明では、表示すべき画像の横方向の視野が広いほど仮想カメラの横方向の移動を遅くすることができる。たとえば、仮想カメラを回り込ませるときに横方向の視野が広いほど端の部分の画像が早く動いて見難くなるので、ワイド画面では横方向の回り込み速度をより小さくすることによって、画像の動きを見易くすることができる。
【００１８】
第５の発明は、移動速度設定ステップは、画像比率取得ステップによって縦横比率の取得された画像および基準画像の縦の比率を同じにした場合の、画像および基準画像の横の比率を算出する横比率算出ステップを含み、横比率算出ステップによって算出された２つの横の比率に基づいて横方向の移動速度を算出する、第４の発明に従属するゲームプログラムである。
【００１９】
第５の発明では、移動速度設定ステップは、基準画像と設定された画像の横の比率に基づいて仮想カメラの移動速度を算出する（Ｓ５５、Ｓ５７）ので、画面比率に適したカメラ移動速度を簡単な処理で算出することができる。
【００２０】
第６の発明は、移動速度設定ステップは、縦横比率に基づいて設定される横方向の移動速度を仮想カメラの縦方向の角度に基づいて補正する補正ステップをさらに含む、第３ないし第５の発明のいずれかに従属するゲームプログラムである。
【００２１】
第６の発明では、仮想カメラの縦方向の角度（Ｘ軸角度）が可変である場合には、補正ステップ（Ｓ５９）によって、仮想カメラのＸ軸角度に応じて横方向の移動速度をより適切な値に補正することができる。たとえば、仮想カメラが注視点を俯瞰したり、見上げたりもしくは水平方向から見たりするような場面に応じて適切な横方向の移動速度を設定することができる。
【００２２】
第７の発明は、縦横比率に基づいて仮想カメラの視野を規定する画角を設定する視野設定ステップをさらにコンピュータに実行させる、第１ないし第６の発明のいずれかに従属するゲームプログラムである。
【００２３】
第７の発明では、仮想カメラの視野を縦横比率に応じた画角によって規定することができ、したがって、画角に応じて適切な移動速度を設定することができる。画角を大きくすればするほど視野が広くなるので、仮想カメラを移動させたときに視野の変化が大きくなる。特に仮想カメラが回り込むときの視野の端部の画像の動きが見難くなる。たとえば、画角が大きいときは仮想カメラの移動速度を小さく設定することによって、可視範囲（撮影範囲）の変化を見易くすることができる。
【００２４】
第８の発明は、仮想空間内を移動する仮想カメラから見た場面を表示手段に表示するゲーム装置である。ゲーム装置は、画像比率取得手段、移動速度設定手段、移動制御手段、および画像生成手段を備える。画像比率取得手段は、表示手段に表示すべき画像の縦横比率を取得する。移動速度設定手段は、縦横比率に基づいて仮想カメラの移動速度を設定する。移動制御手段は、移動速度に基づいて仮想カメラの移動を制御する。画像生成手段は、移動制御手段によって制御された仮想カメラの視野の範囲を示す画像を生成する。
【００２５】
第８の発明は、上述の第１の発明のゲームプログラムと同様の効果を奏する。
【発明の効果】
【００２６】
この発明によれば、仮想カメラの移動速度を画面比率に応じて適切に設定することができる。したがって、仮想カメラの回り込みなどの移動の際に表示される画像を見易くすることができる。
【００２７】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００２８】
図１を参照して、この発明の一実施例であるゲームシステム１０は、ビデオゲーム装置１２を含む。ビデオゲーム装置１２は、ハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラム等を記憶した情報記憶媒体の一例である光ディスク１８が装着される。ハウジング１４の前面には複数の（実施例では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ２２をビデオゲーム装置１２に接続するためのものであり、この実施例では最大４つのコントローラ２２をビデオゲーム装置１２に接続することができる。
【００２９】
コントローラ２２には、その上面，下面，或いは側面などに、操作部（操作スイッチ）２６が設けられる。操作部２６は、たとえば２つのアナログジョイスティック，１つの十字キー，複数のボタンスイッチ等を含む。１つのアナログジョイスティックは、スティックの傾き量と方向とによって、プレイヤオブジェクト（プレイヤがコントローラ２２によって操作可能な動画オブジェクト）の移動方向および／または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックは、傾斜方向によって、仮想カメラの移動等を制御するために用いられる。十字スイッチは、アナログジョイスティックに代えてプレイヤオブジェクトの移動方向等を指示するために用いられる。ボタンスイッチは、プレイヤオブジェクトの動作を指示するために利用されたり、３次元画像の仮想カメラの視点を切り換えたり、プレイヤオブジェクトの移動速度の調節等に用いられたりする。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動等の制御に用いられる。
【００３０】
なお、この実施例ではコントローラ２２がそれと一体的に設けられるケーブル２４によってビデオゲーム装置１２に接続された。しかしながら、コントローラ２２は、他の方法、たとえば電磁波（たとえば電波または赤外線）を介してワイヤレスで、ビデオゲーム装置１２に接続されてもよい。また、コントローラ２２の操作部２６の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは１つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
【００３１】
ビデオゲーム装置１２のハウジング１４の前面であり、コネクタ２０の下方には、１つまたは複数の（この実施例では２つの）メモリスロット２８が設けられる。このメモリスロット２８にはメモリカード３０が挿入される。メモリカード３０は、光ディスク１８から読み出したゲームプログラム等をローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（ゲームの結果データまたは途中データ）を保存（セーブ）しておいたりするために利用される。
【００３２】
ビデオゲーム装置１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル３２を通してビデオゲーム装置１２にモニタ３４を接続する。このモニタ３４は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル３２は、ビデオゲーム装置１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に入力する。したがって、カラーテレビ（モニタ）３４の画面上にたとえば３次元（３Ｄ）のビデオゲームのゲーム画像が表示され、左右のスピーカ３４ａからゲーム音楽や効果音などのステレオゲーム音声が出力される。
【００３３】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまずビデオゲーム装置１２の電源をオンし、次いで、ユーザはビデオゲーム（もしくはプレイしたいと思う他のアプリケーション）をストアしている適宜の光ディスク１８を選択し、その光ディスク１８をビデオゲーム装置１２のディスクドライブ１６にローディングする。応じて、ビデオゲーム装置１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはビデオゲーム装置１２に入力を与えるためにコントローラ２２を操作する。たとえば、操作部２６のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作部２６の他のものを動かすことによって、動画オブジェクト（プレイヤオブジェクト）を異なる方向に移動させ、または３Ｄのゲーム世界におけるユーザの視点（仮想カメラ位置）を変化させることができる。
【００３４】
図２は図１実施例のビデオゲームシステム１０の電気的な構成を示すブロック図である。ビデオゲーム装置１２には、中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられる。このＣＰＵ３６は、コンピュータ或いはプロセッサなどとも呼ばれ、ビデオゲーム装置１２の全体的な制御を担当する。ＣＰＵ３６ないしコンピュータは、ゲームプロセッサとして機能し、このＣＰＵ３６には、バスを介して、メモリコントローラ３８が接続される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して接続されるメインメモリ４０の書込みや読出しを制御する。このメモリコントローラ３８にはＧＰＵ(Graphics Processing Unit) ４２が接続される。
【００３５】
ＧＰＵ４２は、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィクスコマンド（作画命令）を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３Ｄのゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種オブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう。）の回転，移動，変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャを貼り付けるなどの画像生成処理を施す。したがって、ＧＰＵ４２によって、ゲーム画面上に表示すべき３Ｄ画像データが作成され、その画像データがフレームバッファ４８内に記憶される。２Ｄゲームを実行する際には、ゲーム処理によって生成された２次元画像をテクスチャとして、ゲーム空間内の所定位置の矩形領域に貼り付け、当該領域を所定の仮想カメラから見た画像をフレームバッファ４８に記憶することによって、３Ｄ処理によって２Ｄゲーム画像を表示することが可能である。
【００３６】
なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００３７】
フレームバッファ４８は、たとえばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。具体的には、フレームバッファ４８は、１画素（ピクセル）毎に、画像の色情報（画素値）を順序立てて記憶している。ここで、色情報は、Ｒ，Ｇ，Ｂ，Ａについてのデータであり、たとえば、８ビットのＲ（赤）データ、８ビットのＧ（緑）データ、８ビットのＢ（青）データおよび８ビットのＡデータである。なお、Ａデータは、いわゆるアルファデータやマスクデータとして利用されるデータであり、本実施例ではアルファチャンネルすなわち透明から不透明までの透明度を表すために当該ピクセルに重ねる色とのブレンド率を示すデータとして利用される。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上に３Ｄのゲーム画像が表示される。
【００３８】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素数×１画素当たりの奥行きデータのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行きデータ（Ｚ値）を記憶するものである。
【００３９】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよく、また、これらはＧＰＵ４２の内部に設けられてもよい。
【００４０】
メモリコントローラ３８はまた、ＤＳＰ(Digital Signal Processor)５２を介して、オーディオ用のＲＡＭ（以下、「ＡＲＡＭ」という。）５４に接続される。したがって、メモリコントローラ３８は、メインメモリ４０だけでなく、サブメモリとしてのＡＲＡＭ５４の書込みおよび／または読出しを制御する。
【００４１】
ＤＳＰ５２は、サウンドプロセッサとして働き、メインメモリ４０に記憶されたサウンドデータ（図示せず）を用いたり、ＡＲＡＭ５４に書き込まれている音波形データ（図示せず）を用いたりして、ゲームに必要な音、音声或いは音楽に対応するオーディオデータを生成する。
【００４２】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に接続される。コントローラＩ／Ｆ５６は、ビデオゲーム装置１２に接続されるコントローラ２２のためのインタフェースであり、コントローラ２２の操作部２６の操作信号または操作データを、メモリコントローラ３８を通してＣＰＵ３６に与える。ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢＡピクセル値）をＡＶケーブル３２（図１）を介してモニタ３４に与える。
【００４３】
外部メモリＩ／Ｆ６０は、ビデオゲーム装置１２の前面に挿入される外部メモリカード３０をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード３０にデータを書込み、またはメモリカード３０からデータを読み出すことができる。オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してＤＳＰ５２から与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３４のスピーカ３４ａに与える。
【００４４】
そして、ディスクＩ／Ｆ６４は、ディスクドライブ１６をメモリコントローラ３８に接続し、したがって、ＣＰＵ３６がディスクドライブ１６を制御する。このディスクドライブ１６によって光ディスク１８から読み出されたプログラムやデータが、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００４５】
このゲームシステム１０では、仮想ゲーム空間内を移動する仮想カメラから見た場面（シーン）がモニタ３４に表示される。ビデオゲーム装置１２では、モニタ３４に表示すべきゲーム画像（ゲーム画面）の縦横比率を示す画面比率が取得されて、当該画面比率に応じて仮想ゲーム空間を撮影するための仮想カメラの移動速度が変化される。
【００４６】
この実施例のようにゲームシステム１０が家庭用ゲーム装置として実現される場合、ビデオゲーム装置１２に接続されるモニタ３４は各家庭で異なり、モニタ３４の画面の縦横の比率はたとえば４：３であったり１６：９であったりする。ゲームシステム１０がパーソナルコンピュータ、携帯電話機または携帯情報端末等の形態で実現される場合もまた同様に、各機器の表示装置に応じて画面の縦横の比率は異なるものとなる。このゲームシステム１０では、画面に表示されるゲーム画像の縦横の比率の違いを考慮して、仮想カメラの視野が設定され、つまり、仮想ゲーム空間の表示範囲（仮想カメラによる可視範囲ないし撮影範囲）が設定される。しかし、単に表示範囲を表示すべきゲーム画像の比率に合わせて設定しただけでは、仮想カメラの移動を伴う場面では、ゲーム画像が見難くなってしまうおそれがある。たとえば、ゲーム制作者が縦横比率４：３のゲーム画像を前提にして仮想カメラの移動速度を決めた場合において、当該移動速度で仮想カメラが横方向に回り込みながら縦横比率１６：９のゲーム画像が生成されると、当該ゲーム画像の端部の動きが４：３の場合と比べて速くなり見難くなってしまう。そこで、ゲーム画像に画面比率の違いによる見難さを生じさせないために、この実施例では、画面比率に応じて仮想カメラの移動速度が設定される。
【００４７】
図３にはメインメモリ４０のメモリマップの一例が示される。メモリマップはプログラム記憶領域７０およびデータ記憶領域７２を含む。ゲームプログラムおよびデータの一部は、光ディスク１８から一度に全部または必要に応じて部分的にかつ順次的に読み出され、メインメモリ４０に記憶される。なお、図３にはメモリマップの一部のみが示されており、メインメモリ４０には処理に必要な他のプログラムおよびデータも記憶される。
【００４８】
記憶領域７４にはこの実施例の仮想ゲームのメインルーチンを処理するためのゲームメイン処理プログラムが記憶される。
【００４９】
記憶領域７６には画面比率取得プログラムが記憶される。このプログラムによって、モニタ３４に表示すべきゲーム画像の縦横比率を示す画面比率が取得される。この実施例では、メニュー画面で画面比率を設定するためのメニューが準備されており、プレイヤはコントローラ２２を用いて画面比率を入力することができる。たとえば、仮想ゲーム空間のシーンを示す画像がモニタ３４に全画面表示される場合には、メニュー画面ではノーマル画面（縦横比率４：３）とワイド画面（縦横比率１６：９）とが選択可能に表示されており、プレイヤは、ビデオゲーム装置１２に接続されるモニタ３４の画面がノーマル画面かワイド画面かに応じて画面比率を選択する。あるいは、メニュー画面では画面比率を示す数値を直接入力可能にしてもよい。なお、仮想ゲーム空間のシーンを示す画像がモニタ３４の画面中の一部に表示される場合には、当該画像の縦横比率がメニュー画面で設定可能にされる。
【００５０】
この画面比率のメニュー設定は、この実施例では、光ディスク１８に記憶されたプログラムではなく、メインメモリ４０に含まれるＲＯＭあるいは不揮発性メモリ（フラッシュメモリ等）に予め記憶されたメニュープログラムに従って実行される。メニュー画面で設定された画面比率はメインメモリ４０の不揮発性メモリの所定領域に記憶される。画面比率取得プログラムは、設定された画面比率を当該所定領域からデータ記憶領域７２の画面比率記憶領域９０に読み出す。他の実施例では、光ディスク１８にメニュープログラムを記憶しておいて、当該光ディスク１８から読み出したメニュープログラムに従って、プレイヤによる入力に基づいて画面比率が設定されるようにしてもよい。
【００５１】
記憶領域７８には画角設定プログラムが記憶される。この実施例では、上述のように、画面比率の違いを考慮し、仮想カメラの視野すなわち仮想ゲーム空間の撮影範囲が画面比率に応じて変化されるように決めている。この画角設定プログラムによって、画面比率に基づいて仮想カメラの画角（視野角）が設定される。設定された画角は、メインメモリ４０のカメラパラメータ記憶領域９２に記憶される。ワイド画面またはノーマル画面等のように、設定可能な画面比率が予め決められている場合には、たとえば、画面比率に対応付けた画角を示すテーブルが予め記憶され、当該テーブルを参照して画角が設定される。あるいは、画面比率が入力される場合には、基準となる画面比率（たとえば４：３）とそれに対応する画角を予め記憶しておいて、当該基準となる画面比率とその画角に基づいて、入力された画面比率に対応する画角が算出されてよい。
【００５２】
たとえば、ノーマル画面とワイド画面の視野の違いが図４に示される。図４（Ａ）は生成されるゲーム画像の一例を示し、図４（Ｂ）は仮想カメラの横方向の視野を規定する画角を示す。なお、図４（Ｂ）には仮想カメラ座標系（直交座標系）が示されており、Ｚ軸は仮想カメラの視線方向、Ｘ軸は仮想カメラの横方向、Ｙ軸は仮想カメラの縦方向を示す。画角αおよびβは、仮想カメラ座標系のＸＺ平面内の角度である。
【００５３】
図４（Ａ）に示すように、ワイド画面（１６：９のゲーム画像）とノーマル画面（４：３のゲーム画像）の縦方向の長さを同じにした場合、ワイド画面の横方向幅は、ノーマル画面のそれよりも広くなる。したがって、図４（Ｂ）に示すように、ワイド画面の横方向の視野（可視範囲ないし撮影範囲）は、ノーマル画面の横方向の視野よりも大きくすることができる。具体的には、ワイド画面の横方向の視野を規定する仮想カメラの横方向の画角βは、ノーマル画面の横方向の視野を規定する仮想カメラの横方向の画角αよりも大きくされる。なお、仮想カメラの縦方向の画角は同じにされる。画角が大きいほど視野が広くなるので、表示される情報量は画角が大きいほど多くなり、図４（Ａ）に示すように、ワイド画面の両端部には、ノーマル画面の場合には見えていなかったオブジェクトや背景などが表示される。仮想カメラを移動させるときには、画角が大きいほど表示範囲の変化が大きくなる。特に仮想カメラを横方向に回り込ませるときには、画角が大きいほど、ゲーム画像の横方向端部において表示される情報の変化が速くなる。
【００５４】
図３に戻って、記憶領域８０には回り込み速度設定プログラムが記憶される。この実施例では、このプログラムによって、仮想カメラの移動速度としての回り込み速度が画面比率に応じて設定される。設定された回り込み速度は、メインメモリ４０のカメラパラメータ記憶領域９２に記憶される。
【００５５】
上述のように、画面比率に応じて表示される情報量が異なり、仮想カメラが回り込む際には、視野が広いほど画面の端部の情報の変化が速くなる。そのため、この実施例では、仮想カメラの移動のうち特に回り込みの場合の速度が画面比率に応じて設定される。ここで、仮想カメラの回り込みは、視点が或る点の周りを回転するような移動を意味する。図５には、仮想カメラの回り込みの一例として、注視点周りの回転が示される。図５の仮想カメラは注視点を中心として１８０度回転する。また、この仮想カメラは注視点を中心としてＸ軸方向へ移動するので、図５では横方向への回り込みと表現している。
【００５６】
この実施例では、図４に示したように、ノーマル画面とワイド画面を想定しており、仮想カメラの横方向（Ｘ軸方向）への回り込みの場合のゲーム画像が、画面比率の違いの最も大きい影響を受けるので、図５には仮想カメラの横方向の回り込みを示している。また、図５のような仮想カメラの移動は、たとえばプレイヤキャラクタの追尾カメラがプレイヤキャラクタの向きの反転に従って回り込む場合に相当する。
【００５７】
なお、図５では１８０度回転を示しているが、回り込みの角度は任意である。また、回り込みの中心は注視点とは別の点であってもよい。また、回り込みの中心点は固定されてもよいし移動されてもよい。
【００５８】
この実施例では、回り込み速度設定プログラムは、仮想カメラの回り込み速度のＸ軸成分を画面比率に応じて変化させる。具体的には、ゲーム画像の縦に対する横の比率が大きいほど速度が小さくなるように、回り込み速度が設定される。ゲーム画像の幅が大きいほど、表示される情報量が多くなるので、仮想カメラが回り込むときには、ゲーム画像の端の部分が早く動くこととなり、その画像の動きが見難くなる。したがって、ゲーム画像の幅が大きいほど回り込み速度を小さくすることによって、端の部分の動きを見易くすることができる。
【００５９】
なお、回り込み速度は画面比率に基づいて算出されてもよいし、あるいは、画面比率ごとに予め決められて記憶されていた速度値が回り込み速度として設定されてもよい。また、この実施例では、回り込み速度は、仮想カメラのＸ軸周りの回転角度に基づいて補正される。回り込み速度の算出および設定の詳細は後述される。
【００６０】
図３に戻って、記憶領域８２には仮想カメラ制御プログラムが記憶される。このプログラムによって、仮想カメラの移動が制御される。この実施例では、回り込みタイミングになったと判定されるときには、仮想カメラの回り込みが実行され、仮想カメラは設定された回り込み速度に基づいて移動される。回り込みタイミングは、コントローラ２２からの入力データに基づいてプレイヤキャラクタの向きを変える操作があったことやゲーム状況に応じてプレイヤキャラクタの向きを変える必要があること、あるいは、コントローラ２２からの入力データに基づいて仮想カメラを回り込ませる操作があったこと等のような所定の条件が満足されたときである。
【００６１】
記憶領域８４には画像生成プログラムが記憶される。このプログラムによって、画角によって規定される仮想カメラの視野の内部（範囲）を示すゲーム画像が生成される。記憶領域８６には生成されたゲーム画像をモニタ３４に表示するための表示プログラムが記憶される。
【００６２】
データ記憶領域７２の記憶領域８８には、ゲーム画像の生成に使用される画像データが記憶される。画像データは、仮想ゲーム空間に配置される各種オブジェクト（プレイヤキャラクタ、ノンプレイヤキャラクタ、地形オブジェクト、建物オブジェクト、アイテムオブジェクトなど）の画像データを含む。
【００６３】
記憶領域９０には、画面比率取得プログラムによって取得された画面比率が記憶される。画角設定や回り込み速度設定はこの画面比率に基づいて行われる。
【００６４】
記憶領域９２にはカメラパラメータが記憶される。カメラパラメータは、画角、注視点、視点、Ｘ軸角度、回り込み速度などの情報を含む。画像生成プログラムは、カメラパラメータに基づいてゲーム画像を生成する。
【００６５】
画角は、画角設定プログラムによって画面比率に応じて設定された画角である。注視点はワールド座標系における注視点の位置を示す座標であり、視点はワールド座標系における仮想カメラの位置を示す座標である。たとえば、仮想カメラがプレイヤキャラクタの追尾カメラである場合には、注視点はプレイヤキャラクタの位置に設定され、視点はたとえばプレイヤキャラクタから所定距離後方の位置に設定され、注視点および視点はプレイヤキャラクタの移動に従って移動する。また、図５に示したように、仮想カメラが回り込む場合には、視点は所定の点（注視点など）を中心として横方向に回り込み速度で移動する。
【００６６】
Ｘ軸角度は、カメラ座標系のＸ軸を中心（基準）とした仮想カメラの回転角度（仮想カメラの縦方向の傾き角度）を示す。この実施例では、後述するように、Ｘ軸角度に基づいて回り込み速度が補正される。
【００６７】
回り込み速度は、回り込み速度設定プログラムによって設定された回り込み速度である。この実施例では仮想カメラはＸ軸方向へ回り込むので、回り込み速度のＸ軸成分が記憶される。なお、他の実施例で、Ｙ軸方向への回り込みやＸ軸およびＹ軸両方向成分を含む回り込みが行われる場合には、回り込み速度のＹ軸成分も記憶される。
【００６８】
図６には、ビデオゲーム装置１２のＣＰＵ３６によって実行されるメニュー設定処理の動作の一例が示される。このメニュー設定処理によって、上述のようなメニュー画面における画面比率の設定が行われる。上述のように、この実施例では、画面比率の設定は、ビデオゲーム装置１２のＲＯＭまたは不揮発性メモリに予め記憶されたメニュープログラムに従って実行される。
【００６９】
メニュー設定処理を開始すると、ステップＳ１で、ＣＰＵ３６は、ＧＰＵ４２を用いてメニュー画面をモニタ３４に表示する。メニュー画面では、たとえば、画面比率４：３と１６：９が選択肢として表示されており、プレイヤはコントローラ２２の十字スイッチを操作してカーソルを所望の選択肢上に移動して所定のボタンスイッチを押すことによって、画面比率を選択することができる。
【００７０】
ステップＳ３では、ＣＰＵ３６は、コントローラ２２からの入力データと選択肢の位置情報等に基づいて、画面比率４：３が選択されたか否かを判断する。ステップＳ３で“ＹＥＳ”の場合、ＣＰＵ３６は、ステップＳ５で画面比率として４：３を示す情報を、メインメモリ４０のうちの不揮発性メモリの画面比率を記憶するための所定領域に記憶する。一方、ステップＳ３で“ＮＯ”の場合、つまり、画面比率１６：９が選択された場合、ＣＰＵ３６は、ステップＳ７で画面比率として１６：９を示す情報を上記所定領域に記憶する。ステップＳ５またはＳ７を終了すると、メニュー設定処理が終了される。
【００７１】
図７には、ビデオゲーム装置１２のＣＰＵ３６のゲーム動作の一例が示される。まず、ステップＳ１１で、ＣＰＵ３６は画角設定処理を実行する。画角設定処理の動作は図８に詳細に示される。
【００７２】
図８のステップＳ３１で、ＣＰＵ３６は画面比率を取得する。具体的には、上述の図６のメニュー設定処理で設定された画面比率をメインメモリ４０の所定領域から読み出して画面比率記憶領域９０に記憶する。
【００７３】
次に、ステップＳ３３で、ＣＰＵ３６は、取得した画面比率が４：３であるか否かを判断する。ステップＳ３３で“ＹＥＳ”の場合、ＣＰＵ３６は、ステップＳ３５で画面比率４：３のための値αをカメラパラメータ記憶領域９２に記憶することによって、仮想カメラの画角を設定する。一方、ステップＳ３３で“ＮＯ”の場合、ＣＰＵ３６は、ステップＳ３７で画面比率１６：９のための値βをカメラパラメータ記憶領域９２に記憶することによって、仮想カメラの画角を設定する。図４に示したように、画角αおよびβはそれぞれノーマル画面およびワイド画面の横方向の視野を規定する。画角の値αおよびβは画面比率に基づいて予め定められてプログラムに記憶される。あるいは、設定された画面比率に対応する画角の値は、基準となる画面比率（たとえば４：３）に対応付けた基準となる画角（たとえばα）に基づいて算出されてもよい。
【００７４】
続いて、ステップＳ３９で、ＣＰＵ３６は、ＧＰＵ４２を用いて、画角に基づいて特定される撮影範囲の仮想ゲーム空間を示す画像を生成する。そして、ステップＳ４１で、ＣＰＵ３６は生成した画像をモニタ３４に表示する。このようにして、画面比率に対応する視野の内部を示すゲーム画像が表示され、プレイヤはこのゲーム画像を見てゲームをプレイする。画角設定処理を終了すると、処理は図７のステップＳ１３に戻る。
【００７５】
図７のステップＳ１３では、ＣＰＵ３６は回り込み速度設定処理を実行して、画面比率に応じた回り込み速度を設定する。回り込み速度設定処理の動作は図９に詳細に示される。
【００７６】
図９のステップＳ５１で、ＣＰＵ３６は記憶領域９０に記憶された画面比率が４：３であるか否かを判断する。ステップＳ５１で“ＹＥＳ”の場合、つまり、ノーマル画面の場合には、ＣＰＵ３６は、ステップＳ５３で、回り込み速度に１（基準値）を設定する。具体的には、カメラパラメータ記憶領域９２の回り込み速度（Ｘ軸成分）に基準値が記憶される。
【００７７】
このように、この実施例では、画面比率４：３のノーマル画面が基準となる画面として採用され、ゲーム制作者が定めた基準画面に最適な回り込み速度が基準値として採用される。そして、基準となる画面比率と異なる画面比率に対応する回り込み速度（この実施例ではワイド画面の回り込み速度）は、基準値を基に算出される。
【００７８】
ただし、この実施例では、基準値は、仮想カメラのＸ軸角度が０度であるとき、つまり、仮想カメラの向き（Ｚ軸）がワールド座標系における水平方向に平行であるときの基準画像を基にして決められている。なお、仮想カメラのＸ軸角度が所定の角度のときを基準値として決めてもよい。
【００７９】
一方、ステップＳ５１で“ＮＯ”の場合、つまり、ワイド画面の場合には、基準となるノーマル画面よりも横方向の視野が広いので、回り込み速度は基準画面よりも遅くされる。具体的には、ＣＰＵ３６は、ステップＳ５５で、設定された画面比率と基準となる画面比率の縦の比率を同じにした場合の、設定された画面比率の横の比率と基準となる画面比率の横の比率とを算出する。具体的には、この実施例では、設定された画面比率１６：９と基準となる画面比率４：３の縦の比率を同じ値９に設定する。このとき、設定された画面比率の横の比率はそのまま１６であり、基準となる画面比率の横の比率は１２となる。
【００８０】
そして、ステップＳ５７で、ＣＰＵ３６は２つの横の比率に基づいて回り込み速度を算出する。具体的には、この実施例では、基準となる画面比率の横の比率１２と設定された画面比率の横の比率１６との比率を、基準となる画面比率における回り込み速度（基準値１）と設定された画面比率における回り込み速度との比率に変換する。つまり、１２と１６の比率を算出し、この算出値０．７５（１２／１６）を、設定された画面比率における回り込み速度として採用する。このように、表示すべき画像と基準画像の横の比率に基づいて簡単な処理で、画面比率に適切な回り込み速度を算出することができる。
【００８１】
続いて、ステップＳ５９で、ＣＰＵ３６は、仮想カメラのＸ軸角度に基づいて補正を実行する。Ｘ軸角度は、たとえばプレイヤキャラクタの位置、注視点位置または視点位置のようなゲーム状況に応じて変化される。Ｘ軸角度によって仮想カメラが回り込む際の画像の見難さが変化する。したがって、この補正を実行することによって、たとえば仮想カメラが注視点を俯瞰したり、見上げたりもしくは水平な位置から見たりするような種々の状況に応じて、より適切な回り込み速度を設定できる。
【００８２】
図１０には仮想カメラのＸ軸角度が示される。図１０（Ａ）は視点と注視点とが水平である場合、つまり、Ｘ軸角度が０度の場合を示す。図１０（Ｂ）は視点が注視点を俯瞰する場合を示し、Ｘ軸角度は０度より大きく９０度より小さい。図１０（Ｂ）の場合には、たとえば、仮想カメラはＸ軸角度を維持して回り込みを行い、つまり、注視点からの鉛直線と視点からの水平線との交点を中心として水平面内で回転をする。
【００８３】
基準となるノーマル画面の回り込み速度の基準値１は、図１０（Ａ）に示したＸ軸角度が０度の場合の値であり、上述のステップＳ５７で算出された回り込み速度０．７５も、Ｘ軸角度が０度の場合の値である。回り込みによる画像の見難さの度合いは、図１０（Ａ）のようにＸ軸角度が０度であるときに最も高く、Ｘ軸角度の大きさが大きくなるに従って低くなる。したがって、Ｘ軸角度に応じて回り込み速度を補正する。Ｘ軸角度が０度のとき、ゲーム画像は最も見難くなるので、回り込み速度は最も小さくされる。Ｘ軸角度の大きさが９０度に近づくにつれてゲーム画像は見易くなるので、回り込み速度は大きくされる。
【００８４】
図１１に、仮想カメラのＸ軸角度とワイド画面のための回り込み速度との関係の一例が示される。Ｘ軸角度が０度のときゲーム画像は最も見難く、Ｘ軸角度が大きくなるにつれてゲーム画像は見易くなるので、回り込み速度は、Ｘ軸角度が０度のときに最も小さくされ、Ｘ軸角度の大きさが大きくなるにつれて大きくされる。具体的には、ワイド画面の回り込み速度（ノーマル画面の回り込み速度を１とした場合）は、Ｘ軸角度が０度のとき０．７５であり、Ｘ軸角度の大きさが９０度に近づくにつれて大きくなって１に近づく。たとえば、回り込み速度は、図１１において実線で示すようにＸ軸角度に対して直線的な関係で変化する。また、他の実施例では、ワイド画面の回り込み速度は、図１１において破線で示すようにＸ軸角度に対して曲線的な関係で変化されてもよい。なお、ノーマル画面のための回り込み速度とＸ軸角度の関係は図示しないが、図１１に示すワイド画面と同様な所定の関係である。
【００８５】
図９のステップＳ５９では、予め記憶しておいた所定の関係式に従って、回り込み速度の補正値をＸ軸角度から算出することができる。なお、Ｘ軸角度に対応付けられた回り込み速度を示すテーブルを予め記憶しておいて、このテーブルを参照して補正値を読み出すようにしてもよい。
【００８６】
そして、ステップＳ６１では、ＣＰＵ３６は補正値を回り込み速度に設定する。具体的には、補正値をカメラパラメータ記憶領域９２の回り込み速度（Ｘ軸成分）に記憶する。
【００８７】
なお、他の実施例でＸ軸角度が所定値（０度以外）に固定される場合には、予め算出して記憶しておいた補正値を回り込み速度に設定するようにしてよい。
【００８８】
また、他の実施例では、Ｘ軸角度の見難さへの影響度が大きくない場合には、Ｘ軸角度による補正を行わなくてもよい。
【００８９】
また、他の実施例では、基準となる画面の回り込み速度と同様に、基準ではない画面の回り込み速度についても、ゲーム制作者が体感的な適正値を取得し、当該適正値を予め記憶しておいて回り込み速度に設定するようにしてもよい。
【００９０】
図９の回り込み速度設定処理を終了すると、処理は図７のステップＳ１５に戻る。ステップＳ１５では、ＣＰＵ３６はプレイヤの操作に基づくゲーム処理を実行する。たとえば、ＣＰＵ３６はコントローラ２２からの入力データを取得して、当該入力データに基づいてプレイヤキャラクタの移動や行動の制御を実行したり、仮想カメラの制御を実行したりする。なお、このステップＳ１５のゲーム処理および後述のステップＳ１７〜Ｓ２５は１フレームごとに実行される。
【００９１】
そして、ステップＳ１７で、ＣＰＵ３６は仮想カメラの回り込みタイミングであるか否かを判断する。たとえば、コントローラ２２の入力データに基づいてプレイヤキャラクタの向きを反転させる操作が行われたか否かを判断したり、ゲームの進行状況が仮想カメラの回り込みを必要とする所定の条件を満足したか否かを判断したり、あるいは、入力データに基づいて仮想カメラの回り込みを指示する操作が行われたか否かを判断したりする。
【００９２】
ステップＳ１７で“ＮＯ”の場合、処理はステップＳ２５へ進む。なお、この図７では省略しているが、仮想カメラの回り込みタイミングではないと判定される場合には、ステップＳ１５のゲーム処理の結果に応じたゲーム画像を表示すべく、ステップＳ２５の処理の前に、図８のステップＳ３９と同様の画像生成処理およびステップＳ４１と同様の表示処理が実行される。
【００９３】
一方、ステップＳ１７で“ＹＥＳ”の場合には、ＣＰＵ３６は、ステップＳ１９で回り込み速度に基づいて回り込み処理を実行する。具体的には、ＣＰＵ３６は、仮想カメラが回り込み速度で回り込むべき位置を算出し、当該位置を新たな視点の位置としてカメラパラメータ記憶領域９２に記憶する。
【００９４】
続いて、ステップＳ２１で、ＣＰＵ３６は、ＧＰＵ４２を用いて回り込み処理に基づく画像生成処理を実行する。具体的には、カメラパラメータ記憶領域９２に記憶された画角、注視点および視点に基づいて、画面比率に対応する視野内の仮想ゲーム空間を示すゲーム画像が生成される。そして、ステップＳ２３で、ＣＰＵ３６は、ＧＰＵを用いて表示更新処理を実行する。これによって、生成されたゲーム画像がモニタ３４に表示される。
【００９５】
上述のステップＳ２１およびＳ２３の処理が所定時間連続して実行されることによって、仮想カメラの回り込みに応じた画像の動き（変化）が表現される。
【００９６】
ステップＳ２５では、ＣＰＵ３６はゲーム終了であるか否かを判断する。たとえばゲーム終了のための条件が満足されたか否かを判断する。ステップＳ２５で“ＮＯ”の場合、処理はステップＳ１５へ戻り、ゲームが続けられる。一方、ステップＳ２５で“ＹＥＳ”であれば、ゲームが終了される。
【００９７】
この実施例によれば、表示すべきゲーム画像の画面比率が取得され、当該画面比率に応じて仮想カメラの回り込み速度を変化させるようにしたので、画面比率に適切な仮想カメラの回り込み速度を設定することができる。したがって、仮想カメラが回り込む際に生成されるゲーム画像を見易くすることができる。
【００９８】
なお、上述の実施例では、図４に示したように、画面比率に応じて画面横方向の視野が異なるように仮想カメラの横方向の画角を設定していた。もし仮想カメラが横方向に回り込む際の移動速度を画面比率を考慮せずに設定すれば、ゲーム画像の横方向端部に見難さが生じてしまう。そのため、仮想カメラの横方向の回り込み速度（Ｘ軸成分）を画面比率に応じて変化させるようにしていた。しかし、他の実施例で、画面比率に応じて画面縦方向の視野が異なるように仮想カメラの縦方向（Ｙ軸方向）の画角を設定する場合には、縦方向の回り込みによって、ゲーム画像の縦方向端部に見難さが生じるおそれがあるので、仮想カメラの縦方向の回り込み速度（Ｙ軸成分）を画面比率に応じて変化させる。また、縦方向の回り込み速度は、設定された画面比率と基準となる画面比率の間で横の比率を同じにした場合の、設定された画面比率の縦の比率と基準となる画面比率の縦の比率とに基づいて算出され得る。
【００９９】
また、上述の各実施例では、仮想カメラが回り込む際の移動速度を画面比率に応じて変化させるようにした。しかし、他の実施例では、仮想カメラが回り込み以外の移動をする場合であっても仮想カメラの移動速度を画面比率に応じて変化させるようにしてよい。画面比率に応じて仮想カメラの視野が異なれば、仮想カメラの移動による可視範囲（撮影範囲）の変化が異なるので、移動速度を画面比率に応じて設定することによって、可視範囲の変化や画像の動きを見易くすることができる。たとえば、仮想カメラが移動される際にその移動の種類（回り込み、所定方向への平行移動など）を判定して、当該種類に応じて適切な移動速度を設定してよい。
【０１００】
また、上述の各実施例では、画面比率が４：３と１６：９の場合について説明したが、他の様々な画面比率の場合にも適用可能であることは言うまでもない。
【図面の簡単な説明】
【０１０１】
【図１】この発明の実施例のゲームシステムの外観を示す図解図である。
【図２】図１に示すゲームシステムの電気的な構成を示すブロック図である。
【図３】図２に示すメインメモリのメモリマップを示す図解図である。
【図４】ノーマル画面とワイド画面の可視範囲の違いを示す図解図であり、図４（Ａ）は生成される画像を示し、図４（Ｂ）は仮想カメラの横方向の画角によって規定される横方向の視野を示す。
【図５】仮想カメラの回り込みを示す図解図である。
【図６】メニュー設定処理の動作の一例を示すフロー図である。
【図７】ゲーム動作の一例を示すフロー図である。
【図８】図７の画角設定処理の動作の一例を示すフロー図である。
【図９】図７の回り込み速度設定処理の動作の一例を示すフロー図である。
【図１０】仮想カメラのＸ軸角度を示す図解図であり、図１０（Ａ）は視点と注視点とが水平である場合を示し、図１０（Ｂ）は視点が注視点を俯瞰する場合を示す。
【図１１】仮想カメラのＸ軸角度とワイド画面の回り込み速度の関係の一例を示す図解図である。
【符号の説明】
【０１０２】
１０  …ゲームシステム
１２  …ビデオゲーム装置
１８  …光ディスク
３４  …モニタ
３６  …ＣＰＵ
４０  …メインメモリ
４２  …ＧＰＵ
【図１】
2008119344.tif 000003
【図２】
2008119344.tif 000004
【図３】
2008119344.tif 000005
【図４】
2008119344.tif 000006
【図５】
2008119344.tif 000007
【図６】
2008119344.tif 000008
【図７】
2008119344.tif 000009
【図８】
2008119344.tif 000010
【図９】
2008119344.tif 000011
【図１０】
2008119344.tif 000012
【図１１】
2008119344.tif 000013