JP4688405B2 - プログラム、情報記憶媒体及びゲーム装置 - Google Patents
プログラム、情報記憶媒体及びゲーム装置 Download PDFInfo
- Publication number
- JP4688405B2 JP4688405B2 JP2003031296A JP2003031296A JP4688405B2 JP 4688405 B2 JP4688405 B2 JP 4688405B2 JP 2003031296 A JP2003031296 A JP 2003031296A JP 2003031296 A JP2003031296 A JP 2003031296A JP 4688405 B2 JP4688405 B2 JP 4688405B2
- Authority
- JP
- Japan
- Prior art keywords
- color
- viewpoint
- sky
- virtual space
- game
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、コンピュータに、所与の視点から見た仮想空間の画像を生成して所与のゲームを実行させるためのプログラム等に関する。
【0002】
【従来の技術】
従来では、3次元の仮想空間を利用した様々なゲーム(以下、3Dゲームという)が開発されている。この3Dゲームでは、一般的に、個々の物体やキャラクタをポリゴンと呼ばれる平面を複数組み合わせたモデルによって定義している。そして、ゲーム実行中においては、プレーヤの入力指示やゲームシナリオに従って各物体やキャラクタの位置を変化させるとともに、1フレーム毎に視点の位置と向きを決定し、その視点から見える範囲を描画してゲーム画像を生成している。
【0003】
なお、3Dゲームの主な特徴(あるいは、共通点)は、仮想空間をよりリアルに表現することによって臨場感を向上させ、プレーヤのゲームに対する没入を促すことにある。一般的に、物体を構築するポリゴンの数を増加させれば、それだけ形状を詳細に表現することが可能となり、より写実的な画像を生成することができる。ただし、3Dゲームでは、プレーヤ入力に応じてリアルタイムに画像を生成する必要から、画像生成処理に費やせる時間に制限があり、ポリゴン数を無制限に増やすことはできない。そこで、多くの場合では、ゲーム画像の現実感を損なわない程度にポリゴン数を削減している。例えば、視点の視線方向に存在する全てのオブジェクトを描画するといったことはせずに、視点に対する一定距離以内に存在するオブジェクトのみを描画するといった処置を取ることがある。
【0004】
しかし、このように、視点から離れた範囲を描画しないように設定すると、高い位置から地表を見下ろした場合に、描画範囲より遠くの地表が突然途切れたように見える恐れがある。従来では、こうした場合において、描画範囲の末端部近傍をぼかして表現することによって、地平線に見たてるといった方法が採用されていた。
【0005】
【発明が解決しようとする課題】
しかしながら、従来のように、描画範囲によって地形の後方について切り取られた位置を地平線として扱った場合、画面上に表示される地平線の位置が本来予測される地平線の位置よりも視点に対して近く感ぜられることとなる。すなわち、不自然に地球が小さく見えるといった恐れがある。あるいは、地平線が近く見えることによって、視点の位置が必要以上に高く感じられ、仮想空間における位置関係が把握し難かった。また、日の出や日の入といったシーンにおいて、視点の高度の変化に伴って地平線位置は顕著に移動するのに対し、太陽の表示位置は変化しない。このため、例えば、視点の高度が上がると同時に、太陽が昇るように見えてしまい、違和感を禁じえなかった。
【0006】
本発明は、上記事柄を鑑みて成されたものであって、遠景の環境をより簡単に、かつリアルに表現することを目的とする。
【0007】
【課題を解決するための手段】
上記課題を解決するための発明として、コンピュータに、所与の視点から見た背景を含む仮想空間の画像を生成して所与のゲームを実行させるためのプログラムであって、前記画像に含まれる背景の色情報のうち、前記仮想空間内の水平方向と平行な線上の色情報を均一化せしめ、前記所与の視点の視線方向および/または視点位置が変化することによって、前記線上の色情報を変更する第1の手段として前記コンピュータを機能させるためのプログラムの発明が考えられる。
【0008】
また、他の発明として、所与の視点から見た背景を含む仮想空間の画像を生成して所与のゲームを実行するゲーム装置であって、前記画像に含まれる背景の色情報のうち、前記仮想空間内の水平方向と平行な線上の色情報を均一化せしめ、前記所与の視点の視線方向および/または視点位置が変化することによって、前記線上の色情報を変更する第1の手段を備えるゲーム装置の発明が考えられる。
【0009】
この発明によれば、生成する画像のうち、仮想空間における略水平なライン上の色を同一の色によって表現することができる。したがって、仮想空間における水平な1つのライン上の色を決定する際には、そのライン上の1点について色を計算すれば足り、より画像を生成する速度を高速化することができる。
【0010】
また、その他の発明として次のような発明が考えられる。
まず第1の発明として、コンピュータに、所与の視点から見た背景を含む仮想空間の画像を生成して所与のゲームを実行させるためのプログラムであって、前記所与の視点を内包する仮想体(例えば、本実施の形態におけるドーム110)を前記仮想空間に配置する仮想体配置手段と、前記仮想体の色情報に基づいて前記背景の色を決定する背景色決定手段として前記コンピュータを機能させ、更に、前記仮想体配置手段に対して、前記仮想体の所定基準位置(例えば、本実施の形態におけるドーム110の頭部112と側部114の接合部分)が、前記仮想空間内の所定位置(例えば、本実施の形態における地平線位置)と前記所与の視点とを結ぶ線上に位置するように前記仮想体を配置する、ように機能させるためのプログラムを構成してもよい。
【0011】
この第1の発明によれば、仮想空間内の所定位置と視点とを結ぶ線上に仮想体の所定基準位置が位置するように仮想体を配置することができる。したがって、仮想体によって表現する環境の色と仮想空間に設定した環境との位置関係を正確に対応付け、視点が移動する場合であっても、常に的確に環境を表現することができる。
【0012】
あるいは、仮想体に地平線の色を配色し、仮想空間における地平線位置と視点とを結ぶ線上に仮想体に配色した地平線が位置するように仮想体を配置すれば、視点の高度によらず、常に理想的な位置に地平線を表現することができる。すなわち、第2の発明として、第1の発明のプログラムであって、前記仮想空間内の所定位置を、前記仮想空間の地平線位置とし、前記背景色決定手段に対して、前記仮想体における前記所定基準位置に基づいて、前記仮想空間の地表と天空との境界を表現するための色を決定する、ように機能させるためのプログラムを構成してもよい。このように仮想体を配置することにより、描画範囲を制限して地形の後方を切り取るような場合であっても、視点の高度変化に伴って地平線位置が奇妙に移動するといった問題を防ぐことができる。
【0013】
また、第3の発明として、第1または第2の発明のプログラムであって、前記仮想体を、少なくとも半球状の頭部(例えば、図5に示す頭部112)を含む形状とし、前記仮想体配置手段に対して、前記半球状の頭頂を前記仮想空間の天頂方向に向けるとともに、前記半球状の縁部を前記所定基準位置として前記仮想体を配置する、ように機能させるためのプログラムを構成してもよい。
【0014】
この第3の発明によれば、仮想体を半球状の頭部を含む構成とし、その頂上を仮想空間における天頂方向に向けるとともに、頭部の縁部分を所定基準位置として設定することができる。すなわち、視点を内包する逆さにしたお椀状のドームによって仮想空間の背景の色を決定することができる。このとき、頭部の縁、すなわち、お椀の縁に相当する部分に地平線の色を与え、視点と仮想空間における地平線位置とを結ぶ線上に縁部が位置するように頭部を配置すれば、仮想体の頭部によって常に空を表現することができる。
【0015】
なお、描画範囲を制限し、地形の後方を切り取るような場合には、生成する画像における地形の後方切り取り位置から地平線位置までの部分に対して、適当な地表の色を補うこととする。地表の色を補う方法は、いかなる方法であってもかまわない。例えば、画像を生成する最初に、画面全体に地表の色を配色し、次いで、仮想体の頭部に基づいて空の色を上書きし、順次、仮想空間に存在するオブジェクトを上書きするといった構成であってもよい。
【0016】
また、第4の発明として、第3の発明のプログラムであって、前記仮想空間の地表と前記頭部との間に、側部(例えば、図5に示す側部114)を前記仮想体に具備させる側部接合手段として更に前記コンピュータを機能させ、前記背景色決定手段に対して、前記側部の色情報に基づいて、前記仮想空間の地表の色を決定するように機能させるためのプログラムを構成してもよい。
【0017】
この第4の発明によれば、仮想体に対して、頭部の下に、地表の色を決定するための側部を具備させることができる。したがって、例えば、頭部における縁部に、地表方向に延長する円筒形の側部を接合すれば、地形オブジェクトの後方をクリッピングする場合であっても、画像における地平線と地形オブジェクトの間の色を側部の色によって簡単に補うことが可能となる。
【0018】
なお、側部の形状を、頭部の縁部分から地表まで延長させた形状によって定義すれば、視点の高度が変化しても、常に、画像上の地平線と地形の後方切り取り位置との間部分の色をもれなく決定することができる。すなわち、第5の発明として、第4の発明プログラムであって、前記側部接合手段に対して、前記所与の視点の位置に応じて前記側部の全高を変更する、ように機能させるためのプログラムを構成してもよい。
【0019】
また、第6の発明として、第1から第5のいずれかの発明のプログラムであって、前記仮想体に特定点(例えば、図9に示す特定点Top、H0〜2、B1,2)と、当該特定点の色情報とを設定する特定点設定手段として前記コンピュータを更に機能させ、前記背景色決定手段に対して、前記仮想体の色情報を前記特定点の色情報に基づいて算出して前記背景の色情報を決定する、ように機能させるためのプログラムを構成してもよい。
【0020】
この第6の発明によれば、仮想体上の特定点にのみ色を定義し、仮想体における任意の点の色は、各特定点に与えられた色に基づいて決定することができる。したがって、仮想体の色をテクスチャ等により記憶する必要がなく、メモリを節約することができる。また、仮想体における任意の点の色を決定する際に、その点と各特定点との位置関係に応じて各特定点に与えられた色を合成することとすれば、仮想体の形状に合わせて色を段階的に変化させることができる。例えば、仮想体をお椀状のドームによって定義し、その天頂に紺の色を持つ特定点を、縁部分に白の特定点をそれぞれ設定すれば、天頂から地平線までの色を、視点から見える大気の厚みの変化に応じて徐々に色が変化する様子を尤らしく表現することができる。
【0021】
なお、仮想体に特定点を設け、各特定点の色に基づいて仮想体上の色を決定する場合には、画像を生成する度に仮想体全体の色を計算する必要はなく、画面上に表示する範囲の色のみを決定すればよい。すなわち、第7の発明として、第1から第5のいずれかの発明のプログラムであって、前記仮想体に特定点と、当該特定点の色情報とを設定する特定点設定手段と、前記仮想体における所与の位置の色情報を、前記特定点の色情報、及び、前記特定点と前記所与の位置との位置関係に基づいて算出する算出手段として前記コンピュータを更に機能させるとともに、前記背景色決定手段に対して、前記仮想体における所与の位置の色情報に基づいて前記背景の色情報を決定する、ように機能させるためのプログラムを構成してもよい。
【0022】
また、画面上に表現する仮想空間の範囲、すなわち、視界の範囲と、仮想空間に定義する地球の大きさとを比較すれば、仮想空間における水平方向の色の変化は視界範囲において微妙であり、同一色で表現しても違和感を与えない。そこで、第8の発明として、第7の発明のプログラムであって、前記背景色決定手段に対して、前記画像に含まれる背景の色情報のうち、前記仮想空間内の水平方向と平行な線上の色情報を、前記仮想体の色情報に基づく同一色で表現する、ように機能させるためのプログラムを構成してもよい。このように、仮想空間内の水平方向の色を同一色で表現することによって、画像生成処理をより簡単化し、迅速に画像を生成することができる。
【0023】
また、第9の発明として、第6から第8のいずれかの発明のプログラムであって、前記特定点設定手段に対して、前記特定点の色情報を、前記仮想空間における前記所与の視点の位置に応じて変更する、ように機能させるためのプログラムを構成してもよい。
【0024】
この第9の発明によれば、視点の位置の変化に応じて、特定点に与える色を変更することができる。例えば、各特定点に与える色として、視点の位置が雲より上に存在する場合には、各特定点に対して明るい色を設定し、視点が雲の下に存在する場合には、暗い色を設定すれば、雲上と雲下とで全く異なる環境を表現することができる。このように、視点の位置の変化に合わせて特定点に与える色を変更することで、表現する環境のバリエーションを増やすとともに、生成する画像の臨場感を向上させることができる。
【0025】
また、第10の発明として、第6から第9のいずれかの発明のプログラムであって、前記特定点設定手段に対して、前記仮想体の中心を通る所与の断面上に少なくとも2つ以上の特定点を設定する、ように機能させるためのプログラムを構成してもよい。
【0026】
この第10の発明によれば、特定点として、仮想体の中心を通る断面上の一方向に存在する特定点と、他方向に存在する特定点とでそれぞれ異なる色を設定すれば、仮想体の色について方向依存性を持たせることができる。例えば、仮想体の中心点に原点を持つ座標系(x,y,z)におけるz軸方向を基準方向とし、y−z平面による仮想体の断面上に特定点を設定した場合、y軸周りの回転について、z軸との成す角に応じた色を表現することができる。
【0027】
また、このとき、仮想空間に基準方向を設け、その基準方向が常に仮想空間における所与の方向に向くように配置することとしてもよい。すなわち、第11の発明として、第10の発明のプログラムであって、前記仮想体配置手段に対して、前記所与の断面上の基準方向が前記仮想空間の所与の方向を向くように前記仮想体を配置する、ように機能させるためのプログラムを構成してもよい。このように、仮想体を仮想空間に配置する際に、仮想体の方向依存性を利用して配置することによって、視点の位置が移動しても、矛盾なく環境の色を決定することが可能となる。
【0028】
以上のように、仮想空間における「地平線位置」、「天頂」、「所与の方向」に対応する仮想体の位置や方向を設定することによって、仮想体の配置位置を一意的に指定することができるとともに、常に理想的な位置に仮想体を配置することができる。なお、第12の発明として、第11の発明のプログラムであって、前記所与の方向を、前記仮想空間における所与の光源の方向とするプログラムを構成してもよい。すなわち、仮想空間における「所与の方向」を光源方向とし、仮想体における基準方向の色を明るい色として設定すれば、常に、光源方向を明るい色によって表現することができる。
【0029】
なお、仮想体を、環境の色を決定するためだけに利用するのではなく、フォグと呼ばれる機能の色を指定する際に用いてもよい。すなわち、第13の発明として、第1から第12のいずれかの発明のプログラムであって、前記所与の視点からの距離に応じて、前記仮想空間内に存する物体を霞ませて表現するための霞表現手段と、前記霞表現手段により前記物体を霞ませる色情報を、当該物体に対する前記所与の視点の視線方向に基づいて前記仮想体の色情報から決定する霞色決定手段として前記コンピュータを更に機能させるためのプログラムを構成してもよい。
【0030】
【発明の実施の形態】
以下に、本発明の好適な実施の形態について図面を参照して説明する。なお、以下では、本発明を飛行戦闘ゲームに適用し、家庭用のゲーム装置にて実現する場合について説明するが、これに限定する必要はない。
【0031】
図1は、家庭用のゲーム装置の一例を示す図である。同図によれば、ゲーム装置1210は、ディスプレイ1200、ゲームコントローラ1202、1204等が着脱自在な構成になっている。また、ゲームプログラムや本実施の形態を実現するために必要な情報等のゲーム情報は、ゲーム装置1210に着脱自在な情報記憶媒体であるCD−ROM1206、ICカード1208、メモリカード1212および、ゲーム装置1210本体が備える情報記憶媒体等に格納されている。
【0032】
プレーヤは、ディスプレイ1200に映し出されたゲーム画像を見ながら、ゲーム画像上に表示される戦闘機をゲームコントローラ1202あるいは1204を用いて操作することによって、飛行戦闘ゲームを楽しむ。以下、プレーヤにより操作される戦闘機を自戦闘機という。ここに、自戦闘機を操作するとは、ゲームコントローラ1202、1204の操作ボタンを押下することにより、自戦闘機の移動方向や移動速度を指定する行為を意味する。また、ゲーム画像内には、仮想空間における自戦闘機の位置が把握できるように、自戦闘機を取巻く環境、すなわち、空や地形といった環境を表現する。なお、ゲーム画像を生成するための視点の位置は、自戦闘機の操縦席に設定してもよいし、自戦闘機に追従させて自戦闘機を客観的に表現するように設定してもよい。
【0033】
また、本実施の形態では、画像生成処理の遅延化を防ぐために、視点の視線方向に存在する全てのオブジェクトについて描画せずに、視点からの距離に応じて描画するオブジェクトを制限する。図2(a)は、仮想空間の平面図であり、描画する範囲の一例を示す図である。同図に示すように、視点100を中心とした半径DR、角θの扇状の範囲102を描画する範囲とする。すなわち、視点100との距離d(高さ成分を除いた水平方向の距離)が、0≦d≦DRを満たす範囲102内に存在するオブジェクトについてのみ描画を実行する。なお、この距離DRは、画像生成処理の遅延を引き起こさないと予測される最大の距離とする。図2(b)は、描画する範囲102の仮想空間の縦断面図である。このように、視点100からの距離がDRを越える範囲については描画しない。
【0034】
ただし、上述のように、描画する範囲102を視点100に対する水平方向の距離DRによって定義した場合、以下の不都合が生じる。本来、地表を見下ろしたときに、視点100の高度hが高いほど、地表上のオブジェクトは小さく見え、視界(画面)に映る地表の面積は広くなるはずである。しかし、描画する範囲102を一定にすると、視点100の高度hが高くなっても表示される地表の面積は広くならず、とりわけ、奥行方向については視点に接近して見えてしまう。
【0035】
例えば、図3(a)に示すように、視点100の高度hが低い場合には、描画範囲102の奥行方向の端部104と地平線の方向とがほぼ一致するため、違和感を与える恐れがない。一方、図3(b)に示すように、視点100の位置が高い場合には、描画範囲102の端部104を見下ろすことができるため、地形が唐突に途切れたような印象を与えることとなる。このとき、端部104の近傍をぼかして表現することによって、端部104を地平線として表現するといった方法も考えられる。しかし、こうして生成した地平線の位置は、理想的な地平線の位置よりも明かに視点100に対して近いため、地球が奇妙に小さく感ぜられてしまう。本実施の形態は、係る状況においても、描画範囲102を広げることなく、効率的かつ尤らしく環境を表現するためのものである。
【0036】
以下に、本実施の形態を詳細に説明する。
本実施の形態では、描画範囲102とは無関係な位置に地平線を定義する。具体的には、視点100からの距離DGの位置を地平線の位置とする。図4(a)は仮想空間の平面図、(b)は仮想空間の縦断面図であり、地平線距離DGと描画範囲102の半径DRとの距離の関係を示す図である。同図に示すように、地平線距離DGは、描画範囲102の半径DRよりも大きい(DG>DR)。なお、設定した地平線から上の空の色や、地平線から描画範囲102の端部104までの地表の色を、視点100を内包するドームによって決定する。このドームは、ポリゴンモデルにより定義されたものであり、空の色を決定するための頭部と、地表の色を決定するための側部とから成る。以下では、仮想空間上の座標系をワールド座標系(X,Y,Z)といい、ドームのポリゴンモデルを定義するための座標系をローカル座標系(x,y,z)として区別する。
【0037】
まず、ドームの構造について説明する。
図5は、ドーム110の一例を示す図であり、(a)はドーム110の縦断面図、(b)はドーム110の斜視図である。同図に示すように、ドーム110は、y軸について回転対称な略半球状の頭部112と、y軸を中心軸とする円筒形の側部114とから構成される。なお、仮想空間ににおける視点100がドーム110のy軸(すなわち、中心軸)上に位置するように、かつ、ワールド座標系(すなわち、仮想空間)のY軸とローカル座標系のy軸とが平行となるように、ドーム110を仮想空間内に配置する。また、図5(c)は頭部112の下方斜視図、(d)は頭部112の側面図である。この図5(c)および(d)に示すように、頭部112を、三角形あるいは台形のポリゴンにより構成する。また、頭部112の全高LH、および、頭部112の最下端の半径rHは、視点100の位置の変化にかかわらず常に一定の値とする。
【0038】
一方、図5(e)は側部114の下方斜視図、(f)は側部114の側面図である。この(e)および(f)に示すように、側部114を、矩形のポリゴンにより構成する。また、側部114の半径rBを、頭部112の最下端の半径rHと等しくし(rB=rH=一定)、接合部分における水平方向のポリゴン数が一致するように設定する。すなわち、頭部112と側部114は接合部分において、角ポリゴンの頂点位置が噛合い、連続である。なお、側部114の半径rBは、描画範囲102の半径DRと等しく、もしくは、描画範囲102の半径DRよりも若干小さめとなるように設定する(rB≦DR)。
【0039】
ただし、側部114の全高LBについては、視点100の高度(高さh)に応じて変化させる。図6は、視点100の高さhの変化に伴って側部114の全高LBを変化させた一例を示す図であり、(a)から(c)へと、視点100の高度hを高くしたものである。同図に示すように、側部114と頭部112の接合部分が、視点100と地平線位置とを結ぶ直線120上に位置するように、側部114の全高LBを決定する。
【0040】
図7は、ドーム110の縦断面図であり、側部114の全高LBを決定する処理を説明するための図である。同図において、直線122a,bは、仮想空間における垂直方向(Y軸方向)の視界の範囲を示すものであり、破線120は、視点100と地平線位置とを結ぶ直線を示す。なお、視点100に対する地平線距離をDGによって表示した。同図によれば、側部114の全高LBは、側部114の半径rBと、地平線距離DGと、視点100の高さhとによる比例関係を利用して決定することができる。すなわち、側部114の全高LBは、
LB=h−{(h−rB)/DG} …(1)
により決定できる。このように、視点100と地平線位置とを結ぶ直線上に頭部112と側部114の接合部分を配置することによって、地平線よりも上空に当る部分の色を頭部112によって、地平線から描画範囲102の端部104までの色を側部114によって、それぞれ決定することができる。
【0041】
なお、側部114を構成する各ポリゴンの垂直方向(y軸方向)の長さlBは、式(1)によって算出した側部114の全高LBによって決定する。具体的には、全高LBを垂直方向のポリゴン数mで割った値によって一律に決定する。すなわち、
lB=(LB/m) …(2)。
【0042】
続いて、ドームの色について説明する。
ドーム110の色は、ローカル座標系(x,y,z)における向きに応じて異なる色を設定する。例えば、図8(a)に示すように、ドーム110を構成するポリゴンのうち、z軸の正方向に存在するポリゴンと、負方向に存在するポリゴンとで異なる色味を設定する。例えば、夕暮れのシーンを演出する場合には、頭部112のz軸正方向に赤や黄色を基調とした明るい色を設定し、z軸負方向には紺などの夕闇を連想する色を配色する。また、側部114のz軸正方向には、夕日によって照らされる明るい土の色を、z軸負方向には、夕闇にしずむ暗い土の色を配色する。そして、仮想空間内にドーム110を配置する際には、図8(b)に示すように、ドーム110のz軸の正方向が、仮想空間における光源130の光線ベクトル132の水平方向成分と対向するようにドーム110を回転させて配置する。このように、ドーム110に与える色をローカル座標系における方向に応じて変化させるとともに、光源130の方向にあわせて仮想空間におけるドーム110の向きを決定することで、簡単にリアリスティックな環境を表現することができる。
【0043】
なお、ドーム110上の色について、ポリゴンの1つ1つに色を定義する構成にした場合、大気や地表の色の変化をより細かく滑らかに表現するためには、多量のポリゴンが必要となるとともに、多容量のメモリが必要となる。逆に、ポリゴン数を減らせばメモリ容量が少なくてすむ一方で、ドーム110上の色がポリゴン単位で変化する様子が顕著となり、大気の微妙な色の変化を表現することができない。こうした問題を防ぐために、ドーム110上の特定な点(以下、特定点という)に対してのみ色を設定する。そして、ドーム110における任意の点の色は、その点と特定点との位置関係に基づいて各特定点に与えられた色を合成することによって決定する。
【0044】
図9は、ドーム110上の特定点の一例を示す図であり、ドーム110のy−z平面(x=0)の断面図である。同図に示すように、頭部112の頂点(Top)と、y軸に対して対象となる2つの点a,bを5組(H0〜H2,B1,2)、それぞれx=0となるドーム110の表面に設定する。すなわち、Topに1つと、z軸の正方向と負方向とにそれぞれ対称となる10箇所の位置に特定点を設ける。図9によれば、頭部112に7つの特定点が、側部114に4つの特定点が設定されている。
【0045】
このように、側部114に対して設定する特定点の数に対して、頭部112に設定する特定点の数を多くする理由の1つは、側部114はy軸方向に対して直線的な形状であるのに対し、頭部112は曲線的なためである。通常、直線上において、2つの点にそれぞれ異なる色を設定し、2点間において一方の色から他方の色へと段階的に変化させることは、比較的簡単である。具体的には、2点間に存在する各点に対して、その2つの点に対する距離の比に応じて2つの色を合成した結果を与えることで、2点間のグラデーションを実現できる。一方、曲面においては、面の形状の変化に合わせて色を変化させることは困難を要する。曲面の曲率が一定であれば、角度に応じて色の合成率を決定してもよいが、ここでは、頭部112について、Topから最下端までの曲率を一定とする必要がないため、必ずしも合理的な方法とは言えない。
【0046】
また、空の垂直方向に対する色の変化は、地表の奥行に対する色の変化と比較して、より顕著で急激な場合が多い。すなわち、空の色の変化は、線形に色を変化させた場合とは異なる印象が強い。例えば、夕暮れにおいては、地平線に隠れる太陽の周囲の明るい色から上空の暗い空の色への変化は、比較的急であり、視線の角度の変化に応じて線形に色を変化させると不自然な見え方となる。以上の理由から、図9に示すように、頭部112に対しては複数の特定点を設定することで、大気の微妙な色味の変化を演出できるようにする。
【0047】
図10は、ドーム110上の特定点の色を記憶するための特定点色テーブル44の一例を示す図である。同図によれば、特定点色テーブル44には、各特定点の座標と、色とが対応付けて記憶される。ここに、LHは頭部112の全高、LBは側部114の全高、rBは側部114の半径をそれぞれ意味するものであり、側部114の全高LBには、式(1)によって求めた値を代入する。また、座標は、ローカル座標系における座標を意味する。
【0048】
ドーム110の表面における任意の点pの色は、その点pの近くに存在する4つの特定点(Topを含む場合には、3つの特定点)に与えられた色を合成することによって決定する。各色の合成割合は、求める点pと、各特定点に対する距離(あるいは角度)に応じて決定する。例えば、図11(a)に示すドーム110上の点pの色を決定する際には、まず、ローカル座標系における点pの座標(xp,yp,zp)を判定し、特定点色テーブル44の中からy座標がypの値に近い2組の特定点を選択する。図11(a)によれば、特定点H0aとbの組みと、特定点H1aとbの組みとが選出される。これら選出した特定点を合成する方法は、点pとの位置関係を加味した方法であればいかなる方法であってもかまわないが、以下にその一例を説明する。
【0049】
まずは、各組それぞれの2つの特定点を通る水平面と、点pを通る仮想体表面上の垂直線との各交点を求め、その点における色を決定する。このとき、水平面は、p点を挟んだ垂直方向に2つ存在するため、垂直線との交点を2つ算出することとなる。以下、2つの特定点を通る水平線と垂直線との交点を水平交点といい、水平方向に並ぶ2つの特定点の色を合成した結果として得られる色を水平合成色Cnという。すなわち、水平交点における色が水平合成色Cnとなる。次いで、2つの水平合成色Cnを点pと各水平交点との位置関係に応じて合成することによって、点pの色を決定する。
【0050】
例えば、図11(a)に示す点pの色を求める場合には、特定点H0aとbを通る水平線140と点pを通る垂直線144との水平交点146と、特定点H1aとbを通る水平線142と垂直線144との水平交点148を算出し、更に、水平交点146における水平合成色CH0と、水平交点148における水平合成色CH1とを決定する。各水平合成色Cnは、図11(b)に示すように、点pの水平方向の単位ベクトル150とz軸との成す角φに基づいて決定する。すなわち、
Cn={Ca(cosφ+1)+Cb(cos(π−φ)+1)}/2 …(3)
により各水平合成色Cnを決定することができる。ここで、Caは正方向の特定点の色を、Cbは負方向の特定点の色をそれぞれ意味する。
【0051】
そして、2つの水平合成色Cnを求めると、2つの水平交点146,148と点pとの距離の比に応じて各水平合成色Cnを合成する。この合成処理は、点pが側部114に存在する場合と、頭部112に存在する場合とで異なる。点pが側部114に存在する場合には、2つの水平合成色Cnを各距離に基づいて線形に合成する。すなわち、点pと各点に対する距離の比により決定する。
Cp={CB1(LB−yp)+CB2(yp−0)}/LB …(4)
ここで、CB1およびCB2はそれぞれ側部114の最上端と最下端の水平合成色を示し、LBは側部114の全高を、ypは点pのy座標を意味する。
【0052】
一方、点pが頭部112に存在する場合には、2つの水平交点間に存在するポリゴンの単位で色を決定する。具体的には、図11(c)に示すように、各水平交点146,148を端部とする弧160(頭部112の表面一部)上に存在するポリゴンの頂点152〜156(あるいは、ポリゴンの辺と交差する点)を決定し、各頂点152〜156に与える色を計算する。更に、各頂点152〜156を端点とする線分のうち、点pを含む線分を選択する。同図においては、端点となる点152と点154に与えられた色を線形に合成することによって点pの色を決定する。なお、各頂点の色を決定する処理は、各頂点152〜156と各水平交点146,148との距離を算出し、線形に色を合成する。例えば、ポリゴンの頂点152の色を決定する際には、頂点152と水平交点146の距離と、頂点152と水平交点148の距離を算出し、各距離の比に基づいて合成割合を決定する。
【0053】
なお、ゲーム画像を生成する際には、画面上の画素1つ1つについて対応するドーム110上の点を選択し、色を決定することとしてもよいが、以下の簡略化をしてもよい。すなわち、画面の横幅(視界の横幅)に対する地球の大きさを考慮すれば、地平線に沿った水平方向の色は、画面上において同一色で簡単化しても不自然ではない。したがって、地平線の方向が画面上の水平方向と同一である場合には、各走査線を代表する1つの画素について色を決定し、同じ走査線上に存在する全ての画素に対して同じ色を与えることができる。図12(a)は、仮想空間内に透視投影用のスクリーン162を模式的に配置した一例を示す図である。同図に示すように、スクリーン162上の各走査線の中心位置に当る画素と、視点100とを結ぶ直線164−1〜nを算出し、各直線164がドーム110と交差する点の色を計算する。そして、該当する走査線上の全ての画素に対して算出した色を与える。
【0054】
ただし、自戦闘機が旋回し、それに伴って視点100が回転(チルト)するような場合には、走査線の全ての画素に同一色を適用させることはできない。この場合には、視点100の回転(チルト)角度を算出し、図12(b)に示すように、仮想空間の垂直方向に対して平行となるスクリーン162上の画素の列を選出する。そして、スクリーン162の各画素と視点100とを結ぶ直線を算出し、各直線とドーム110との交点における色を算出すると、対応する各画素に対して与える色として決定する。また、仮想空間における地平線の方向と平行となるスクリーン162上の画素の行を選出し、各行に対して、算出した色を適用させる。
【0055】
なお、描画範囲102内に存在するオブジェクトについて、フォグと呼ばれる手法を施す場合がある。フォグとは、視点100に対して遠い位置に存在するオブジェクトを距離に応じてぼかして表現する手法であり、具体的には、物体が霞んで完全に見えなくなる位置の色を指定し、その指定した色と各オブジェクトが保有する色とを視点100に対するオブジェクトの距離に応じて合成することによって行う。本実施の形態によれば、ドーム110により指定される環境の色は、光源方向とその逆方向とで異なる。このとき、地形オブジェクトに対して施すフォグの色を全ての方向に対して同一色に設定した場合、地形オブジェクトが霞んで見えなくなる色味と、地平線近傍の色味とが全く無関係な色の組み合わせとなる恐れがある。すなわち、地表が不自然な色の変化をするように見えてしまう。
【0056】
こういった矛盾を解消するために、ドーム110の最下端の色をフォグの色として採用する。具体的には、図13に示すように、視点100の視線方向を代表するベクトル170の水平成分172とz軸との成す角φに基づいて、ドーム110の最下端の水平交点174における水平合成色Cnを算出し、これを地形オブジェクトに施すフォグの色として採用する。このように、側部114の色を用いて地形に施すフォグの色を決定することによって、地形が霞んで消える色味と地平線までの地表の色味との間に矛盾が生じることなく、より尤らしく環境を表現することができる。
【0057】
また、従来において、臨機応変にフォグの色変更することは困難であった。これは、フォグを表現する多くの場合において、その濃淡をいかに尤らしく表現するかについてのみ注意が向けられていたためである。すなわち、使用されるフォグの色は1色のみであり、視点に対する距離によってのみフォグを調節し、視点に対する方向については考慮されていなかった。このため、例えば、フォグの色を白に設定した場合、夕闇に消えるはずの他の戦闘機が、暗い空の中でうっすらと白くぼけて消えるといった矛盾が発生する恐れがあった。しかしながら、本実施の形態によれば、他の戦闘機が消え入る方向を判定し、その方向のドーム110上の色を算出してフォグの色として採用することが可能となり、矛盾なく他の戦闘機が環境の中に霞んで消えて行くように表現することができる。
【0058】
続いて、コンピュータ等のハードウェアを用いて本発明を実現可能とするために必要となる機能について説明する。
図14は、機能ブロックの一例を示す図である。同図に示す機能ブロックは、ゲーム情報内に記憶されるプログラムに従って作動する機能と、図1に示すゲーム装置1210自体が予め有する機能とからなるものである。
【0059】
操作部10は、プレーヤがゲームにおける自キャラクタの操作や、ゲームの開始/中止の指示、選択画面における選択項目の入力等を実行するためのものであり、キーボードやマウス、ゲームコントローラ等の操作装置により実現可能である。
【0060】
処理部20は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理等の各種処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、あるいはASIC(ゲートアレイ等)等のハードウェアや、所与のプログラムにより実現できる。また、処理部20には、主に、ゲーム演算部22、画像生成部24が含まれる。
【0061】
ゲーム演算部22は、ゲームの進行処理、選択画面の設定処理、仮想空間上での各オブジェクトの位置や向きを決定する処理、視点100の位置や視線方向、視界等を求める処理等、種々のゲーム処理を操作部10から入力される操作信号や、情報記憶媒体40から読み出すゲームプログラム42等に基づいて実行する。また、ゲーム演算部22は、本実施の形態に係る処理を実行するための、ドーム制御部220を含む。
【0062】
ドーム制御部220は、側部114の全高LBを決定する処理、および、仮想空間内にドーム110を配置する処理を実行する。すなわち、ゲーム演算部22によりワールド座標系における視点100の座標(XC,YC,ZC)を決定すると、その水平位置(XC,0,ZC)上にドーム110のローカル座標系の原点を配置する。また、視点100の高さh(すなわち、YC)を式(1)に代入することによって側部114の全高LBを決定し、側部114を構成する各ポリゴンの垂直方向の長さを決定する。また、ドーム制御部220は、ローカル座標系におけるz軸が、仮想空間における光源の光線ベクトルの向きと対向するようにドーム110を回転させる。
【0063】
画像生成部24は、ゲーム演算部22から入力される指示信号、各種座標データに基づき、ゲーム画像を生成する処理を実行するものであり、CPU、DSP、画像生成専用のIC、メモリなどのハードウェアにより構成される。具体的には、画像生成部24は、前方、後方クリッピングを実行してビューボリュームを決定する処理、各ポリゴンに対する座標変換および視点100と光源に基づく輝度計算処理等のジオメトリ処理と、色補間処理、陰面消去処理等のレンダリング処理を実行することによりゲーム画像を生成する。そして、生成したゲーム画像を画像データとして表示部30に出力して表示させる。なお、表示部30は、画像生成部24から入力される画像データを表示画面に表示させるものである。また、画像生成部24は、環境色決定部240と、フォグ処理部242とを含む。
【0064】
環境色決定部240は、画面上の各画素に対して与える環境の色をドーム110に基づいて決定する処理を行う。すなわち、視点100からスクリーン上の各画素に対する直線を求め、その直線とドーム110上における交点を算出する。そして、情報記憶媒体から特定点色テーブル44を読み出して、算出した交点上の色を算出すると、該当する画素に算出した結果を与える。なお、地平線と平行な直線に対して同一色を配色する場合には、視点100の回転(チルト)角度を判定し、スクリーン上の画素のうち、仮想空間における地平線と垂直に交わる向きの画素の列と、地平線と平行となる画素の行を決定して、各行に与える色を計算する。
【0065】
フォグ処理部242は、視界内に存在するオブジェクトに対してフォグを施す処理を実行する。例えば、視界内に地形オブジェクトが含まれる場合には、側部114の最下端について算出した水平合成色Cnを地形オブジェクトに施すフォグの色として採用する。また、上空の戦闘機に対してフォグを施す場合には、視点100と戦闘機とを結ぶ直線を算出し、その直線とドーム114との交点を求め、その交点上の色をフォグの色として採用する。
【0066】
情報記憶媒体40は、ゲーム装置の駆動に係るプログラムやゲームを実行するためのプログラム、データを記憶するためのものであり、CD−ROM、ゲームカセット、ICカード、MO、FD、DVD、メモリ、ハードディスク等のハードウェアにより実現できる。なお、情報記憶媒体40は、主に、所与のゲームを実行するためのゲームプログラム42、特定点色テーブル44を記憶する。なお、ゲームプログラム42には、ゲーム演算部22が所与のゲームシナリオに沿ってゲームを実行するためのプログラムや、画像生成部24がジオメトリ処理やレンダリング処理を実行するために必要な情報のほか、ドーム制御部220がドーム110の配置を実行するために必要となるドーム制御情報420と、環境色決定部240やフォグ処理部242が上述した処理を実行するために必要となる色処理情報422とが含まれる。
【0067】
続いて、本実施の形態を実現するための処理について、図15に示すフローチャートを用いて以下に説明する。なお、以下の処理は、1フレーム毎に実行するものである。
図15において、ゲーム演算部22は、操作部10あるいは、ゲームプログラムに従って仮想空間における視点100の位置および視線方向を決定する(ステップS1)。そして、ドーム制御部220は、ステップS1で決定された視点100の水平位置にドーム110の原点を配置する(ステップS2)。また、ドーム制御部220は、視点100の高さhと地平線距離DGに基づいて側部114の全高LBを決定する(ステップS3)。
【0068】
環境色決定部240は、視点100の視界範囲内に映る環境を描画する処理を実行する(ステップS4)。フォグ処理部242は、視界内に描画するオブジェクトが存在する場合には、そのオブジェクトの存在位置に基づいてフォグを施す処理を実行する(ステップS5)。そして、全てのオブジェクトについて描画が完了すると、本処理を終了する。
【0069】
次に、本実施の形態を実現できるハードウェアの構成の一例について、図16を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ入出力可能に接続されている。そして、画像生成IC1010には、表示装置1018が接続され、音生成IC1008には、スピーカ1020が接続され、I/Oポート1012には、コントロール装置1022が接続され、I/Oポート1014には、通信装置1024が接続されている。
【0070】
情報記憶媒体1006は、図14に示す機能ブロックにおける情報記憶媒体40に相当するものであり、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものである。例えば、図1に示す家庭用ゲーム装置1210では、ゲームプログラム等を格納する情報記憶媒体として、CD−ROM、ゲームカセット、DVD等が用いられ、プレイデータを格納する情報記憶媒体としてメモリカードなどが用いられる。また、本発明を業務用のゲーム装置に適用する場合には、ROM等のメモリやハードディスクが用いられ、この場合には、情報記憶媒体1006は、ROM1002になる。また、パーソナルコンピュータにおいては、CD−ROM、DVD、ROM等のメモリ、ハードディスク等が用いられる。
【0071】
コントロール装置1022は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0072】
情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は、装置全体の制御や各種データ処理を行う。RAM1004は、このCPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002の所与の内容、あるいはCPU1000の演算結果が格納される。
【0073】
更に、この種の装置には、音生成IC1008と画像生成IC1010とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音は、スピーカ1020によって出力される。また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から出力される画像情報に基づいて表示装置1018に出力するための画素情報を生成する集積回路である。また表示装置1018は、CRTやLCD、TV、プラズマディスプレイ、プロジェクター等により実現される。
【0074】
また、通信装置1024は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介して、ゲームプログラム等の情報を送受すること等に利用される。
【0075】
また、図1〜図14で説明した種々の処理は、図15のフローチャートに示した処理等を行うためのドーム制御情報420や色処理情報422、特定点色テーブル44等を含むプログラムを格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。なお、画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0076】
なお、本発明は、図1に示した家庭用のゲーム装置1210だけでなく、他のいかなる形態のゲーム装置に適用してもかまわない。例えば、図17に、ホスト装置1300と、このホスト装置1300と通信回線1302を介して接続される端末1304−1〜1304−nとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【0077】
図17に示す形態の場合、図14の情報記憶媒体40に記憶されるゲームプログラム42や特定点色テーブル44等は、例えば、ホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。また、端末1304−1〜1304−nが、CPU、画像生成IC、音生成IC、を有し、スタンドアローンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304−1〜1304−nに配送される。一方、スタンドアローンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304−1〜1304−nに伝送し端末において出力することになる。
【0078】
あるいは、図18に示すように、本実施の形態を業務用ゲーム装置80に適用してもよい。この業務用ゲーム装置80は、プレーヤがスピーカ86から出力される音を聞きながら、操作ボタン84を操作することによって、ディスプレイ82上に表示される自戦闘機を操作して所与のゲームを楽しむ装置である。業務用ゲーム装置80に内蔵されるシステム基板90には、CPU、画像生成IC、音生成IC等が実装されている。そして、ゲームプログラム42や特定点色テーブル44等は、システム基板90上の情報記憶媒体であるメモリ92に格納されている。
【0079】
なお、本発明は、上記実施の形態で説明したものに限らず、種々の変形実施が可能である。例えば、本実施の形態では、1つの特定点に与える色を1種類に限定して説明したが、視点100の高度に応じて特定点に与える色を変更する構成にしてもよい。具体的には、図19(a)に示すように、視点100の高度に応じた複数種類の特定点色テーブル180−1,2,…を定義する。そして、図19(b)に示すように、視点100の高度範囲と、採用する特定点色テーブル180とを対応付けるための関連テーブル182を定義し、ゲーム実行中に関連テーブル182を読み出して、視点100の高さに対応する特定点色テーブル180を決定する構成にしてもよい。
【0080】
あるいは、ドーム110上の各特定点に対して、視点100の高度に応じて複数種類の色を合成した結果を与えることとしてもよい。具体的には、高度h0、h1、h2、…といった具合に、離散的な複数の高度を設定し、各高度に対応する特定点色テーブル180−1,2,…を定義する。そして、図19(c)に示すように、各高度と特定点色テーブル180とを対応付ける関連テーブル184を生成する。ゲーム実行中においては、視点100の高さhに近い高度の特定点色テーブル180を関連テーブル184から2つ読み出し、その2つの特定点色テーブル180の中から必要な特定点の色をそれぞれ読み出す。そして、各特定点色テーブル180の高度と、視点100の高さhとの比に応じて各高度に対応する色を合成し、該当する特定点に与える色を決定する。このように、特定点1つ1つに与える色を、視点100の高さhに応じて逐次変化させることによって、より自然に、かつ、バラエティー豊かに変化させることが可能となる。
【0081】
また、特定点色テーブルを変更するタイミングとして、視点100の高さだけでなく、時間経過に応じて変更することとしてもよい。例えば、視点の位置が変化しない場合であっても、時間の経過に伴って、真昼用の特定点色テーブルから、夕暮れ用の特定点色テーブルに変更してもよい。
【0082】
また、夕暮れのシーンなどにおいて、ドームにおける特定点の位置を固定的にせずに、時間経過に従って移動させてもよい。たとえば、赤っぽい色を持つ特定点の位置を徐々に移動させて夕日が沈むように演出することも可能である。図20は、ドームのy−z平面の断面図であり、特定点の移動例を示す図である。(a)に示すように、夕焼けの初期では、特定点の位置を上空に設定し、時間経過に伴って(b)や(c)に示すように、各特定点の位置を頭部と側部の接合部分に近づけるように移動させる。このように、y軸について対象となる位置にそれぞれ特定点を配置するだけでなく、図20に示すように、非対称に配置し、時間経過に伴って移動させてもよい。ただし、この場合において、任意の点の色を決定する際には、各特定点を結ぶ線分に沿って色を合成することで決定する。あるいは、特定点の間隔に従って、ポリゴンの形状を変更し、各ポリゴン単位で色を決定する構成にしてもよい。
【0083】
また、側部を構成するポリゴンを矩形として説明したが、ポリゴンの各頂点の座標を垂直方向(すなわち、y軸方向)に移動可能な構成にしてもよい。このとき、各頂点の色として、図21(a)に示すように、ポリゴンの各頂点が垂直方向に対して等間隔に並んだときの色を与える。そして、図21(b)に示すように、ポリゴンの各頂点が移動した場合であっても、(a)に示す状態における色を保持させる。任意の点の色を決定する際には、その点が含まれるポリゴンを判定し、ポリゴンの各頂点に与えられた色を線形に合成する。このように、ポリゴンの形状を様々に変形することによって、側部についても色の変化のバリエーションを増やすことができる。なお、水平方向の色の合成については、式(3)によって求めることとしてもよい。
【0084】
また、ドーム上に設定する特定点を、図9に示したように、z軸における正方向と負方向とに設定することとして説明したが、これに限定する必要はなく、ドームの水平方向に対して、3つ以上の特定点を設定してもかまわない。例えば、図22(a)に示すように、z軸上の2つの位置に特定点190,192を設定するだけでなく、それ以外の位置に特定点194,196を配置する。このとき、特定点194,196の位置は、z軸について対象となる位置とする。このように、対称的に配置することによって、z軸の正方向に存在する光源からの光が仮想空間に等方的に広がるように表現することができる。
【0085】
なお、図22(a)に示すように、水平方向の特定点の数を増加させる場合には、各特定点の色を合成する処理において、各特定点に対する角度に応じて合成率を決定するとよい。例えば、図22(a)に示す点pの色を決定する際には、まず、点pに隣接する2つの特定点192と特定点196を選択する。そして、図22(b)に示すように、各特定点を含むドームの断面とドームの中心軸との交点O´を中心とする、点pと特定点192との成す角φ1と、点pと特定点196との成す角φ2を算出し、比を求めることによって2つの特定点192と特定点196の色の合成率を決定してもよい。
【0086】
また、上記実施の形態では、地平線距離DGを定数として説明したが、視点100の高さに応じて変化させてもよい。例えば、距離DGを、視点100の高さh(すなわち、YC)の関数F(h)として定義する。
DG=F(h) …(5)
このとき、関数F(h)は、図23に示すように、hの増加に伴って増加する増加関数であって、h→∞で一定の値に集束する関数である。このような関数を用いて地平線距離DGを決定することによって、より尤らしく地平線を表現することができる。
【0087】
なお、本実施の形態では、本発明を飛行戦闘ゲームに適用する場合について説明したが、これに限定する必要はなく、他の如何なるゲームに適用してもかまわない。例えば、RPGやレースゲーム、格闘アクションゲーム等に適用してもよいことは勿論である。あるいは、ゲーム装置に限らず、フライトシミュレータや、グラフィックワークステーション等の他の機器に適用してもかまわない。
【0088】
【発明の効果】
本発明によれば、生成する画像のうち、仮想空間における略水平なライン上の色を同一の色によって表現することができる。したがって、仮想空間における水平な1つのライン上の色を決定する際には、そのライン上の1点について色を計算すれば足り、より画像を生成する速度を高速化することができる。
【図面の簡単な説明】
【図1】本発明を家庭用のゲーム装置に適用した場合の一例を示す図である。
【図2】(a)は、描画範囲の一例を示す図である。(b)は、描画範囲の断面図である。
【図3】視点の高度に応じた描画範囲の見え方を説明するための図である。
【図4】描画範囲の半径DRと地平線距離DGとの距離関係を説明するための図である。
【図5】ドームの一例を示す図。
【図6】視点の高さと側部の全高の関係を説明するための図である。
【図7】側部の全高LBを決定する処理を説明するための図である。
【図8】(a)は、ドームの配色の一例を示す図であり、(b)は、ドームを仮想空間に配置した一例を示す図である。
【図9】ドームの表面に特定点を設定した一例を示す図である。
【図10】特定点色テーブルの一例を示す図である。
【図11】ドーム上の任意の点に与える色を決定する処理を説明するための図である。
【図12】(a)は、仮想空間にスクリーンを配置した一例を示す図である。(b)は、視点のチルトに合わせてスクリーンを回転させた図である。
【図13】地形オブジェクトに施すフォグの色を決定する処理を説明するための図である。
【図14】本発明を実現するために必要となる機能のブロック図である。
【図15】本実施の形態における処理を説明するためのフローチャートである。
【図16】本実施の形態を実現可能なハード構成の一例を示す図である。
【図17】ホスト装置と通信回線を介して接続されるゲーム端末に本実施の形態を適用した場合の一例を示す図である。
【図18】本発明を業務用のゲーム装置に適用した場合の一例を示す図である。
【図19】(a)は、複数の特定点色テーブルの模式図である。(b)および(c)は、それぞれ関連テーブルの一例を示す図である。
【図20】特定点の移動例を示す図である。
【図21】(a)は、ポリゴンの各頂点が垂直方向に対して等間隔に並んだときの一例を示す図である。(b)は、ポリゴンの各頂点が移動した一例を示す図である。
【図22】(a)は、水平方向の特定点の数を増やした一例を示す図である。(b)は、点pと、各特定点との成す角φ1,φ2の一例を示す図である。
【図23】関数F(h)の一例を示す図である。
【符号の説明】
10 操作部
20 処理部
22 ゲーム演算部
220 ドーム制御部
24 画像生成部
240 環境描画部
242 フォグ処理部
30 表示部
40 情報記憶媒体
42 ゲームプログラム
420 ドーム制御情報
422 色処理情報
44 特定点色テーブル
Claims (5)
- コンピュータに、仮想空間中を移動し、チルトする所与の視点から見た背景となる空を含む前記仮想空間の画像を生成して所与のゲームを実行させるためのプログラムであって、
前記仮想空間の地平線と天頂とを結ぶ垂直方向に対して変化する前記空の色である垂直方向色を決定し、前記視点のチルト角度に基づいて当該垂直方向色を前記地平線と平行な前記仮想空間の水平方向に展開して当該水平方向の色を均一化することで前記空の色を決定する空の色決定手段、
前記空の色決定手段により決定された色に基づいて前記空を描画して前記画像を生成する画像生成手段、
として前記コンピュータを機能させるためのプログラム。 - 請求項1に記載のプログラムであって、
前記空の色決定手段が、前記仮想空間に定められた光源に対する前記視点の向きに基づいて、前記垂直方向色を変更する手段を有する、ように前記コンピュータを機能させるためのプログラム。 - 請求項1に記載のプログラムであって、
前記空の色を決定するための半球状の仮想体を、前記半球状の頭頂を前記仮想空間の天頂方向に向け、前記視点を内包するように前記視点に追従させて配置する仮想体配置手段、
前記仮想空間に定められた光源に対する前記仮想体の向きに基づいて前記仮想体の色を設定する仮想体色設定手段、
として更に前記コンピュータを機能させ、
前記空の色決定手段が、前記垂直方向に対応する前記仮想体の色に基づいて前記垂直方向色を決定する、ように前記コンピュータを機能させるためのプログラム。 - 請求項1〜3の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
- 仮想空間中を移動し、チルトする所与の視点から見た背景となる空を含む前記仮想空間の画像を生成して所与のゲームを実行するゲーム装置であって、
前記仮想空間の地平線と天頂とを結ぶ垂直方向に対して変化する前記空の色である垂直方向色を決定し、前記視点のチルト角度に基づいて当該垂直方向色を前記地平線と平行な前記仮想空間の水平方向に展開して当該水平方向の色を均一化することで前記空の色を決定する空の色決定手段と、
前記空の色決定手段により決定された色に基づいて前記空を描画して前記画像を生成する画像生成手段と、
を備えたゲーム装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003031296A JP4688405B2 (ja) | 2003-02-07 | 2003-02-07 | プログラム、情報記憶媒体及びゲーム装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003031296A JP4688405B2 (ja) | 2003-02-07 | 2003-02-07 | プログラム、情報記憶媒体及びゲーム装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001076645A Division JP3990543B2 (ja) | 2001-03-16 | 2001-03-16 | プログラム、情報記憶媒体、および、ゲーム装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003228724A JP2003228724A (ja) | 2003-08-15 |
JP4688405B2 true JP4688405B2 (ja) | 2011-05-25 |
Family
ID=27751605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003031296A Expired - Fee Related JP4688405B2 (ja) | 2003-02-07 | 2003-02-07 | プログラム、情報記憶媒体及びゲーム装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4688405B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007226580A (ja) * | 2006-02-24 | 2007-09-06 | Advanced Telecommunication Research Institute International | 画像出力装置、及び画像出力方法 |
JP4892046B2 (ja) * | 2009-08-28 | 2012-03-07 | 株式会社コナミデジタルエンタテインメント | 画像生成装置、画像生成方法、ならびに、プログラム |
JP7223610B2 (ja) * | 2019-03-22 | 2023-02-16 | 任天堂株式会社 | 画像処理プログラム、画像処理システム、画像処理装置、および画像処理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6260064A (ja) * | 1985-09-10 | 1987-03-16 | Mitsubishi Precision Co Ltd | 模擬視界発生装置 |
JPH08215432A (ja) * | 1995-02-17 | 1996-08-27 | Namco Ltd | 3次元ゲーム装置及び画像合成方法 |
JPH08229237A (ja) * | 1995-02-28 | 1996-09-10 | Namco Ltd | 3次元ゲーム装置及び画像合成方法 |
JPH11175748A (ja) * | 1997-12-05 | 1999-07-02 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
JP2000176156A (ja) * | 1998-10-08 | 2000-06-27 | Namco Ltd | 三次元ゲ―ム装置及びその情報記憶媒体 |
-
2003
- 2003-02-07 JP JP2003031296A patent/JP4688405B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6260064A (ja) * | 1985-09-10 | 1987-03-16 | Mitsubishi Precision Co Ltd | 模擬視界発生装置 |
JPH08215432A (ja) * | 1995-02-17 | 1996-08-27 | Namco Ltd | 3次元ゲーム装置及び画像合成方法 |
JPH08229237A (ja) * | 1995-02-28 | 1996-09-10 | Namco Ltd | 3次元ゲーム装置及び画像合成方法 |
JPH11175748A (ja) * | 1997-12-05 | 1999-07-02 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
JP2000176156A (ja) * | 1998-10-08 | 2000-06-27 | Namco Ltd | 三次元ゲ―ム装置及びその情報記憶媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP2003228724A (ja) | 2003-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090244064A1 (en) | Program, information storage medium, and image generation system | |
JP3989396B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2002216158A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4688405B2 (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
JP2009129167A (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JPH08229237A (ja) | 3次元ゲーム装置及び画像合成方法 | |
JP2004341570A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4303395B2 (ja) | ゲーム装置および情報記憶媒体 | |
JP4743733B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3990543B2 (ja) | プログラム、情報記憶媒体、および、ゲーム装置 | |
JP4528008B2 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JP4006243B2 (ja) | 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置 | |
JP4707078B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4577968B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP2002216167A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4229317B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3275001B2 (ja) | ゲーム装置および情報記憶媒体 | |
JP3420959B2 (ja) | ゲーム装置及び情報記憶媒体 | |
JP2004187731A (ja) | ゲーム装置、ゲーム制御方法、及びプログラム | |
JP2003175274A (ja) | ゲームシステム及び情報記憶媒体 | |
JP2004038639A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2006318196A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP4950410B2 (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
JP4592043B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4261211B2 (ja) | ゲーム装置及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080304 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20080304 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080409 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080409 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100726 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100817 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101018 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101116 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110117 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110208 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110215 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4688405 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |