(57)【要約】【構成】ＣＰＵおよびＧＰＵは、各オブジェクトデータおよびテクスチャデータに従って、モニタ上にプレイヤキャラクタ、敵キャラクタ、地形オブジェクト、アイテム等を含むゲーム画面を表示する。ＣＰＵは、アナログジョイスティックの変位量に応じて、プレイヤキャラクタの移動速度を決定する（ステップＳ３９，Ｓ４３，Ｓ４７，Ｓ４９：図６）。そして、ＣＰＵおよびＧＰＵは、ゲーム画面上に縮小マップを表示するが、このとき、縮小マップの透明度が上記移動距離に応じて設定される（ステップＳ１２９）。【効果】縮小マップをゲーム画面中に表示しても、ゲームプレイヤの操作性を損なうことがない。【選択図】　図１２
2004000368.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置であって、
プレイヤの操作に応じて、前記ゲーム空間における前記プレイヤキャラクタの移動速度を決定する移動速度決定手段、および
前記移動速度に応じた透明度で前記縮小マップを前記ゲーム画面上に描画する縮小マップ描画手段を備える、ゲーム装置。
【請求項２】
前記縮小マップ描画手段は、前記移動速度が大きくなるに従って前記透明度を大きくする、請求項１記載のゲーム装置。
【請求項３】
前記縮小マップ描画手段は、前記プレイヤキャラクタが停止している状態では前記透明度を０％とする、請求項１または２記載のゲーム装置。
【請求項４】
前記プレイヤキャラクタの移動方向を決定する移動方向決定手段をさらに備え、
前記縮小マップ描画手段は、前記移動方向とは異なる前記ゲーム画面上の位置に前記縮小マップを描画する、請求項１ないし３のいずれかに記載のゲーム装置。
【請求項５】
前記プレイヤキャラクタの移動方向を決定する移動方向決定手段をさらに備え、
前記縮小マップ描画手段は、前記移動方向に応じた方向指示記号を前記縮小マップ内に表示する矢印表示手段を含む、請求項１ないし３のいずれかに記載のゲーム装置。
【請求項６】
ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置において、ゲームプロセサに次のステップを実行させるためのゲームプログラム：
プレイヤの操作に応じて、前記ゲーム空間における前記プレイヤキャラクタの移動速度を決定する移動速度決定ステップ、および
前記移動速度に応じた透明度で前記縮小マップを前記ゲーム画面上に描画する縮小マップ描画ステップ。
【請求項７】
前記縮小マップ描画ステップでは、前記移動速度が大きくなるに従って前記透明度を大きくする、請求項６記載のゲームプログラム。
【請求項８】
前記縮小マップ描画ステップでは、前記プレイヤキャラクタが停止している状態では前記透明度を０％とする、請求項６または７記載のゲームプログラム。
【請求項９】
前記ゲームプロセサに、プレイヤキャラクタの移動方向を決定する移動方向決定ステップをさらに実行させ、そして
前記縮小マップ描画ステップでは、前記移動方向とは異なる前記ゲーム画面上の位置に前記縮小マップを描画する、請求項６ないし８のいずれかに記載のゲームプログラム。
【請求項１０】
前記ゲームプロセサに、プレイヤキャラクタの移動方向を決定する移動方向決定ステップをさらに実行させ、そして
前記縮小マップ描画ステップは、前記移動方向に応じた方向指示記号を前記縮小マップ内に表示する方向指示記号表示ステップを含む、請求項６ないし９のいずれかに記載のゲームプログラム。
【請求項１１】
ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置において、次のステップを含むゲーム表示方法：
プレイヤの操作に応じて、前記ゲーム空間における前記プレイヤキャラクタの移動速度を決定する移動速度決定ステップ、および
前記移動速度に応じた透明度で前記縮小マップを前記ゲーム画面上に描画する縮小マップ描画ステップ。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明はゲーム装置およびゲームプログラムに関し、特にたとえばゲーム空間内におけるプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置、およびそれのためのゲームプログラムに関する。
【０００２】
【従来の技術】
２次元／３次元のゲーム空間内をキャラクタが動きまわるようなアクションゲームやシューティングゲームなどがある。このようなゲームでは、自己のキャラクタ（プレイヤキャラクタ：ゲームプレイヤの操作に応答して移動し、動作するキャラクタ）を中心とする比較的狭い範囲のゲーム空間が通常のゲーム画面としてテレビまたはモニタに表示されている。
【０００３】
このような狭いゲーム空間を表示する場合には、ゲームプレイヤは、比較的簡単に、プレイヤキャラクタや敵キャラクタあるいは他のオブジェクトの位置関係を把握できるが、そのゲーム画面には表示されない他のキャラクタやオブジェクトとプレイヤキャラクタとの位置関係の把握は容易ではない。なぜなら、他のキャラクタやオブジェクトが表示されていないからである。
【０００４】
そこで、いくつかのゲーム装置では、ゲーム空間におけるプレイヤキャラクタの位置や敵キャラクタの位置をゲームプレイヤに容易に把握させるために、ゲーム空間の広い範囲（通常の１つのゲーム画面では表示できない範囲）におけるそれぞれのキャラクタ（オブジェクト）の位置を示すための縮小マップ（またはレーダ画面）を、通常のゲーム画面に重ねて表示することが行われている。したがって、ゲームプレイヤは、その縮小マップまたはレーダ画面を見ることによって、広いゲーム空間内でのプレイヤキャラクタや敵キャラクタあるいは他のオブジェクトの位置関係を比較的簡単に把握できる。
【０００５】
【発明が解決しようとする課題】
しかしながら、縮小マップまたはレーダ画面を表示する場合、特にプレイヤキャラクタが比較的速い速度で移動するとき、すなわち背景が速い速度で移動して行くときには、ゲームプレイヤが画面上に表示される多くの情報を読み取ることは非常に困難で、縮小マップの表示がむしろ邪魔になってしまうという問題がある。
【０００６】
また、縮小マップが自己のプレイヤキャラクタの移動方向に表示されているときは、そのプレイヤキャラクタの移動方向がその縮小マップに隠蔽されてしまうので、ゲームプレイヤがプレイヤキャラクタの移動先の様子を把握しにくいという別の問題もある。
【０００７】
それゆえに、この発明の主たる目的は、新規なビデオゲーム装置およびゲームプログラムを提供することである。
【０００８】
この発明の他の目的は、縮小マップまたはレーダ画面もしくはその類似物をゲーム画面中に表示しても、ゲームプレイヤの操作性を損なうことのない、ビデオゲーム装置およびゲームプログラムを提供することである。
【０００９】
【課題を解決するための手段】
第１の発明は、ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置であって、プレイヤの操作に応じて、ゲーム空間におけるプレイヤキャラクタの移動速度を決定する移動速度決定手段、および移動速度に応じた透明度で縮小マップをゲーム画面上に描画する縮小マップ描画手段を備える、ゲーム装置である。
【００１０】
第２の発明は、ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置において、ゲームプロセサに、プレイヤの操作に応じて、ゲーム空間におけるプレイヤキャラクタの移動速度を決定する移動速度決定ステップ、および移動速度に応じた透明度で縮小マップをゲーム画面上に描画する縮小マップ描画ステップを実行させるためのゲームプログラムである。
【００１１】
第３の発明は、ゲーム空間内のプレイヤキャラクタの位置を示すための縮小マップをゲーム画面上に表示するゲーム装置において、プレイヤの操作に応じて、ゲーム空間におけるプレイヤキャラクタの移動速度を決定する移動速度決定ステップ、および移動速度に応じた透明度で縮小マップをゲーム画面上に描画する縮小マップ描画ステップを含むゲーム表示方法。
【００１２】
【作用】
実施例でいえばゲーム機がゲーム装置に相当し、このゲーム機（１２）は、ゲームプロセサとして機能するＣＰＵ（３６）および描画手段の一部を構成するＧＰＵ（４２）を含む。ＣＰＵで実行されるべきゲームプログラムは、オブジェクトデータやテクスチャデータとともに、たとえば光ディスク（１８）からメインメモリ（４０）にローディングされる。したがって、ＣＰＵはゲームプログラムに従ってゲームを実行し、ＣＰＵおよびＧＰＵは、各オブジェクトデータおよびテクスチャデータに従って、モニタ（３４）上にプレイヤキャラクタ、敵キャラクタ、地形オブジェクト、アイテム等を含むゲーム画像すなわちゲーム画面（３４Ａ）を表示する。
【００１３】
ゲームプレイヤがコントローラ（２２）のたとえばアナログジョイスティックを操作することによって、ＣＰＵはプレイヤキャラクタを、そのアナログジョイスティックが示す方向に移動させる。ＣＰＵは、このとき、そのアナログジョイスティックの操作量または変位量に応じて、プレイヤキャラクタの移動速度を決定する（ステップＳ３９，Ｓ４３，Ｓ４７，Ｓ４９：図６）。そして、ＣＰＵおよびＧＰＵは、メインメモリから読み出した縮小マップテクスチャデータ（必要に応じて、矢印テクスチャデータ）を用いて、ゲーム画面上に縮小マップ（８６）を表示するが、このとき、縮小マップの透明度が上記移動距離に応じて設定される。具体的には、プレイヤキャラクタの移動速度が大きいほど縮小マップの透明度を大きくする（ステップＳ１２９：図１２）。したがって、プレイヤキャラクタが速く移動するときでも、縮小マップがゲームプレイヤの視界を邪魔することがない。
【００１４】
なお、ＣＰＵがプレイヤキャラクタの移動方向を決定する（ステップＳ３３：図６）場合には、縮小マップはその移動方向とは異なるゲーム画面上の位置に描画される。そのため、プレイヤキャラクタの移動方向における様子が縮小マップによって隠されることはない。
【００１５】
同じように、プレイヤキャラクタの移動方向を決定する場合には、縮小マップ内に、メインメモリから読み出した矢印テクスチャに従って、方向指示記号（たとえば矢印８８：図１３）を併せて表示するようにしてもよい。
【００１６】
【発明の効果】
この発明によれば、プレイヤキャラクタの移動速度に応じた透明度で縮小マップ（またはケーレーダ画面）を表示するので、縮小マップまたはレーダ画面もしくはその類似物をゲーム画面中に表示しても、ゲームプレイヤの操作性を損なうことがない。
【００１７】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００１８】
【実施例】
図１に示す実施例のビデオゲームシステム１０はビデオゲーム機（以下、単に「ゲーム機」という。）１２を含む。このゲーム機１２には電源が与えられるが、この電源は、実施例では、一般的なＡＣアダプタ（図示せず）であってよい。ＡＣアダプタは家庭用の標準的な壁ソケットに差し込まれ、家庭用電源を、ゲーム機１２を駆動するのに適した低いＤＣ電圧信号に変換する。他の実施例では、電源として、バッテリが用いられてもよい。
【００１９】
ゲーム機１２は、略立方体のハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラムを記憶した情報記憶媒体の一例である光ディスク１８が装着される。ハウジング１４の前面には複数の（実施例では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ２２をゲーム機１２に接続するためのものであり、この実施例では最大４つのコントローラをゲーム機１２に接続することができる。
【００２０】
コントローラ２２には、その上面，下面，あるいは側面などに、操作手段（コントロール）２６が設けられる。操作手段２６は，たとえば２つのアナログジョイスティック，１つの十字キー，複数のボタンスイッチ等を含む。１つのアナログジョイスティックは、スティックの傾き量と方向とによって、プレイヤキャラクタ（プレイヤがコントローラ２２によって操作可能な動画キャラクタ）の移動方向および／または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックは、傾斜方向によって、仮想カメラの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤキャラクタの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤキャラクタの動作を指示するために利用されたり、３次元画像の仮想カメラの視点を切り換えたり、プレイヤキャラクタの移動スピード調節等に用いられる。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動を制御する。
【００２１】
なお、実施例ではコントローラ２２がケーブル２４によってゲーム機１２に接続された。しかしながら、コントローラ２２は、他の方法、たとえば電磁波（たとえば電波または赤外線）を介してワイヤレスで、ゲーム機１２に接続されてもよい。また、コントローラ２２の操作手段の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは１つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
【００２２】
ゲーム機１２のハウジング１４の前面のコネクタ２０の下方には、少なくとも１つの（実施例では２つの）メモリスロット２８が設けられる。このメモリスロット２８にはメモリカード３０が挿入される。メモリカード３０は、光ディスク１８から読み出したゲームプログラムや表示用データ（図３参照）をローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（たとえばゲームの結果）をセーブしておくために利用される。
【００２３】
ゲーム機１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル３２を通してゲーム機１２にモニタ３４を接続する。このモニタ３４は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル３２は、ゲーム機１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に与える。したがって、カラーテレビ（モニタ）３４の画面上にたとえば３次元（３Ｄ）ビデオゲームのゲーム画像が表示され、左右のスピーカからゲーム音楽や効果音などのステレオゲーム音声が出力され得る。
【００２４】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまずゲーム機１２の電源をオンし、次いで、ユーザはビデオゲーム（もしくはプレイしたいと思う他のアプリケーション）をストアしている適宜の光ディスク１８を選択し、その光ディスク１８をゲーム機１２のディスクドライブ１６にローディングする。応じて、ゲーム機１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム機１２に入力を与えるためにコントローラ２２を操作する。たとえば、操作手段２６のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作手段２６の他のものを動かすことによって、動画キャラクタ（プレイヤキャラクタ）を異なる方向に移動させ、または３次元（３Ｄ）のゲーム世界におけるユーザの視点（カメラ位置）を変化させることができる。
【００２５】
図２は図１実施例のビデオゲームシステム１０の構成を示すブロック図である。ビデオゲーム機１２には、このゲーム機の全体的な制御を担当する中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられる。ＣＰＵ３６はゲームプロセサとして機能し、このＣＰＵ３６には、バスを介して、メモリコントローラ３８が結合される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して結合されるメインメモリ４０の書込みや読出しを制御する。このメモリコントローラ３８にはＧＰＵ（Ｇｒａｐｈｉｃｓ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：グラフィックス処理装置）４２が結合される。
【００２６】
ＧＰＵ４２は、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィクスコマンド（ｇｒａｐｈｉｃｓ　ｃｏｍｍａｎｄ：作画命令）を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３次元（３Ｄ）ゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種キャラクタやオブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう）の回転，移動，変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャ（Ｔｅｘｔｕｒｅ：模様画像）を張り付ける（レンダリングする）。したがって、ＧＰＵ４２によって、ゲーム画面上に表示すべき３Ｄ画像データが作成され、その画像データ（テクスチャデータ）がフレームバッファ４８内に描画（記憶）される。なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００２７】
フレームバッファ４８は、たとえばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上に３Ｄゲーム画像が表示される。なお、フレームバッファ４８の容量は、表示したい画面の画素（ピクセルまたはドット）数に応じた大きさである。たとえば、ディスプレイないしモニタ３４の画素数に応じた画素数（記憶位置またはアドレス）を有する。
【００２８】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素（記憶位置またはアドレス）数×１画素当たりの奥行データのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行データ（Ｚ値）を記憶するものである。
【００２９】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよい。
【００３０】
メモリコントローラ３８はまた、ＤＳＰ（Ｄｉｇｉｔａｌ　Ｓｉｇｎａｌ　Ｐｒｏｃｅｓｓｏｒ）５２を介して、サブメモリ５４に結合される。したがって、メモリコントローラ３８は、メインメモリ４０だけでなく、サブメモリ５４の書込みおよび／または読出しを制御する。
【００３１】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に結合される。コントローラＩ／Ｆ５６は、コントローラ２２のためのインタフェースであり、コントローラ２２の操作手段２６の操作信号またはデータをメモリコントローラ３８を通してＣＰＵ３６に与える。ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢピクセル値）をＡＶケーブル３２（図１）を介してモニタ３４に与える。外部メモリＩ／Ｆ６０は、ゲーム機１２の前面に挿入されるメモリカード３０（図１）をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード３０にデータを書込み、またはメモリカード３０からデータを読み出すことができる。オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してフレームバッファ４８から与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３４のスピーカ６６に与える。なお、ステレオ音声の場合には、スピーカ６６は、少なくとも、左右１つずつ設けられる。そして、ディスクＩ／Ｆは、そのディスクドライブ１６をメモリコントローラ３８に結合し、したがって、ＣＰＵ３６がディスクドライブ１６を制御する。このディスクドライブ１６によって光ディスク１８から読み出されたプログラムデータやテクスチャデータ等が、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００３２】
図３にはメインメモリ４０のメモリマップが示される。メインメモリ４０は、ゲームプログラム記憶領域６８、縮小マップテクスチャデータ記憶領域７０、矢印テクスチャデータ記憶領域７２、オブジェクトデータ記憶領域７４およびテクスチャデータ記憶領域７６を含む。ゲームプログラム記憶領域６８には、光ディスク１８から読み出したゲームプログラムが、１度に全部または部分的かつ順次的に、記憶される。
【００３３】
縮小マップテクスチャデータ記憶領域７０には、縮小マップ（ゲーム空間の広い範囲におけるプレイヤキャラクタ、敵キャラクタ、オブジェクト等の位置を示す付属画像）を表示するためのテクスチャを表すデータを記憶する。
【００３４】
また、矢印テクスチャデータ記憶領域７２に記憶される矢印記号は、後に説明するように、上記縮小マップ内に表示され、その縮小マップ内においてプレイヤキャラクタの進行方向を指し示すために利用される。ただし、そのような方向指示記号としては、実施例の矢印以外に、適宜の記号を使用することができる。
【００３５】
オブジェクトデータ記憶領域７４には、たとえば、プレイヤキャラクタオブジェクト７４ａや敵キャラクタオブジェクト７４ｂのようなゲームキャラクタ、あるいは壁オブジェクト（建物オブジェクト，地面オブジェクトなどのような地形オブジェクト）７４ｃ、さらにはアイテムなどのアイテムオブジェクトがロードされる。なお、各オブジェクト７４ａ−７４ｃは、ポリゴンによって形成されている。そして、メインメモリ４０には、上記各キャラクタおよびオブジェクト等のデータを光ディスク１８から必要に応じてロードするようにしてもよい。
【００３６】
テクスチャデータ記憶領域７６には、上述のプレイヤキャラクタ，敵キャラクタ，壁オブジェクトなどのテクスチャデータ７６ａ，７６ｂ，７６ｃなどが記憶される。
【００３７】
ゲームをプレイするとき、上述のように光ディスク１８をゲーム機１２にセットし、電源を投入すると、光ディスクからデータが読み出され、図３に示すようにメインメモリ４０に必要なデータが記憶される。
【００３８】
そして、図４の最初のステップＳ１では、ＣＰＵ３６は、地形オブジェクト（地面オブジェクト，建物オブジェクト，壁オブジェクト等）およびアイテムのデータをメインメモリ４０のオブジェクトデータ記憶領域７４から読み出し、その地形オブジェクトおよびアイテムを、図５に示すような、ゲーム空間である３次元ワールド座標系の初期座標に配置する。ついで、ステップＳ３において、オブジェクトデータ記憶領域７４からプレイヤキャラクタ，敵キャラクタおよび仮想カメラのデータを読み出し、同じワールド座標系の初期座標に配置する。
【００３９】
ステップＳ５では、ＣＰＵ３６は、コントローラ２２の操作手段２６（図１）が操作されたかどうか、すなわち、コントローラＩ／Ｆ５６およびメモリコントローラ３８を介してコントローラ２２から入力がったかどうか、判断する。
【００４０】
コントローラ入力がある場合、ＣＰＵ３６は、ステップＳ７においてそのコントローラ入力に応じてプレイヤキャラクタの位置をワールド座標系において変更する。プレイヤないしユーザは、図５に示すプレイヤキャラクタ７８の位置を変更する場合には、コントローラ２２の操作手段２６（図１）のうち、たとえばアナログジョイスティック（または３Ｄジョイスティック）を操作する。したがって、ＣＰＵ３６は、このステップＳ７では、たとえばジョイスティックの傾斜方向および傾斜量のデータをコントローラＩ／Ｆ５６から受け、そのデータに基づいて、プレイヤキャラクタ７８の位置を更新する。
【００４１】
次のステップＳ９では、ＣＰＵ３６は、ステップＳ７で更新されたプレイヤキャラクタの位置に応じて、ワールド座標系での仮想カメラの位置を更新する。つまり、このステップＳ９は、仮想カメラのいわゆる「廻り込み処理」を実行するステップである。ユーザによるコントローラの操作によって、図５に示すようにプレイヤキャラクタ７８が「７８」で示す位置から「７８Ａ」で示す位置に移動された場合を想定する。この場合、元の位置で仮想カメラ８０から移動後のプレイヤキャラクタ７８Ａを見ることになり、プレイヤキャラクタ７８Ａは建物オブジェクト８２の陰に隠れてしまい、そのままであれば、ゲーム画面上に表示されなくなる。このような場合、ステップＳ９で、プレイヤキャラクタ７８Ａが見える位置まで、つまりプレイヤキャラクタ７８Ａをゲーム画面上に表示できるように、仮想カメラ８０を「８０」で示す位置からたとえば「８０Ａ」で示す位置まで、移動させる。つまり、プレイヤキャラクタの位置に応じて仮想カメラの位置を変更する。
【００４２】
その後、コントローラ入力がない場合と同様に、ステップＳ１１において、ＣＰＵ３６は、敵キャラクタ８４（図５）の位置をワールド座標系内で更新する。敵キャラクタ８４の位置は、コントローラ２２を操作してもしなくても更新する必要があるので、このステップＳ１１をこの時点で実行する。
【００４３】
そして、ステップＳ１３において、ＣＰＵ３６は、上で述べた地形オブジェクト，建物オブジェクト，アイテム，プレイヤキャラクタ，敵キャラクタなどの位置を、仮想カメラ８０（８０Ａ）を基準とする３次元のカメラ座標系に変換する。
【００４４】
その後、ＣＰＵ３６は、ステップＳ１５において、３次元のカメラ座標系を２次元の投陰平面座標系に変換するとともに、テクスチャの指定やクリッピング（ｃｌｉｐｐｉｎｇ：不可視世界の切り取り）等も併せて実行する。
【００４５】
そして、ステップＳ１７において、ゲーム画像生成処理を実行する。このステップＳ１７については、後に詳しく説明する。
【００４６】
ステップＳ１７で後述のようにゲーム画像を生成した後に、ステップＳ１９において、ゲーム画面をモニタ３４（図１）に表示する。つまり、ＣＰＵ３６がビデオＩ／Ｆ５８に指令を与え、応じて、ビデオＩ／Ｆ５６がフレームバッファ４８（図２）にアクセスする。したがって、フレームバッファ４８からモニタ３４に表示すべき画像データが読み出され、ゲーム画像が表示され得る。
【００４７】
その後、ステップＳ２１でゲームが終了したかどうか判断する。ゲームが終了されていれば、そのままこの図４ルーチンを終了するが、ゲームが続行される場合には、先のステップＳ５に戻って、コントローラ２２からの入力を待つ。
【００４８】
図６を参照して、図４におけるステップＳ７が詳細に示される。この図６はゲームプレイヤのコントローラ操作に応答してプレイヤキャラクタの位置を変更または更新するルーチンを詳細に示す。
【００４９】
ステップＳ３１では、ＣＰＵ３６は、コントローラＩ／Ｆ５６およびメモリコントローラ３８を介して、コントローラ２２から手段された操作信号（操作データ）を取得する。この操作データ（操作情報または操作信号）の一例が図７に示される。先に述べたように、コントローラ２２は方向指示手段として２つのアナログジョイスティック（メインおよびサブ）および１つの十字キーを備えているが、この実施例では、プレイヤキャラクタの移動方向および移動距離、つまり移動位置を決定するためには、メインアナログジョイスティックのデータを利用する。ただし、サブアナログジョイスティックおよび／または十字キーに応じてプレイヤキャラクタを移動させるようにしてもよいことは、もちろんである。そして、メインアナログジョイスティックの操作データは図７に示すように、２つの軸Ｘ軸およびＹ軸の変位量データとして与えられる。
【００５０】
ＣＰＵ３６は、続くステップＳ３３において、このような操作情報すなわちメインアナログジョイスティックの各軸変位量データから、仮想３次元ゲーム空間におけるプレイヤキャラクタの移動方向を決定する。具体的には、メインアナログジョイスティックのＸ軸変位量が「２」でＹ軸変位量が「３」のとき、現在のプレイヤキャラクタの位置を基準（原点）として、Ｘ，Ｙ＝２、３の方向を移動方向として決定する。別の例として、メインアナログジョイスティックのＸ軸変位量が「−２」でＹ軸変位量が「３」のとき、現在のプレイヤキャラクタの位置を基準として、Ｘ，Ｙ＝−２、３の方向を移動方向として決定する。つまり、むこの場合には、プレイヤキャラクタは方向転換を行うことになる。
【００５１】
その後、ステップＳ３５において、ＣＰＵ３６は、操作データの変位量データからプレイヤキャラクタの移動量を求め、その移動量を閾値Ａ，Ｂ，Ｃ，Ｄのそれぞれと比較する。ここで、「移動量」は、上記各軸変位量から求められるものである。たとえば、上述の例で、Ｘ軸変位量が「２」でＹ軸変位量が「３」のとき、現在のプレイヤキャラクタの位置を基準（原点）として、ルート（√）１３が移動量となる。別の例として、Ｘ軸変位量が「−２」でＹ軸変位量が「３」のときにも、同様に、プレイヤキャラクタの移動量は「ルート（√）１３」となる。このようにして移動量データを求めた後、その移動量と閾値Ａ−Ｄのそれぞれとを比較する。
【００５２】
そして、ステップＳ３７で、移動量が閾値Ａ以下かどうか判断し、このステップＳ３７で“ＹＥＳ”が判断されると、続くステップＳ３９において、ＣＰＵ３６は、そのときのプレイヤキャラクタの移動距離をαに設定し、その移動距離αを、たとえばメインメモリ４０の図示しないレジスタ領域に記憶させておく。なお、移動距離とは、ゲーム画面の次回の更新までの移動量を意味し、ゲーム画面がたとえば１フレームで更新されるなら、１フレームの移動量がαであることを意味する。
【００５３】
ステップＳ３７で“ＮＯ”のとき、ステップＳ４１で、ＣＰＵ３６は、移動量が閾値Ａより大きくかつ閾値Ｂ以下であるかどうか判断する。“ＹＥＳ”が判断されると、次のステップＳ４３で、ＣＰＵ３６は、移動距離としてβを設定し、記憶する。
【００５４】
ステップＳ４１で“ＮＯ”のとき、ステップＳ４５で、ＣＰＵ３６は、移動量が閾値Ｂより大きくかつ閾値Ｃ以下であるかどうか判断する。“ＹＥＳ”が判断されると、次のステップＳ４７で、ＣＰＵ３６は、移動距離としてγを設定し、記憶する。
【００５５】
ステップＳ４５でも“ＮＯ”のとき、ステップＳ４９で、ＣＰＵ３６は、移動距離としてεを設定し、記憶する。
【００５６】
ステップＳ３９，Ｓ４３，Ｓ４７またはＳ４９の後、つまりプレイヤキャラクタのそのときの移動距離を設定した後、ＣＰＵ３６は、次のステップＳ５１において、プレイヤキャラクタの向きおよび現在の位置と、上の各ステップで決定した移動距離およびステップＳ３３で決定した移動方向とに基づいて、プレイヤキャラクタの新たな座標位置を計算する。そして、次のステップＳ５３において、ＣＰＵ３６は、プレイヤキャラクタの位置をその新たな座標位置で更新する。
【００５７】
このようにして、コントローラ２２の操作に応答して、ＣＰＵ３６がこの図６のプログラムに従って、プレイヤキャラクタの座標位置を更新する。その後、先に説明した図４のステップＳ９にリターンする。
【００５８】
図８を参照すると、図４のステップＳ１７に示すゲーム画像生成処理ルーチンが示される。この図８の最初のステップＳ６１では、ＣＰＵ３６（図２）は、まず、地形オブジェクトの描画処理を実行し、続くステップＳ６３，Ｓ６５およびＳ６７において、プレイヤキャラクタの描画処理，敵キャラクタ（およびアイテム）および縮小マップの描画処理を順次実行する。
【００５９】
ステップＳ６１の地形オブジェクト描画処理ルーチンが図９に詳細に示される。図９の最初のステップＳ７１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７６から、壁オブジェクトや地面オブジェクトのような地形オブジェクトに対応するテクスチャデータ７６ｃを読み出す。
【００６０】
そして、次のステップＳ７３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影された地形オブジェクト（壁オブジェクト，地面オブジェクトなど）に相当する位置のフレームバッファ４８（図２）の各ピクセルに、地形オブジェクトのテクスチャを描画する。すなわち、フレームバッファの各ピクセルに相当する記憶位置に、地形オブジェクトの色情報を書き込む。
【００６１】
次のステップＳ７５で、ＣＰＵ３６は、そのときのピクセルに対応するＺバッファ５０（図２）の記憶位置に、地形オブジェクトの奥行き情報（Ｚ値）を書き込む。
【００６２】
ステップＳ７７で全てのピクセルの終了を検出するまで、上述のステップＳ７３およびＳ７５が繰り返し実行され、モニタ３４の表示画面の全部のピクセルの描画処理が終了したなら、図８のステップＳ６３へリターンし、プレイヤキャラクタ表示処理ルーチンＳ６３に進む。
【００６３】
ステップＳ６３（図８）のプレイヤキャラクタの描画処理ルーチンが図１０に詳細に示される。図１０の最初のステップＳ８１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７６から、プレイヤキャラクタに対応するテクスチャデータ７６ａを読み出す。
【００６４】
そして、次のステップＳ８３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影されたプレイヤキャラクタに相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ８５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が書込みしようとしているプレイヤキャラクタの奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、プレイヤキャラクタを描画すべきかどうか判断する。したがって、このステップＳ８５で“ＮＯ”が判断されると、そのままステップＳ６１に進む。
【００６５】
ステップＳ８５において“ＹＥＳ”が判断されると、次のステップＳ８７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ８９において、そのピクセルにプレイヤキャラクタのテクスチャ（色情報）を描画する。そして、次のステップＳ９１全てのピクセルの終了を検出するまで、上述のステップＳ８３−Ｓ８９が繰り返し実行され、モニタ３４の表示画面の全部のピクセルの描画処理が終了したなら、図８のステップＳ６５へリターンし、敵キャラクタ（およびアイテム）の描画処理ルーチンを実行する。
【００６６】
ステップＳ６５（図８）の敵キャラクタ（および／またはアイテム）の描画処理ルーチンが図１１に詳細に示される。図１１の最初のステップＳ１０１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７６２から、敵キャラクタ（アイテム）に対応するテクスチャデータ７６ｂを読み出す。
【００６７】
そして、次のステップＳ１０３において、ＣＰＵ３６は、２次元投影平面座標系に投影された敵キャラクタ（アイテム）に相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ１０５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が、書込みしようとしている敵キャラクタ（アイテム）の奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、敵キャラクタやアイテムを描画すべきかどうか判断する。したがって、このステップＳ１０５で“ＮＯ”が判断されると、そのままステップＳ１１１に進む。
【００６８】
ステップＳ１０５において“ＹＥＳ”が判断されると、次のステップＳ１０７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ１０９において、そのピクセルに敵キャラクタ（アイテム）のテクスチャ（色情報）を描画する。そして、次のステップＳ８１全てのピクセルの終了を検出するまで、上述のステップＳ１０３−Ｓ１０９が繰り返し実行され、モニタ３４の表示画面の全部のピクセルの描画処理が終了したなら、図８のステップＳ６７へリターンし、縮小マップ描画処理を実行する。
【００６９】
ステップＳ６７（図８）の縮小マップの描画処理ルーチンが図１２に詳細に示される。図１２の最初のステップＳ１２１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）の縮小マップテクスチャデータ記憶領域７０から、縮小マップを表示するためのテクスチャデータを読み出す。続いて、ＣＰＵ３６は、ステップＳ１２３において、先のステップＳ５３（図６）で決定したプレイヤキャラクタの配置座標位置を読み込む。それとともに、ステップＳ１２５において、ＣＰＵ３６は、先のステップＳ５１（図６）で用いたプレイヤキャラクタの向きを示す情報を読み込む。
【００７０】
そして、ステップＳ１２７において、ＣＰＵ３６は矢印テクスチャデータ記憶領域７２（図３）から矢印テクスチャデータを読み出すとともに、先に入手したプレイヤキャラクタの向きに応じて、その矢印の向きを決定し、その向きになるように、矢印テクスチャを縮小マップテクスチャ上に貼り付ける。したがって、たとえば図１３（Ａ）に示すように、縮小マップ８６内に、そのときのプレイヤキャラクタの向きに応じた方向を指示する矢印８８が合成される。
【００７１】
続くステップＳ１２９において、ＣＰＵ３６は、先の図６のステップＳ３９，Ｓ４３，Ｓ４７またはＳ４９で設定したプレイヤキャラクタの移動速度をメモリから読み出し、その移動距離（移動量）に応じて、縮小マップ画像（矢印８８を含む）８６の透明度を決定する。
【００７２】
実施例では、移動距離が最も小さいαのとき、図１３（Ａ）に示すように、縮小マップ８６の透明度はたとえば「０％」に設定する。移動距離がαになるような場合は、たとえばプレイヤキャラクタが停止しているか、もしくは殆ど移動しない場合であり、このような場合には、縮小マップ８６を完全に表示しても、つまりその縮小マップ８６でその部分のゲーム画像が遮蔽もしくは隠蔽されても、ゲームプレイヤによる操作には殆ど影響を与えない。
【００７３】
移動距離が２番目に小さいβのときには、図１３（Ｂ）に示すように、縮小マップ８６の透明度はたとえば「２０％」に設定する。同様に、移動距離が３番目に小さいγのときには、図１３（Ｃ）に示すように、縮小マップ８６の透明度はたとえば「５０％」に設定する。移動距離が最も大きいεのときには、図１３（Ｄ）に示すように、縮小マップ８６の透明度はたとえば「８０％」に設定する。つまり、この実施例では、プレイヤキャラクタの移動距離が大きければ大きいほど、縮小マップ８６の透明度を小さく設定することによって、高速で移動するプレイヤキャラクタをゲームプレイヤが操作するときに、できるだけ支障を与えないようにする。
【００７４】
さらに、次のステップＳ１３１では、ステップＳ１２５で取り込んだプレイヤキャラクタの向きを参照して、縮小マップ８６の描画位置を決定する。つまり、縮小マップ８６の表示は、上述のようにマップの透明度を変化させるものの、ゲームプレイヤの視界に影響を与えるものであるので、プレイヤキャラクタが移動しようとしている方向（向き）には縮小マップを表示しないようにして、そのような視界に与える影響をできるだけ少なくしようとするものである。
【００７５】
図１４に示すように、ゲーム画面３４Ａ中にプレイヤキャラクタ７４や地形オブジェクトなどを含むゲーム画像が表示され、そのゲーム画面３４Ａ上に縮小マップ８６が表示されるが、図１４（Ａ）に示す場合にはプレイヤキャラクタ７４はゲーム画面３４Ａ上においてたとえば左上方向に向いているので、この場合には縮小マップ８６の表示（描画）位置はゲーム画面３４Ａのたとえば右下として決定する。図１４（Ｂ）に示す場合にはプレイヤキャラクタ７４はゲーム画面３４Ａ上においてたとえば右下方向に向いているので、この場合には縮小マップ８６の表示位置はゲーム画面３４Ａのたとえば左上として決定する。
【００７６】
このようにして、ステップＳ１３１において、ゲームプレイヤの操作に影響をできるだけ与えないようにする目的で、縮小マップ８６の描画位置を決定する。
【００７７】
そして、ステップＳ１３３において、ＣＰＵ３６およびＧＰＵ７２は、ステップＳ１３１で設定した縮小マップの描画位置におけるゲーム画像の各ピクセルの色情報と、縮小マップ８６の各ピクセルの色情報とを、ステップＳ１２９で決定した透明度に従った割合で混合し、その色情報をフレームバッファ４８（図２）の対応の各ピクセルに書き込む。したがって、縮小マップが所定透明度で所定位置に表示される。
【００７８】
そして、次のステップＳ１３５で全てのピクセルの終了を検出するまで、上述のステップＳ１３３が繰り返し実行され、モニタ３４の表示画面の全部のピクセルの描画処理が終了したなら、図４のステップＳ１９へリターンする。
【図面の簡単な説明】
【図１】図１はこの発明の一実施例のゲームシステムを示す図解図である。
【図２】図２は図１一実施例のゲーム機を詳細に示すブロック図である。
【図３】図３は図２におけるメインメモリのメモリマップの一例を示す図解図である。
【図４】図１実施例の動作を示すフロー図である。
【図５】図５はワールド座標系およびカメラ座標系を示す図解図である。
【図６】図６はプレイヤキャラクタの位置決定処理ょ示すフロー図である。
【図７】図７はコントローラから入力されるデータ（操作信号）の一例を示す図解図である。
【図８】図８は図４におけるゲーム画像生成処理の動作を示すフロー図である。
【図９】図９は図８における地形オブジェクト等の描画処理の動作を示すフロー図である。
【図１０】図１０は図８におけるプレキヤキャラクタ描画処理の動作を示すフロー図である。
【図１１】図１１は図８における敵キャラクタ（およびアイテム）の描画処理の動作を示すフロー図である。
【図１２】図１２は図８における縮小マップの描画処理の動作を示すフロー図である。
【図１３】図１３は実施例において縮小マップがプレイヤキャラクタの移動速度に応じて透明度を変化することを示す図解図である。
【図１４】図１４は実施例において縮小マップがプレイヤキャラクタの移動方向に応じて表示位置を変化することを示す図解図である。
【符号の説明】
１０　…ゲームシステム
１２　…ゲーム機
２２　…コントローラ
３４　…モニタ
３４Ａ　…ゲーム画面
３６　…ＣＰＵ
４０　…メインメモリ
４２　…ＧＰＵ
８６　…縮小マップ
８８　…矢印
【図１】
2004000368.tif 000003
【図２】
2004000368.tif 000004
【図３】
2004000368.tif 000005
【図４】
2004000368.tif 000006
【図５】
2004000368.tif 000007
【図６】
2004000368.tif 000008
【図７】
2004000368.tif 000009
【図８】
2004000368.tif 000010
【図９】
2004000368.tif 000011
【図１０】
2004000368.tif 000012
【図１１】
2004000368.tif 000013
【図１２】
2004000368.tif 000014
【図１３】
2004000368.tif 000015
【図１４】
2004000368.tif 000016