(57)【特許請求の範囲】
【請求項１】
オブジェクト空間内の所与の視点、視線での視界画像を合成してスクリーン上に表示する３次元ゲーム装置であって、
前記スクリーン上に配置される複数の長方形ポリゴンの各頂点のテクスチャ座標を求めるテクスチャ座標演算手段と、
前記テクスチャ座標により指定されるテクスチャを前記長方形ポリゴンにマッピングするマッピング手段と、
テクスチャがマッピングされた前記長方形ポリゴンを並べた画像を含む視界画像を合成する画像合成手段とを含み、
前記テクスチャ座標演算手段が、
前記視点の位置情報及び前記視線の方向情報により３次元のテクスチャ座標空間内のテクスチャ平面との位置関係が特定される仮想視点及び仮想スクリーンを前記テクスチャ座標空間に設定し、前記スクリーン上に配置される前記長方形ポリゴンに対応する仮想長方形ポリゴンを前記仮想スクリーン上に配置し、前記仮想スクリーン上に配置される前記仮想長方形ポリゴンの各頂点を、前記仮想視点を投影中心として前記テクスチャ平面に投影し、投影点のテクスチャ座標を前記長方形ポリゴンの各頂点のテクスチャ座標とするとともに、
１の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせる処理を行うことを特徴とする３次元ゲーム装置。
【請求項２】
オブジェクト空間内の所与の視点、視線での視界画像を合成してスクリーン上に表示する３次元ゲーム装置であって、
前記スクリーン上に配置される複数の長方形ポリゴンの各頂点のテクスチャ座標を求めるテクスチャ座標演算手段と、
前記テクスチャ座標により指定されるテクスチャを前記長方形ポリゴンにマッピングするマッピング手段と、
テクスチャがマッピングされた前記長方形ポリゴンを並べた画像を含む視界画像を合成する画像合成手段とを含み、
前記テクスチャ座標演算手段が、
前記視点の位置情報及び前記視線の方向情報により３次元のテクスチャ座標空間内のテクスチャ平面との位置関係が特定される仮想視点及び仮想スクリーンを前記テクスチャ座標空間に設定し、前記スクリーン上に配置される前記長方形ポリゴンに対応する仮想長方形ポリゴンを前記仮想スクリーン上に配置し、前記仮想スクリーン上に配置される前記仮想長方形ポリゴンの各頂点を、前記仮想視点を投影中心として前記テクスチャ平面に投影し、投影点のテクスチャ座標を前記長方形ポリゴンの各頂点のテクスチャ座標とするとともに、
１のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせる処理を行うことを特徴とする３次元ゲーム装置。
【請求項３】
請求項１又は２において、
前記長方形ポリゴンが、前記スクリーンの水平走査方向に長辺が設定され１水平走査線分の高さを持つポリゴンであることを特徴とする３次元ゲーム装置。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記テクスチャ座標演算手段が、
オブジェクト空間内での前記視点の位置情報に基づいて、前記仮想視点と前記テクスチャ平面との距離と、前記仮想視点からの垂線が前記テクスチャ平面と交わる点の位置を設定し、
前記オブジェクト空間内での前記視線の方向情報に基づいて、前記仮想視点から前記仮想スクリーンの中心に向かう仮想視線の方向を設定することを特徴とする３次元ゲーム装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記画像合成手段が、
垂直走査方向に並べられた前記複数の長方形ポリゴンを用いて、オブジェクト空間内の前記視点から無限遠の位置にある境界線をその一部として含む背景画像を合成することを特徴とする３次元ゲーム装置。
【請求項６】
オブジェクト空間内の所与の視点、視線での視界画像を合成しスクリーン上に表示するためのコンピュータ読み取り可能な情報記憶媒体であって、
前記スクリーン上に配置される複数の長方形ポリゴンの各頂点のテクスチャ座標を求めるテクスチャ座標演算手段と、
前記テクスチャ座標により指定されるテクスチャを前記長方形ポリゴンにマッピングするマッピング手段と、
テクスチャがマッピングされた前記長方形ポリゴンを並べた画像を含む視界画像を合成する画像合成手段として、
コンピュータを機能させるプログラムを記憶し、
前記テクスチャ座標演算手段が、
前記視点の位置情報及び前記視線の方向情報により３次元のテクスチャ座標空間内のテクスチャ平面との位置関係が特定される仮想視点及び仮想スクリーンを前記テクスチャ座標空間に設定し、前記スクリーン上に配置される前記長方形ポリゴンに対応する仮想長方形ポリゴンを前記仮想スクリーン上に配置し、前記仮想スクリーン上に配置される前記仮想長方形ポリゴンの各頂点を、前記仮想視点を投影中心として前記テクスチャ平面に投影し、投影点のテクスチャ座標を前記長方形ポリゴンの各頂点のテクスチャ座標とするとともに、
１の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせる処理、あるいは１のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせる処理を行うことを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はオブジェクト空間内の所与の視点、視線での視界画像を合成できる３次元ゲーム装置及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内に複数のオブジェクトを配置し、所与の視点、視線での視界画像を合成する３次元ゲーム装置が知られており、プレーヤがいわゆる仮想現実を体感できるものとして人気が高い。
【０００３】
この種の３次元ゲーム装置において、地面等を表現する場合には、例えば図１７（Ａ）に示すように、複数のポリゴンにより構成される板オブジェクト９００を用意する。そして図１７（Ｂ）に示すように、この板オブジェクト９００に地面を表すテクスチャをマッピングすると共に、テクスチャがマッピングされた板オブジェクト９００をスクリーンの奥行き方向に倒し込んだ画像を生成することで、地面を表現していた。
【０００４】
しかしながら、この手法によると、板オブジェクト９００を奥行き方向に倒し込んでいるため、スクリーンの奥に行けば行くほど板オブジェクト９００の幅が狭くなり、図１７（Ｂ）のＦ、Ｇに示すように、スクリーンの端９０２、９０４と板オブジェクト９００の間に隙間が生じてしまう。
【０００５】
また地平線９０６の正確な表現のためには、図１７（Ｂ）のＦ、Ｇに示すような隙間をポリゴンにより埋めなければならないが、このようにすると、例えば図１７（Ｂ）のＨ、Ｉに示す場所等を埋めるために膨大な枚数のポリゴンが必要になってしまう。このため、地面の表現のために必要とされるポリゴン枚数が例えば数千枚以上になるという問題が生じる。地面の表現に使用するポリゴンの枚数の増加は、ゲームキャラクタ等の他のオブジェクトの表現に使用するポリゴンの枚数を制限することになるため、表示されるゲーム画像の全体的な質の低下を招く。
【０００６】
更に安価な３次元ゲーム装置においては、板オブジェクト９００の倒し込みにより、板オブジェクト９００にマッピングされるテクスチャが歪み、画質が著しく低下するという問題もあった。
【０００７】
本発明は、以上のような技術的課題に鑑みなされたものであり、その目的とするところは、少ないポリゴン枚数で高品質な地面、水面等の画像を合成できる３次元ゲーム装置及び情報記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上述した課題を解決するために、本発明は、オブジェクト空間内の所与の視点、視線での視界画像を合成してスクリーン上に表示する３次元ゲーム装置であって、前記スクリーン上に配置される複数の長方形ポリゴンの各頂点のテクスチャ座標を求めるテクスチャ座標演算手段と、前記テクスチャ座標により指定されるテクスチャを前記長方形ポリゴンにマッピングする手段と、テクスチャがマッピングされた前記長方形ポリゴンを並べた画像を含む視界画像を合成する手段とを含み、前記テクスチャ座標演算手段が、前記視点の位置情報及び前記視線の方向情報によりテクスチャ平面との位置関係が特定される仮想視点及び仮想スクリーンを設定し、前記仮想スクリーン上に配置される仮想長方形ポリゴンの各頂点を、前記仮想視点を投影中心として前記テクスチャ平面に投影し、投影点のテクスチャ座標を前記長方形ポリゴンの各頂点のテクスチャ座標とすることを特徴とする。
【０００９】
本発明によれば、オブジェクト空間内の視点の位置情報、視線の方向情報に基づいて仮想視点、仮想スクリーンが設定される。そしてこの仮想スクリーン上に配置される仮想長方形ポリゴンの各頂点がテクスチャ平面に投影され、この投影点のテクスチャ座標が長方形ポリゴンのテクスチャ座標とされる。そしてこのテクスチャ座標により指定されるテクスチャが長方形ポリゴンにマッピングされ、これらの長方形ポリゴンを並べた画像を含む視界画像がスクリーン上に表示される。このようにすることで本発明によれば、少ないポリゴン枚数で高品質な水面、地面、天井、壁等の画像を表現できる。また水平線、地平線等の無限遠にある境界線を正確に表現することも可能となる。更にテクスチャマッピングの際に生じるテクスチャの歪みを、より少なくすることが可能となる。
【００１０】
また本発明は、前記長方形ポリゴンが、前記スクリーンの水平走査方向に長辺が設定され１水平走査線分の高さを持つことを特徴とする。
【００１１】
このようにすれば、特に水面、地面、天井等の画像の高品質化を図れる。またテクスチャマッピングの際に生じるテクスチャの歪みを原理的には零にすることが可能となる。
【００１２】
また本発明は、前記テクスチャ座標演算手段が、オブジェクト空間内での前記視点の位置情報に基づいて、前記仮想視点と前記テクスチャ平面との距離と、前記仮想視点からの垂線が前記テクスチャ平面と交わる点の位置を設定し、前記オブジェクト空間内での前記視線の方向情報に基づいて、前記仮想視点から前記仮想スクリーンの中心に向かう仮想視線の方向を設定することを特徴とする。
【００１３】
このようにすれば、視点が移動すると、仮想視点も例えば同一方向に移動し、視線の方向が変わると、仮想視線の方向も例えば同一方向に変わる。これにより例えば、視線の方向変化に伴い波頭の方向が変化する水面や、視点の移動に伴い波立つ水面等の表現が可能となる。
【００１４】
また本発明は、前記テクスチャ座標演算手段が、１の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他の長方形ポリゴンの頂点のテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせることを特徴とする。
【００１５】
このようにすれば、長方形ポリゴンにマッピングされるテクスチャに意図的に歪みを生じさせることが可能となり、水面や砂漠等のリアルな表現が可能となる。
【００１６】
また本発明は、前記テクスチャ座標演算手段が、１のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離と、他のフレームでテクスチャ座標を求める際の前記仮想視点と前記仮想スクリーンの間の距離とを異ならせることを特徴とする。
【００１７】
このようにすれば、時間の経過と共に波が押し寄せてくる水面等のリアルな表現が可能となる。
【００１８】
また本発明は、垂直走査方向に並べられた前記複数の長方形ポリゴンを用いて、オブジェクト空間内の視点から無限遠の位置にある境界線をその一部として含む背景画像を合成することを特徴とする。
【００１９】
本発明によれば、少ないポリゴン数で、無限遠の位置にある境界線、即ち水平線、地平線等の正確な表現が可能となる。これにより広大な大地、砂漠、水面上でゲームキャラクタ同士が対戦を行う場面等の表現が可能となる。
【００２０】
【発明の実施の形態】
以下、本発明の実施例について図面を用いて説明する。
【００２１】
図１に本実施例の機能ブロック図の一例を示す。ここで操作部１２は、プレーヤがレバー、ボタン等を操作して操作情報を入力するためのものであり、操作部１２にて得られた操作情報は処理部１００に入力される。処理部１００は、この操作情報と、所与のプログラム等に基づいて、プログラムの実行、各種モードの設定、表示物の配置、背景の設定等の種々の処理を行うものであり、ハードウェア的には例えばＣＰＵとメモリにより構成される。画像合成部２００は、処理部１００での処理結果に基づいて、ゲームキャラクタ、固定物等が配置されるオブジェクト空間内の所与の視点での視界画像（ゲーム画像）を合成する処理を行うものであり、ハードウェア的には例えば画像合成専用のＩＣとメモリ或いはＤＳＰとメモリにより構成される。画像合成部２００で生成された画像は表示部１０に出力され、表示部１０において表示される。
【００２２】
処理部１００は、入力受け付け部１１０、動作決定部１１４、オブジェクト空間設定部１１８、テクスチャ座標演算部１２０を含む。これらの入力受け付け部１１０、動作決定部１１４、オブジェクト空間設定部１１８、テクスチャ座標演算部１２０の機能は、例えば所与のプログラム、ＣＰＵ、メモリ等により実現される。
【００２３】
入力受け付け部１１０は、操作部１２を用いてプレーヤにより入力された操作情報を受け付ける処理を行う。
【００２４】
動作決定部１１４は、入力受け付け部１１０で受け付けられた操作情報に基づいて、スクリーン上に表示するゲームキャラクタの動作を決定するための処理を行う。本実施例では、例えば複数のオブジェクトで構成されるゲームキャラクタのモーション情報が予め用意されている。このモーション情報は、ゲームキャラクタの動作時における各オブジェクトの位置・方向情報の変化を特定する情報を含む。そして、操作部１２からの操作情報に基づいて、この操作情報に対応するモーション情報を選択し、このモーション情報にしたがってゲームキャラクタを動かす。
【００２５】
オブジェクト空間設定部１１８は、動作決定部１１４の処理結果等に基づいて、オブジェクト空間上にオブジェクトを設定配置する処理を行う。具体的には、オブジェクト空間内に配置するオブジェクトの識別情報（オブジェクトナンバー）、オブジェクトの位置情報、方向情報を含むオブジェクト情報を、１フレーム毎に更新する処理を行う。
【００２６】
テクスチャ座標演算部１２０は、後述する長方形ポリゴンの各頂点のテクスチャ座標を求める処理を行う。
【００２７】
画像合成部２００は、オブジェクト画像合成部２１０、テクスチャ記憶部２２０、背景画像合成部２３０、ミキシング部２４０を含む。
【００２８】
オブジェクト画像合成部２１０は、オブジェクト空間設定部１１８により設定されたオブジェクト情報に基づいて、ゲームキャラクタ、固定物等のオブジェクトの画像を合成する処理を行う。この際、オブジェクト画像合成部２１０は、オブジェクトを構成する各ポリゴンにマッピングするテクスチャをテクスチャ記憶部２２０から読み出しながら画像合成を行う。
【００２９】
背景画像合成部２３０は、複数の長方形ポリゴンを用いて表現される水面、地面等の背景の画像を合成する処理を行う。この際、背景画像合成部２３０は、各長方形ポリゴンにマッピングするテクスチャを、テクスチャ座標演算部１２０により求められたテクスチャ座標に基づいてテクスチャ記憶部２２０から読み出す。
【００３０】
ミキシング部２４０は、オブジェクトと画像合成部２１０により合成されたオブジェクト画像と、背景画像合成部２３０により合成された背景画像を合成する処理を行う。この際、背景画像が、オブジェクト画像よりも、常にスクリーンの奥になるようにミキシング処理が行われる。そしてミキシング部２４０の出力に基づき、表示部１０に視界画像が表示される。
【００３１】
図２に、以上の処理により合成される視界画像（ゲーム画像）の一例を示す。プレーヤは、操作部１２を用いてゲームキャラクタ２０を操作し、相手プレーヤ又はコンピュータが操作する相手ゲームキャラクタ２２と対戦を行う。この時、本実施例では、背景画像の１つである水面２６の画像が映し出されている。
【００３２】
本実施例では、水面２６を表現するために以下に説明する手法を採用している。即ち、まず、図３に示すような仮想視点３０、仮想スクリーン３２が、テクスチャ平面（Ｕ、Ｖ）３４を含む空間（Ｕ、Ｖ、Ｗ）内に設定される。この時、仮想視点３０及び仮想スクリーン３２と、テクスチャ平面３４との位置関係は、オブジェクト空間内での視点の位置情報及び視線の方向情報に基づいて特定される。具体的には、視点の位置情報、視線の方向情報に基づいて、仮想視点３０の位置（ＵＯ、ＶＯ、ＷＯ）と、仮想視点３０から仮想スクリーン３２の中心へと向かう仮想視線３３の方向（θ、φ）とが特定される。なお、ここでテクスチャ平面３４のＵ、Ｖ座標はテクスチャ座標であり、このＵ、Ｖ座標を用いて、テクスチャ記憶部２２０から対応するテクスチャが読み出される。
【００３３】
さて図４（Ａ）に示すように、本実施例では、視界画像が表示される実スクリーン１４は例えば２４０本の走査線を持ち、この実スクリーン１４上には、長方形ポリゴン１６-0〜１６-239が配置される。これらの長方形ポリゴン１６-0〜１６-239の各々は、水平走査方向に長辺が設定され、例えば１水平走査線分の高さを持つ。一方、図３又は図４（Ｂ）に示すように、仮想スクリーン３２上にも、長方形ポリゴン１６-0〜１６-239と同様の配列で、仮想長方形ポリゴン３６-0〜３６-239が配置される。そして図１に示すテクスチャ座標演算部１２０は、仮想スクリーン３２上に配置した仮想長方形ポリゴン３６-0〜３６-239の各頂点を、仮想視点３０を投影中心としてテクスチャ平面３４に対して投影し、投影点のテクスチャ座標を求める。例えば図３では、仮想長方形ポリゴン３６-239の頂点Ａ、Ｂはテクスチャ平面３４の点α、βに投影され、この投影点α、βのテクスチャ座標（Ｕ、Ｖ座標）が求められることになる。
【００３４】
以上のようにして求められたテクスチャ座標は、図１の背景画像合成部２３０に出力される。そして背景画像合成部２３０は、これらのテクスチャ座標に基づいてテクスチャ座標記憶部２２０から対応するテクスチャを読み出し、このテクスチャを、実スクリーン１４上の長方形ポリゴン１６-0〜１６-239にマッピングする処理を行う。そして長方形ポリゴン１６-0〜１６-239に水面を表すテクスチャをマッピングすることで得られる水面２６の画像と、ゲームキャラクタ２０、２２等のオブジェクトの画像とをミキシングすることで、図２に示すような視界画像が合成されることになる。
【００３５】
次に、仮想視点３０、仮想スクリーン３２の設定手法に関して説明する。なお以下の説明では、テクスチャ平面３４上には、水面を表す同密度のテクスチャが設定されていると仮定する。
【００３６】
例えばオブジェクト空間（Ｘ、Ｙ、Ｚ）での視点４０、視線４３が、図５（Ａ）に示すようになっている場合を考える。これは水面２６を、上から真っ直ぐに見下ろしている場合に相当する。この場合、図３のθ、φは０度となり、仮想視点３、仮想スクリーン３２は図５（Ｂ）に示すような設定となる。即ち視線４３の方向が水面２６と垂直になるのと同様に、仮想視点３０から仮想スクリーン３２の中心へと向かう仮想視線３３の方向もテクスチャ平面３４と垂直になる。従って、この場合には、図４（Ａ）に示す実スクリーン１４上の全ての長方形ポリゴン16-0〜16-239に対して、同密度の水面テクスチャがマッピングされることになる。
【００３７】
オブジェクト空間での視線４３の方向が、図５（Ｃ）に示すように水平線の方に向かってθ1だけ変化した場合（Ｘ軸周りにθ１だけ回転した場合）、本実施例では図５（Ｄ）に示すように仮想視線３３の方向もθ1だけ変化する（Ｖ軸周りにθ1だけ回転する）。これにより仮想スクリーン３２のテクスチャ平面３４への投影領域３７は台形となり、図４（Ｃ）に示すように、この台形の投影領域３７にある水面テクスチャが、実スクリーン１４上の長方形ポリゴン１６-0〜１６-239にマッピングされることになる。この結果、実スクリーン１４の上部の長方形ポリゴン１６-0には高密度の水面テクスチャがマッピングされ、下部の長方形ポリゴン１６-239には低密度の水面テクスチャがマッピングされることになり、適正な遠近感を持った水面を実スクリーン１４上に映し出すことが可能となる。
【００３８】
また視点４０が、図５（Ｅ）に示すように上方向（Ｙ方向）に移動した場合、本実施例では、図５（Ｆ）に示すように仮想視点３０も上方向（Ｗ方向）に移動する。すると仮想スクリーン３２の投影領域３７は、より大きくなり、図４（Ｄ）に示すように、この大きな投影領域３７にある水面テクスチャが長方形ポリゴン１６-0〜１６-239にマッピングされることになる。この結果、より高密度の水面テクスチャが長方形ポリゴン１６-0〜１６-238にマッピングされることになり、視点４０の上昇に伴う水面の見え方の変化を忠実に再現することが可能となる。
【００３９】
また視線４３が、図６（Ａ）に示すようにＹ軸周りにφ1だけ回転した場合、本実施例では、図６（Ｂ）に示すように仮想視線３３（仮想スクリーン３２）もＷ軸周りにφ1だけ回転させる。このようにすれば、視線４３が正面を向いている場合には例えば波頭の方向が横方向になり、視線４３が右に９０度回転した場合には波頭の方向が縦方向になる水面等を表現することが可能となる。
【００４０】
また視点４０が、図６（Ｃ）に示すように平面移動した場合（視点４０のＸ、Ｚ座標が変化した場合）、本実施例では、図６（Ｄ）に示すように仮想視点３０も平面移動させる（仮想視点３０のＵ、Ｖ座標も変化させる）。このようにすれば、視点４０が止まっている状態では波が無く、視点４０が動くと波立つ水面等を表現することが可能となる。
【００４１】
なお本実施例では、水面のよりリアルな表現のために次のような処理も行っている。即ち、１の長方形ポリゴンの頂点のテクスチャ座標を求める場合と、他の長方形ポリゴンの頂点のテクスチャ座標を求める場合とで、仮想視点３０と仮想スクリーン３２の間の距離ｈを異ならせている。例えば図７（Ａ）、（Ｂ）に示すように、長方形ポリゴン１６-239のテクスチャ座標を求める際にはｈ＝ｈ0＋ｈ239とし、長方形ポリゴン１６-238のテクスチャ座標を求める際にはｈ＝ｈ0＋ｈ238とする。このようにすれば、例えば図５（Ａ）のように水面２６を上から真っ直ぐに見下ろしている場合においても、マッピングされる水面テクスチャの密度及びプレーヤが感じる遠近感を、長方形ポリゴン間で異ならせることが可能となる。これにより、レンズ越しに見たような効果を得ることができ、水面が歪んでいる様子の表現が可能となり、水面のよりリアルな表現が可能となる。特に本手法を用いれば、視点、視線が変化に伴い波立つ水面等の表現も可能となり、ゲーム画像のリアル感を増すことができる。
【００４２】
なお本実施例では、各長方形ポリゴン１６-0〜１６-239に対応するｈ0〜ｈ239の値は、ゲーム装置の所与の記憶手段にテーブルデータの形態で記憶している。但し、ｈ0〜ｈ239の値を所与の関数を用いて生成するようにしてもよい。
【００４３】
また距離ｈを長方形ポリゴン毎ではなくフレーム毎に変化させる（時間的に変化させる）ようにすることも可能である。即ち１のフレームでテクスチャ座標を求める場合と、他のフレームでテクスチャ座標を求める場合とで、仮想視点３０と仮想スクリーン３２の間の距離ｈを異ならせるようにしてもよい。このようにすれば、視点、視線が止まっている場合においても波立つような水面等を表現することが可能となる。
【００４４】
次に本実施例の動作について図８のフローチャート等を用いて説明する。
【００４５】
まず視点４０の位置、視線４３の方向に基づいて仮想視点３０、仮想スクリーン３２の設定を行う（ステップＳ１）。次に図７（Ａ）、（Ｂ）に示すように、テーブルデータ等を用いて仮想視点３０と仮想スクリーン３２の距離ｈを変化させる（ステップＳ２）。次に図３に示すように、仮想長方形ポリゴンの頂点を、仮想視点３０を投影中心としてテクスチャ平面３４に投影し、投影点のテクスチャ座標を得る（ステップＳ３）。次にテクスチャ座標が無限大になったか又は全ての仮想長方形ポリゴン群の頂点の投影処理が終了したか否かを判断する（ステップＳ４）。そして無限大にならない又は全ての投影処理が終了していない場合にはステップＳ２に戻る。一方、無限大の場合又は全ての投影処理が終了した場合にはステップＳ５に移行し、得られたテクスチャ座標を長方形ポリゴンのテクスチャ座標として設定する。
【００４６】
例えば図９（Ａ）に示すように、仮想視線３３がテクスチャ平面３４と垂直である場合には、仮想スクリーン３２上の全ての仮想長方形ポリゴンの頂点のテクスチャ座標が求められることになる。一方、図９（Ｂ）に示すように、仮想視線３３がテクスチャ平面３４と平行である場合には、仮想スクリーン３２の真ん中付近の仮想長方形ポリゴンの頂点の投影点はテクスチャ平面３４上に存在しなくなる。即ちその投影点のテクスチャ座標が無限大となる。従って、この場合には、仮想スクリーン３２上の下半分の仮想長方形ポリゴンのテクスチャ座標だけが求められることになる。仮想視線３３がテクスチャ平面３４と平行になるのは、オブジェクト空間での視線４３が水面と平行になる時である。そして視線４３が水面と平行になる時には、図９（Ｂ）に示すように、水平線２８は実スクリーン１４の真ん中に位置することになる。このように本実施例によれば、図８のステップＳ４に示すようにテクスチャ座標が無限大になるところで処理を打ち切るという判断を行うだけで、オブジェクト空間内の視点から無限遠の位置にある境界線、即ち水平線や地平線等の正確な表現が可能となる。
【００４７】
次に投影点のテクスチャ座標を求める処理の詳細例について図１０（Ａ）、（Ｂ）、図１１を用いて説明する。視線４３のＸ軸周り、Ｙ軸周りの回転角をθ、φとした場合、本実施例では、まず、下式（１）の回転行列Ｍθφを求める。
Ｍθφ＝Ｍθ×Ｍφ        （１）
Ｍθ：Ｖ軸（Ｘ軸）周りのθの回転を表す行列
Ｍφ：Ｗ軸（Ｙ軸）周りのφの回転を表す行列
この回転行列Ｍθφは、図１０（Ａ）の仮想視線３３の方向変化を表すものである。一方、仮想視線３３の方向変化前の仮想長方形ポリゴンの各頂点Ａ0〜Ａ239の座標（ＵＲ、ＶＲ、ＷＲ）は、例えば図１０（Ｂ）に示すようなテーブルデータの形態でゲーム装置の所与の記憶手段に予め記憶されている。頂点Ｂ0〜Ｂ239についても同様である。
【００４８】
ここで仮想視線３３の方向変化前の頂点ＡnのベクトルをＡＲnと表し、回転角θ、φによる方向変化後の頂点ＡnのベクトルをＡＳnと表すと、
ＡＳn＝ＡＲn×Ｍθφ      （２）
となる。上式（２）により仮想視線３３の方向変化後の頂点Ａnの座標（ＵＳ、ＶＳ、ＷＳ）を求めることができる。
【００４９】
そして図１１から明らかなようにＷＳ：ＵＳ＝Ｌ：ＵＰの関係が成り立つ。同様にＷＳ：ＶＳ＝Ｌ：ＶＰの関係も成り立つ。ここでＬは、仮想視点３０とテクスチャ平面３４との距離を表す。以上より、頂点Ａｎの投影点のテクスチャ座標（ＵＰ、ＶＰ）は、下式（３）、（４）により求めることができる。
ＵＰ＝Ｌ×ＵＳ／ＷＳ      （３）
ＶＰ＝Ｌ×ＶＳ／ＷＳ      （４）
頂点Ｂnの投影点のテクスチャ座標も同様の処理により求めることができる。
【００５０】
以上説明したように本実施例によれば、図１７（Ａ）、（Ｂ）に示す手法と異なり、水面、地面等の高品質な背景画像を、少ないポリゴン枚数で生成することが可能となる。また図１７（Ａ）、（Ｂ）の手法では、水平線、地平線等の正確な表現は、膨大なポリゴン数を必要とするため、実質的に不可能であったが、本実施例によれば、ポリゴン数をそれほど増やすことなく水平線、地平線等の正確な表現が可能となる。また図１７（Ａ）、（Ｂ）の手法では、板オブジェクト９００の倒し込みにより板オブジェクト９００にマッピングされるテクスチャが歪み、画質が著しく低下するという問題があったが、本実施例によれば、長方形ポリゴンの高さを例えば１水平走査線分とすることで、上記歪みを原理的には零にすることができ、安価なハードウェアを用いた場合にも高品質の画像を提供できる。更に例えば図７（Ａ）、（Ｂ）で説明した手法を採用することで、マッピングするテクスチャに意図的な歪みを発生させることができ、波立つ水面等の表現が可能となる。
【００５１】
次に、本実施例を実現できるハードウェアの構成の一例について図１２を用いて説明する。同図に示す装置では、ＣＰＵ１０００、ＲＯＭ１００２、ＲＡＭ１００４、情報記憶媒体１００６、音合成ＩＣ１００８、画像合成ＩＣ１０１０、Ｉ／Ｏポート１０１２、１０１４が、システムバス１０１６により相互にデータ送受信可能に接続されている。そして前記画像合成ＩＣ１０１０にはディスプレイ１０１８が接続され、音合成ＩＣ１００８にはスピーカ１０２０が接続され、Ｉ／Ｏポート１０１２にはコントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には通信装置１０２４が接続されている。
【００５２】
情報記憶媒体１００６は、プログラム、表示物を表現するための画像情報、音情報等が主に格納されるものであり、ＣＤ−ＲＯＭ、ゲームカセット、ＩＣカード、ＤＶＤ、ＭＯ、ＦＤ、メモリ等が用いられる。例えば家庭用ゲーム装置ではゲームプログラム等を格納する情報記憶媒体としてＣＤ−ＲＯＭ、ゲームカセット、ＤＶＤ等が用いられる。また業務用ゲーム装置ではＲＯＭ等のメモリが用いられ、この場合には情報記憶媒体１００６はＲＯＭ１００２になる。
【００５３】
コントロール装置１０２２はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【００５４】
情報記憶媒体１００６に格納されるプログラム、ＲＯＭ１００２に格納されるシステムプログラム（装置本体の初期化情報等）、コントロール装置１０２２によって入力される信号等に従って、ＣＰＵ１０００は装置全体の制御や各種データ処理を行う。ＲＡＭ１００４はこのＣＰＵ１０００の作業領域等として用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、あるいはＣＰＵ１０００の演算結果等が格納される。また図１０（Ｂ）に示すテーブルデータ等の論理的な構成を持つデータ構造は、このＲＡＭ又は情報記憶媒体上に構築されることになる。
【００５５】
更に、この種の装置には音合成ＩＣ１００８と画像合成ＩＣ１０１０とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音合成ＩＣ１００８は情報記憶媒体１００６やＲＯＭ１００２に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を合成する集積回路であり、合成されたゲーム音はスピーカ１０２０によって出力される。また、画像合成ＩＣ１０１０は、ＲＡＭ１００４、ＲＯＭ１００２、情報記憶媒体１００６等から送られる画像情報に基づいてディスプレイ１０１８に出力するための画素情報を合成する集積回路である。なおディスプレイ１０１８として、いわゆるヘッドマウントディスプレイ（ＨＭＤ）と呼ばれるものを使用することもできる。
【００５６】
また、通信装置１０２４はゲーム装置内部で利用される各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受することなどに利用される。
【００５７】
そして図１〜図７（Ｂ）、図９（Ａ）〜図１１で説明した種々の処理は、図８のフローチャートに示した処理等を行うプログラムを格納した情報記憶媒体１００６と、該プログラムに従って動作するＣＰＵ１０００、画像合成ＩＣ１０１０、音合成ＩＣ１００８等によって実現される。なお画像合成ＩＣ１０１０、音合成ＩＣ１００８等で行われる処理は、ＣＰＵ１０００あるいは汎用のＤＳＰ等によりソフトウェア的に行ってもよい。
【００５８】
図１３（Ａ）に、本実施例を業務用ゲーム装置に適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、ハンドル１１０２、シフトレバー１１０３、アクセル１１０４を操作してゲームを楽しむ。装置に内蔵されるＩＣ基板１１０６には、ＣＰＵ、画像合成ＩＣ、音合成ＩＣ等が実装されている。そして、水平走査方向に長辺が設定され少なくとも１水平走査線分の高さを持つ長方形ポリゴンの各頂点のテクスチャ座標を求めるための情報、テクスチャ座標により指定されるテクスチャを長方形ポリゴンにマッピングするための情報、テクスチャがマッピングされた長方形ポリゴンを垂直走査方向に複数並べた画像を含む視界画像を合成するための情報、視点の位置情報及び視線の方向情報によりテクスチャ平面との位置関係が特定される仮想視点及び仮想スクリーンを設定し、仮想スクリーン上に配置される仮想長方形ポリゴンの各頂点を、仮想視点を投影中心としてテクスチャ平面に投影し、投影点のテクスチャ座標を長方形ポリゴンの各頂点のテクスチャ座標とするための情報、オブジェクト空間内での視点の位置情報に基づいて、仮想視点とテクスチャ平面との距離と、仮想視点からの垂線がテクスチャ平面と交わる点の位置を設定するための情報、オブジェクト空間内での視線の方向情報に基づいて仮想視線の方向を設定するための情報、１の長方形ポリゴンの頂点のテクスチャ座標を求める際の仮想視点と仮想スクリーンの間の距離と、他の長方形ポリゴンの頂点のテクスチャ座標を求める際の仮想視点と仮想スクリーンの間の距離とを異ならせるための情報、１のフレームでテクスチャ座標を求める際の仮想視点と仮想スクリーンの間の距離と、他のフレームでテクスチャ座標を求める際の仮想視点と仮想スクリーンの間の距離とを異ならせるための情報、垂直走査方向に並べられた複数の長方形ポリゴンを用いて、オブジェクト空間内の視点から無限遠の位置にある境界線をその一部として含む背景画像を合成するための情報等は、ＩＣ基板１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、これらの情報を格納情報と呼ぶ。これらの格納情報は、上記の種々の処理を行うためのプログラムコード、画像情報、音情報、表示物の形状情報、テーブルデータ、リストデータ、プレーヤ情報等の少なくとも１つを含むものである。
【００５９】
図１３（Ｂ）に、本実施例を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２０６、ＩＣカード１２０８、１２０９等に格納されている。
【００６０】
図１３（Ｃ）に、ホスト装置１３００と、このホスト装置１３００と通信回線１３０２を介して接続される端末１３０４ー1〜１３０４-nとを含むゲーム装置に本実施例を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４ー1〜１３０４-nが、ＣＰＵ、画像合成ＩＣ、音合成ＩＣを有し、スタンドアロンでゲーム画像、ゲーム音を合成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を合成するためのゲームプログラム等が端末１３０４ー1〜１３０４-nに配送される。一方、スタンドアロンで合成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を合成し、これを端末１３０４ー1〜１３０４-nに伝送し端末において出力することになる。
【００６１】
なお本発明は、上記実施例で説明したものに限らず、種々の変形実施が可能である。
【００６２】
例えば上記実施例では、水面や地面のように、視点よりも下にある背景画像の合成に本発明を適用した場合について主に説明したが、本発明はこれに限られるものではない。例えば図１４にはロールプレイングゲーム等における迷路内での視界画像の例が示されているが、このような迷路の天井６０の画像合成に本発明を適用することもできる。この場合には例えば図１５（Ａ）、（Ｂ）に示すように、仮想視点３０の下方にテクスチャ平面２４ａを配置すると共に、上方にもテクスチャ平面２４ｂを配置する。そして天井６０の画像合成は、仮想スクリーン３２上の仮想長方形ポリゴンの各頂点を、上方のテクスチャ平面２４ｂに投影することで実現できる。迷路内の壁６２の画像合成についても同様に可能である。
【００６３】
また上記実施例では、長方形ポリゴンの長さがスクリーンの横方向の長さと等しい場合について主に説明したが、長方形ポリゴンの長さをスクリーンの横方向の長さよりも短くすることも可能である。例えば図１６（Ａ）に示すように、洞窟７２の中を流れる川の水面７０を表現する場合には、図１６（Ｂ）のＦに示すように長方形ポリゴンの長さを、スクリーンの横方向の長さよりも短くする。
【００６４】
また長方形ポリゴンの高さは、テクスチャマッピングの際に生じる歪みを最小限に抑える観点からは、１水平走査線分の高さであることが特に望ましいが、これよりも高くすることも可能である。
【００６５】
またテクスチャ座標演算部１２０で行われる処理を、ソフトウェアではなくハードウェアで行うことも可能である。
【００６６】
また処理部、画像合成部の構成及び動作も、図１で説明したものに限られるものではない。
【００６７】
また本発明は、家庭用、業務用のゲーム装置のみならず、シミュレータ、多数のプレーヤが参加する大型アトラクション装置、パーソナルコンピュータ、マルチメディア端末等の種々のゲーム装置に適用できる。
【００６８】
【図面の簡単な説明】
【図１】本実施例の機能ブロック図の一例である。
【図２】本実施例により合成される視界画像の一例である。
【図３】本実施例の原理を説明するための図である。
【図４】図４（Ａ）〜（Ｄ）は、実スクリーンとマッピングするテクスチャとの関係について説明するための図である。
【図５】図５（Ａ）〜（Ｆ）は、仮想視点、仮想スクリーンの設定手法について説明するための図である。
【図６】図６（Ａ）〜（Ｄ）も、仮想視点、仮想スクリーンの設定手法について説明するための図である。
【図７】図７（Ａ）、（Ｂ）は、仮想視点と仮想スクリーンの間の距離を変化させる手法について説明するための図である。
【図８】本実施例の動作の一例を説明するためのフローチャートである。
【図９】図９（Ａ）、（Ｂ）は、水平線、地平線の表現について説明するための図である。
【図１０】図１０（Ａ）、（Ｂ）は、投影点のテクスチャ座標を求める処理の詳細例について説明するための図である。
【図１１】投影点のテクスチャ座標を求める処理の詳細例について説明するための図である。
【図１２】本実施例を実現するハードウェアの構成の一例を示す図である。
【図１３】図１３（Ａ）、（Ｂ）、（Ｃ）は、本実施例が適用される種々の形態の装置を示す図である。
【図１４】迷路の天井、壁等への本実施例の適用例について説明するための図である。
【図１５】図１５（Ａ）、（Ｂ）も、迷路の天井、壁等への本実施例の適用例について説明するための図である。
【図１６】図１６（Ａ）、（Ｂ）は、長方形ポリゴンの長さをスクリーンの横方向の長さよりも短くする場合について説明するための図である。
【図１７】図１７（Ａ）、（Ｂ）は、従来の手法について説明するための図である。
【符号の説明】
１０    表示部
１２    操作部
１００  処理部
１１０  入力受け付け部
１１４  動作決定部
１１８  オブジェクト空間設定部
１２０  テクスチャ座標演算部
２００  画像合成部
２１０  オブジェクト画像合成部
２２０  テクスチャ記憶部
２３０  背景画像合成部
２４０  ミキシング部
【図１】
0004063368.tif 000002
【図２】
0004063368.tif 000003
【図３】
0004063368.tif 000004
【図４】
0004063368.tif 000005
【図５】
0004063368.tif 000006
【図６】
0004063368.tif 000007
【図７】
0004063368.tif 000008
【図８】
0004063368.tif 000009
【図９】
0004063368.tif 000010
【図１０】
0004063368.tif 000011
【図１１】
0004063368.tif 000012
【図１２】
0004063368.tif 000013
【図１３】
0004063368.tif 000014
【図１４】
0004063368.tif 000015
【図１５】
0004063368.tif 000016
【図１６】
0004063368.tif 000017
【図１７】
0004063368.tif 000018