(57)【特許請求の範囲】
【請求項１】
３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示するゲーム装置であって、
複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出手段と、
前記３次元ゲーム空間に設定された風速を取得し、該風速を前記複数の霧片ポリゴン毎に生成される乱数に基づいて変化させて、該変化させた風速に基づいて前記複数の霧片ポリゴンの移動速度を取得する霧片ポリゴン移動速度取得手段と、
前記移動速度にて前記複数の霧片ポリゴンのそれぞれを移動させる霧片ポリゴン移動手段と、
前記視点からの視線方向を取得する視線方向取得手段と、
前記複数の霧片ポリゴンの各姿勢を前記視線方向と該複数の霧片ポリゴンの法線方向とが平行となるように決定する霧片ポリゴン姿勢決定手段と、
前記複数の霧片ポリゴンが配置された前記３次元ゲーム空間の前記視点から見た様子を前記ゲーム画面として表示する霧片ポリゴン表示手段と、を含み、
前記複数の霧片ポリゴンには透明な背景画像上に半透明で描かれた霧のテクスチャが貼付される、
ことを特徴とするゲーム装置。
【請求項２】
請求項１に記載のゲーム装置において、
前記霧片ポリゴン位置算出手段は、前記３次元ゲーム空間に配置されるオブジェクトの位置に基づいて、各霧片ポリゴンの位置を所定周期で算出する、
ことを特徴とするゲーム装置。
【請求項３】
請求項１又は２に記載のゲーム装置において、
前記霧片ポリゴン位置算出手段は、乱数発生手段を含み、該乱数発生手段により発生される乱数に基づいて、各霧片ポリゴンの初期位置を算出する、
ことを特徴とするゲーム装置。
【請求項４】
３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示するゲーム装置としてコンピュータを機能させるためのプログラムであって、
透明な背景画像上に半透明で描かれた霧のテクスチャが貼付される複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出手段、
前記３次元ゲーム空間に設定された風速を取得し、該風速を前記複数の霧片ポリゴン毎に生成される乱数に基づいて変化させて、該変化させた風速に基づいて前記複数の霧片ポリゴンの移動速度を取得する霧片ポリゴン移動速度取得手段、
前記移動速度にて前記複数の霧片ポリゴンのそれぞれを移動させる霧片ポリゴン移動手段、
前記視点からの視線方向を取得する視線方向取得手段、
前記複数の霧片ポリゴンの各姿勢を前記視線方向と該複数の霧片ポリゴンの法線方向とが平行となるように決定する霧片ポリゴン姿勢決定手段、及び、
前記複数の霧片ポリゴンが配置された前記３次元ゲーム空間の前記視点から見た様子を前記ゲーム画面として表示する霧片ポリゴン表示手段、
として前記コンピュータを機能させるプログラム。
【請求項５】
３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示する方法であって、
複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出ステップと、
前記３次元ゲーム空間に設定された風速を取得し、該風速を前記複数の霧片ポリゴン毎に生成される乱数に基づいて変化させて、該変化させた風速に基づいて前記複数の霧片ポリゴンの移動速度を取得する霧片ポリゴン移動速度取得ステップと、
前記移動速度にて前記複数の霧片ポリゴンのそれぞれを移動させる霧片ポリゴン移動ステップと、
前記視点からの視線方向を取得する視線方向取得ステップと、
前記複数の霧片ポリゴンの各姿勢を前記視線方向と該複数の霧片ポリゴンの法線方向とが平行となるように決定する霧片ポリゴン姿勢決定ステップと、
前記複数の霧片ポリゴンが配置された前記３次元ゲーム空間の前記視点から見た様子を前記ゲーム画面として表示する霧片ポリゴン表示ステップと、を含み、
前記複数の霧片ポリゴンには透明な背景画像上に半透明で描かれた霧のテクスチャが貼付される、
ことを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はゲーム装置、ゲーム画面表示方法及びプログラムに関し、特にゲーム画面に霧を表示する技術に関する。
【０００２】
【従来の技術】
３次元ゲーム空間（オブジェクト空間）にゲームキャラクタ等のオブジェクトを配置し、該３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示するゲーム、いわゆる３次元ゲームが人気を博している。かかる３次元ゲームにおいては、演出上、霧をゲーム画面に表示する必要がしばしば生じる。
【０００３】
【発明が解決しようとする課題】
従来の３次元ゲームにおいて霧をゲーム画面に表示する場合、３次元ゲーム空間に霧を表すポリゴンを配置し、それを所与の視点から見た様子をゲーム画面に表示する等、その表現方法は貧弱であった。
【０００４】
本発明は上記課題に鑑みてなされたものであって、その目的は、比較的少ない演算量で霧表示のリアリティーを向上させることができるゲーム装置、ゲーム画面表示方法及びプログラムを提供することにある。
【０００５】
【課題を解決するための手段】
上記課題を解決するために、本発明に係るゲーム装置は、３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示するゲーム装置であって、複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出手段と、前記視点からの視線方向を取得する視線方向取得手段と、前記複数の霧片ポリゴンの各姿勢を前記視線方向に基づいて決定する霧片ポリゴン姿勢決定手段と、前記複数の霧片ポリゴンを前記ゲーム画面に表示する霧片ポリゴン表示手段と、を含むことを特徴とする。
【０００６】
また、本発明に係るプログラムは、３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示するゲーム装置としてコンピュータを機能させるためのプログラムであって、複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出手段、前記視点からの視線方向を取得する視線方向取得手段、前記複数の霧片ポリゴンの各姿勢を前記視線方向に基づいて決定する霧片ポリゴン姿勢決定手段、及び、前記複数の霧片ポリゴンを前記ゲーム画面に表示する霧片ポリゴン表示手段、として前記コンピュータを機能させるプログラムである。
【０００７】
また、本発明に係るゲーム画面表示方法は、３次元ゲーム空間を所与の視点から見た様子をゲーム画面に表示する方法であって、複数の霧片ポリゴンの前記３次元ゲーム空間における各位置を所定周期で算出する霧片ポリゴン位置算出ステップと、前記視点からの視線方向を取得する視線方向取得ステップと、前記複数の霧片ポリゴンの各姿勢を前記視線方向に基づいて決定する霧片ポリゴン姿勢決定ステップと、前記複数の霧片ポリゴンを前記ゲーム画面に表示する霧片ポリゴン表示ステップと、を含むことを特徴とする。
【０００８】
本発明では、３次元ゲーム空間に複数の霧片ポリゴンが配置される。霧片ポリゴンは、例えば四角形又は三角形の比較的小さな面積のポリゴンであり、テクスチャとして霧を描いた画像が貼付されるものである。該画像としては、例えば透明の背景画像の上に半透明灰色の点が多数描かれたものが用いられる。霧片ポリゴンの各位置は所定周期で算出される。また、霧片ポリゴンの姿勢は視線方向に基づいて、例えば視線方向と各霧片ポリゴンの法線方向とが平行となるよう決定される。こうして決定される位置及び姿勢にて、各霧片ポリゴンは３次元ゲーム空間に配置される。そして、それを所与の視点から見た画像が表示される。こうすれば、比較的少ない演算量で霧表示のリアリティーを向上させることができる。
【０００９】
本発明の一態様では、前記霧片ポリゴン位置算出手段は、前記３次元ゲーム空間に配置されるオブジェクトの位置に基づいて、各霧片ポリゴンの位置を所定周期で算出する。この態様では、例えば各霧片ポリゴンと３次元ゲーム空間に配置されるオブジェクトとの間の衝突を考慮する等して、各霧片ポリゴンの位置が算出される。こうすれば、霧表示のリアリティーを比較的少ない演算量でさらに向上させることができる。
【００１０】
また、本発明の一態様では、前記霧片ポリゴン位置算出手段は、乱数発生手段を含み、該乱数発生手段により発生される乱数に基づいて、各霧片ポリゴンの初期位置を算出する。こうすれば、霧表示をより自然なものとすることができる。
【００１１】
【発明の実施の形態】
以下、本発明の好適な実施の形態について図面に基づき詳細に説明する。
【００１２】
図１は、本発明の一実施の形態に係るゲーム装置のハードウェア構成を示す図である。同図に示すゲーム装置１０は、家庭用ゲーム機１１に、モニタ１８及びスピーカ２２を接続し、さらに情報記憶媒体たるＤＶＤ（商標）２５を装着することによって構成されるものである。ここでは、ゲームプログラムやゲームデータを家庭用ゲーム機１１に供給するためにＤＶＤ２５を用いるが、ＣＤ−ＲＯＭやＲＯＭカード等、他のあらゆる情報記憶媒体を用いることができる。また、通信ネットワークを介して遠隔地からゲームプログラムやゲームデータを家庭用ゲーム機１１に供給するようにしてもよい。
【００１３】
家庭用ゲーム機１１は、マイクロプロセッサ１４、画像処理部１６、主記憶２６及び入出力処理部３０がバス１２により相互データ通信可能に接続され、さらに入出力処理部３０に、コントローラ３２、音声処理部２０及びＤＶＤ再生部２４が接続された、公知のコンピュータゲームシステムである。コントローラ３２以外の家庭用ゲーム機１１の各構成要素は筐体内に収容されている。モニタ１８には例えば家庭用のテレビ受像機が用いられ、スピーカ２２には例えばその内蔵スピーカが用いられる。
【００１４】
マイクロプロセッサ１４は、図示しないＲＯＭに格納されるオペレーティングシステムやＤＶＤ２５から読み出されるゲームプログラムに基づいて、家庭用ゲーム機１１の各部を制御する。バス１２はアドレス及びデータを家庭用ゲーム機１１の各部でやり取りするためのものである。また、主記憶２６には、ＤＶＤ２５から読み取られたゲームプログラム及びゲームデータが必要に応じて書き込まれる。また、主記憶２６は、マイクロプロセッサ１４による各種データ処理のため、作業領域も確保される。画像処理部１６はＶＲＡＭ（Video RAM）を含んで構成されており、マイクロプロセッサ１４から送られる画像データを受け取ってＶＲＡＭ上にゲーム画面を描画するとともに、その内容をビデオ信号に変換して所定タイミングでモニタ１８に出力する。
【００１５】
入出力処理部３０はコントローラ３２、音声処理部２０及びＤＶＤ再生部２４とマイクロプロセッサ１４との間のデータ通信を中継するためのインターフェースである。コントローラ３２はプレイヤがゲーム操作をするための入力手段である。入出力処理部３０は一定周期（例えば１／６０秒毎）にコントローラ３２の各種ボタンの操作状態をスキャンし、そのスキャン結果を表す操作情報をバス１２を介してマイクロプロセッサ１４に渡す。マイクロプロセッサ１４は、その操作情報に基づいてプレイヤによるコントローラ３２の操作内容を判定する。音声処理部２０はサウンドバッファを含んで構成されており、ＤＶＤ２５から読み出されてサウンドバッファに記憶された音楽やゲーム効果音等のデータを再生してスピーカ２２から出力する。ＤＶＤ再生部２４は、マイクロプロセッサ１４からの指向に従ってＤＶＤ２５に記録されたゲームプログラム及びゲームデータを読み取る。
【００１６】
本ゲーム装置１０では、主記憶２６に仮想的なゲーム空間、すなわち３次元ゲーム空間（仮想３次元空間）が構築されるようになっている。図２は、この３次元空間の一部を模式的に示す斜視図である。同図に示すように、３次元ゲーム空間４０には、地面ポリゴン４６の上にプレイヤゲームキャラクタ４８が配置されている。プレイヤゲームキャラクタ４８は、コントローラ３２の操作により、地面ポリゴン４６の上を移動させることができるようになっている。また、プレイヤゲームキャラクタ４８の後方上空には仮想カメラ４４が配置されている。仮想カメラ４４はプレイヤゲームキャラクタ４８の後頭部、及びプレイヤゲームキャラクタ４８の前方を写すよう、その撮影方向が設定されている。この仮想カメラ４４は仮想的な撮像手段であり、同仮想カメラ４４によって写される３次元ゲーム空間４０の様子がモニタ１８に表示される。
【００１７】
プレイヤゲームキャラクタ４８の前方には多数の霧片ポリゴン４２が配置されている。霧片ポリゴン４２は、例えば図３に示すように矩形のポリゴンであり、霧を描いたテクスチャが貼付されるものである。このテクスチャは、例えば透明の背景の上に、半透明灰色の点を多数、ランダムに配置したものである。霧片ポリゴン４２は、３次元ゲーム空間４０の所定霧発生領域に配置されるものであり、霧発生領域内での初期位置は乱数により決定されるようになっている。乱数は、例えば公知の乱数発生アルゴリズムを実行することにより生成される。また、霧片ポリゴン４２の３次元ゲーム空間４０における各位置は、所定周期（例えば１／６０秒毎）で更新される。具体的には、霧発生領域には風向及び風速が設定されており、それらの値に基づいて各霧片ポリゴン４２は霧発生領域を移動するようになっている。例えば、同図において、左端から右端に向けて風向が設定されていれば、各霧片ポリゴン４２は所定周期で徐々に位置を右側に移す。そして、右端に達すると再び左端に戻る。なお、風向及び風速が変化するようにしてもよい。また、各霧片ポリゴン４２の位置を算出する場合、他のオブジェクト、例えばプレイヤゲームキャラクタ４８や樹木オブジェクト５０との衝突も考慮される。すなわち、プレイヤゲームキャラクタ４８や樹木オブジェクト５０の周囲、特に風上の霧片ポリゴン４２については、これらのオブジェクトの位置、形状、移動速度、質量等のパラメータに基づいて、その位置が更新されるようになっている。なお、他のオブジェクトとの衝突は、オブジェクトそれ自体の位置及び形状を用いて計算してもよいが、オブジェクトに従動する仮想的な（不可視の）オブジェクトを用いて計算してもよい。例えば、プレイヤゲームキャラクタ４８については、その前方に矩形のオブジェクトを配置し、該オブジェクトと各霧片ポリゴン４２との衝突を計算するようにしてもよい。また、各霧片ポリゴン４２の姿勢については、例えば一辺が地面ポリゴン４６に平行となり、法線方向が仮想カメラ４４の撮影方向に平行となるよう、所定周期で設定される。
【００１８】
以下、本ゲーム装置１０におけるゲーム処理について図４及び図５に示すフロー図に基づいて詳細に説明する。
【００１９】
図４は、本ゲーム装置１０において所定時間毎（例えば１／６０毎）に実行されるメイン処理を示すフロー図である。同図に示すように、本ゲーム装置１０では、まず環境処理を実行する（Ｓ１０１）。環境処理では、３次元ゲーム空間４０のすべての静的オブジェクト及び動的オブジェクトの位置及び姿勢を算出する。静的オブジェクトは、建物等の位置を変えないオブジェクトである。これに対して動的オブジェクトは、プレイヤゲームキャラクタや敵ゲームキャラクタのように位置や姿勢を変えるオブジェクトである。
【００２０】
環境処理では、視点座標、視線方向及び画角も算出する。例えば、標準状態では、視点座標をプレイヤゲームキャラクタ４４の後方上空に設定する。また、視線方向を、プレイヤゲームキャラクタ４４の前方を向くよう設定する。こうして、視点がプレイヤゲームキャラクタ５８に従動するようにしている。なお、画角には、例えば固定値を用いる。こうして算出される視点座標、視線方向及び画角に従って、仮想カメラ４４が３次元ゲーム空間４０に仮想的に配置される。
【００２１】
その後、本ゲーム装置１０ではジオメトリ処理を実行する（Ｓ１０２）。ジオメトリ処理では、ワールド座標系（ＸＷ，ＹＷ，ＺＷ）から視点座標系、すなわち視点座標を原点とし、視線方向をＺ方向、水平方向をＸ方向、垂直方向をＹ方向とする座標系への座標変換を行う。また、各オブジェクトを構成するポリゴンについて、頂点の色情報を光源情報（光源の色及び位置）に基づいて算出する。さらに、クリッピング処理も行う。
【００２２】
その後、本ゲーム装置１０は、レンダリング処理を実行する（Ｓ１０３）。すなわち、マイクロプロセッサ１４が、視野範囲内の各ポリゴンの頂点座標、頂点色情報及びテクスチャ座標等を画像処理部１６に渡す。そして、画像処理部１６が、それらの情報に基づいてＶＲＡＭ上にゲーム画面を表す画像を形成する。この画像は、視点座標系で記述された各オブジェクトをスクリーン座標系に変換することによって形成される。こうして、ＶＲＡＭに形成される画像は所定タイミングでモニタ１８に出力される。
【００２３】
図５は、霧片ポリゴン４２の位置及び姿勢決定処理を説明するフロー図である。同図に示す処理は、図４に示すメイン処理において、環境処理（Ｓ１０１）の一部として実行されるものである。この処理では、まず仮想カメラ４４の撮影方向（視線方向）を取得する（Ｓ２０１）。次に、カウンタ変数ｉを零に初期化する（Ｓ２０２）。そして、第ｉの霧片ポリゴン４２の現在位置を取得する（Ｓ２０３）。なお、霧片ポリゴン４２の初期位置は乱数により決定される。次に、現在の風向及び風速を取得する（Ｓ２０４）。風向及び風速は、霧発生領域に対して固定的に設定しておいてもよいし、時間が経つにつれて変化するようにしてもよい。さらに、他のオブジェクト、例えばプレイヤゲームキャラクタ４８や樹木オブジェクト５０の位置、速度等のパラメータを取得するとともに（Ｓ２０５）、乱数を生成する（Ｓ２０６）。
【００２４】
次に、Ｓ２０３乃至Ｓ２０５で得られた情報に基づき、第ｉの霧片ポリゴン４２の位置を更新する（Ｓ２０７）。例えば、風向及び風速に基づいて霧片ポリゴン４２の移動方向及び移動速度を算出する。このとき、乱数を移動方向及び移動速度に加算し、或いは移動方向及び移動速度から乱数を減算するようにしてもよい。その後、他のオブジェクトの位置や速度等のパラメータに基づき、それらオブジェクトと第ｉの霧片ポリゴン４２とが衝突するか否かを判断し、衝突する場合には、衝突後の第ｉの霧片ポリゴン４２の位置を算出する。また、衝突しない場合には、算出した霧片ポリゴン４２の移動方向及び移動速度に基づいて位置を更新する。
【００２５】
その後、Ｓ２０７で算出した第ｉの霧片ポリゴン４２の位置が視野範囲外（仮想カメラの撮影範囲外）であるか否かを判断する。そして、視野範囲外であれば、第ｉの霧片ポリゴン４２の位置を風上に移動させる（Ｓ２０９）。一方、視野範囲内であれば、Ｓ２０９の処理をスキップする。最後に、視線方向（仮想カメラの撮影方向）に基づいて第ｉの霧片ポリゴン４２の姿勢を決定する（Ｓ２１０）。以上のＳ２０３乃至Ｓ２０９の処理は、カウンタ変数ｉがＮ（霧片ポリゴン４２の総数から１を引いたもの）に達するまで（Ｓ２１１）、カウンタ変数ｉを１ずつインクリメントしながら続行される（Ｓ２１２）。
【００２６】
以上説明したゲーム装置１０によれば、３次元ゲーム空間４０に多数の霧片ポリゴン４２が配置され、風向や風速、他のオブジェクトとの衝突を考慮して、それらの位置が更新されるので、霧が流れる様子を好適に表現することができる。また、霧片ポリゴン４２とプレイヤゲームキャラクタ４８との衝突も考慮されるので、プレイヤゲームキャラクタ４８が霧発生領域に進入すると、周囲の霧がプレイヤゲームキャラクタ４８を避けるようになり、プレイヤゲームキャラクタ４８が霧発生領域に進入する様子を好適に表示することができる。
【００２７】
【発明の効果】
以上説明したように、本発明によれば、３次元ゲーム空間に複数の霧片ポリゴンを配置し、その位置を所定周期で算出するとともに、その姿勢を視線方向に基づいて決定するようにしたので、霧表示のリアリティーを比較的少ない演算量で向上させることができる。
【図面の簡単な説明】
【図１】  本発明の実施の形態に係るゲーム装置のハードウェア構成を示す図である。
【図２】  ３次元ゲーム空間を模式的に示す図である。
【図３】  霧片テクスチャ画像が貼付された霧片ポリゴンの一例を示す図である。
【図４】  本発明の実施の形態に係るゲーム装置において実行されるメイン処理を示すフロー図である。
【図５】  本発明の実施の形態に係るゲーム装置において実行される霧片位置・姿勢算出ルーチンを示すフロー図である。
【符号の説明】
１０  ゲーム装置、１１  家庭用ゲーム機、１２  バス、１４  マイクロプロセッサ、１６  画像処理部、１８  モニタ、２０  音声処理部、２２  スピーカ、２４  ＤＶＤ再生部、２５  ＤＶＤ、２６  主記憶、３０  入出力処理部、３２  コントローラ、４０  ３次元ゲーム空間、４２  霧片ポリゴン、４４  仮想カメラ、４６  地面ポリゴン、４８  プレイヤゲームキャラクタ、５０  樹木オブジェクト。
【図１】
0003646988.tif 000002
【図２】
0003646988.tif 000003
【図３】
0003646988.tif 000004
【図４】
0003646988.tif 000005
【図５】
0003646988.tif 000006