(57)【特許請求の範囲】
【請求項１】
画像生成を行うゲームシステムであって、
蓋形状の第１の最遠景オブジェクトが、中空の柱体形状の第２の最遠景オブジェクトの端面からずらした位置に配置されるように、３次元の第１、第２の最遠景オブジェクトをオブジェクト空間に設定する手段と、
第１の最遠景オブジェクトに設定された半透明合成率に基づいて、第１、第２の最遠景オブジェクト画像の半透明合成処理を行う手段と、
第１、第２の最遠景オブジェクトを含むオブジェクトが設定されるオブジェクト空間において仮想カメラから見える画像を生成する手段とを含み、
前記半透明合成処理を行う手段が、
第１、第２の最遠景オブジェクト間の境界に近づくにつれて第１の最遠景オブジェクト画像の合成割合が小さくなるように、第１の最遠景オブジェクトに前記半透明合成率を設定することを特徴とするゲームシステム。
【請求項２】
請求項１において、
第１の最遠景オブジェクトの配置位置が可変に設定されることを特徴とするゲームシステム。
【請求項３】
請求項１又は２において、
仮想カメラの移動に追従させて第１、第２の最遠景オブジェクトを移動させることを特徴とするゲームシステム。
【請求項４】
請求項１乃至３のいずれかにおいて、
第１の最遠景オブジェクトに対して、テクスチャをテクスチャスクロールさせながらマッピングすることを特徴とするゲームシステム。
【請求項５】
請求項４において、
第１の最遠景オブジェクトを複数設け、これらの複数の第１の最遠景オブジェクト間でテクスチャスクロールの仕方を互いに異ならせることを特徴とするゲームシステム。
【請求項６】
コンピュータが使用可能な情報記憶媒体であって、
蓋形状の第１の最遠景オブジェクトが、中空の柱体形状の第２の最遠景オブジェクトの端面からずらした位置に配置されるように、３次元の第１、第２の最遠景オブジェクトをオブジェクト空間に設定する手段と、
第１の最遠景オブジェクトに設定された半透明合成率に基づいて、第１、第２の最遠景オブジェクト画像の半透明合成処理を行う手段と、
第１、第２の最遠景オブジェクトを含むオブジェクトが設定されるオブジェクト空間において仮想カメラから見える画像を生成する手段と、
をコンピュータに実現させるためのプログラムを記憶した情報記憶媒体であって、
前記半透明合成処理を行う手段が、
第１、第２の最遠景オブジェクト間の境界に近づくにつれて第１の最遠景オブジェクト画像の合成割合が小さくなるように、第１の最遠景オブジェクトに前記半透明合成率を設定することを特徴とする情報記憶媒体。
【請求項７】
請求項６において、
第１の最遠景オブジェクトの配置位置が可変に設定されることを特徴とする情報記憶媒体。
【請求項８】
請求項６又は７において、
仮想カメラの移動に追従させて第１、第２の最遠景オブジェクトを移動させることを特徴とする情報記憶媒体。
【請求項９】
請求項６乃至８のいずれかにおいて、
第１の最遠景オブジェクトに対して、テクスチャをテクスチャスクロールさせながらマッピングすることを特徴とする情報記憶媒体。
【請求項１０】
請求項９において、
第１の最遠景オブジェクトを複数設け、これらの複数の第１の最遠景オブジェクト間でテクスチャスクロールの仕方を互いに異ならせることを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲームシステム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内において仮想カメラ（所与の視点）から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ガンゲームを楽しむことができるゲームシステムを例にとれば、プレーヤ（操作者）は、銃などを模して作られたガン型コントローラ（シューティングデバイス）を用いて、画面に映し出される敵キャラクタ（敵オブジェクト）などの標的をシューティングすることで、３次元ゲームを楽しむ。
【０００３】
さて、このようなゲームシステムにおいては、背景を表示するための３次元の最遠景オブジェクト（スカイドーム）をオブジェクト空間内に設けることが望まれる。このような３次元の最遠景オブジェクトを設けることで、仮想カメラがオブジェクト空間内で様々な方向に向いた場合にも、適切な背景を表示することが可能になる。また、単なる２次元画像により背景表示を行う場合に比較して、リアルな背景画像を提供することが可能になる。
【０００４】
このような最遠景オブジェクトの構造や配置に関する従来技術としては、例えば特開平１１−１７５７４８、１１−１７５７４９などに開示される技術がある。そして、上記の特開平１１−１７５７４８の従来技術では、最遠景オブジェクト間（端面と側面）の境界の存在を目立たなくするという課題を、グーローシェーディング（頂点輝度補間）やデプスキューイングを利用した手法により解決している。即ち、境界に近づくにつれて最遠景オブジェクトの色をターゲット色（例えば白）に近づけることで上記課題を解決している。
【０００５】
しかしながら、グーローシェーディングを利用する上記従来技術には、ターゲット色が例えば白の場合には境界付近に筋のような白の線が見えてしまうという問題がある。更に、境界付近での最遠景オブジェクトの色が白の単色になってしまい最遠景オブジェクト（端面）の絵（例えば雲の絵）の要素が失われてしまうという問題がある。このため、最遠景オブジェクト間（端面と側面）の境界付近での画像をシームレスに繋げることができないという課題がある。
【０００６】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、最遠景オブジェクト間の境界付近での画像をより自然なものにすることができるゲームシステム及び情報記憶媒体を提供することにある。
【０００７】
また本発明の他の目的は、よりリアルな背景画像を少ない処理負担で生成できるゲームシステム及び情報記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行うゲームシステムであって、蓋形状の第１の最遠景オブジェクトが、中空の柱体形状の第２の最遠景オブジェクトの端面からずらした位置に配置されるように、３次元の第１、第２の最遠景オブジェクトをオブジェクト空間に設定する手段と、第１、第２の最遠景オブジェクト間の境界に近づくにつれて第１の最遠景オブジェクトが透明になるように第１、第２の最遠景オブジェクトの半透明合成処理を行う手段と、第１、第２の最遠景オブジェクトを含むオブジェクトが設定されるオブジェクト空間において仮想カメラから見える画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させるためのモジュールを含むことを特徴とする。
【０００９】
本発明によれば、蓋形状の第１の最遠景オブジェクトと、中空の柱体形状の第２の最遠景オブジェクトがオブジェクト空間に設定される。この場合、第１の最遠景オブジェクトは、第２の最遠景オブジェクトの端面（上端面、下端面）からずらした位置（離れた位置）に配置される。
【００１０】
そして本発明では、第１、第２の最遠景オブジェクト間の境界（嵌合部分）に近づくにつれて、第１の最遠景オブジェクトが透明になるように、第１、第２の最遠景オブジェクトの画像が半透明合成（αブレンディング、α加算又はα減算等）される。これにより、第１、第２の最遠景オブジェクトの境界付近において、第１の最遠景オブジェクトの画像が徐々に消えて行く画像を生成できる。この結果、第１、第２の最遠景オブジェクト間の境界付近での画像をシームレスに繋げることが可能になり、より自然な画像を生成できる。
【００１１】
また本発明は、画像生成を行うゲームシステムであって、第１、第２の最遠景オブジェクトの境界付近において第２の最遠景オブジェクトを奥側にして第１、第２の最遠景オブジェクトが仮想カメラから見て重なり合うように、３次元の第１、第２の最遠景オブジェクトをオブジェクト空間に設定する手段と、第１、第２の最遠景オブジェクト間の境界に近づくにつれて第１の最遠景オブジェクトが透明になるように第１、第２の最遠景オブジェクトの半透明合成処理を行う手段と、第１、第２の最遠景オブジェクトを含むオブジェクトが設定されるオブジェクト空間において仮想カメラから見える画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させるためのモジュールを含むことを特徴とする。
【００１２】
本発明によれば、第１、第２の最遠景オブジェクトの境界付近に仮想カメラが向いた場合に、第１の最遠景オブジェクトを手前にし、第２の最遠景オブジェクトを奥側にして、第１、第２の最遠景オブジェクトが重なり合って見えるようになる。
【００１３】
そして、本発明では、第１、第２の最遠景オブジェクト間の境界に近づくにつれて、第１の最遠景オブジェクトが透明になるように、第１、第２の最遠景オブジェクトの画像が半透明合成される。従って、第１、第２の最遠景オブジェクト間の境界付近での画像をシームレスに繋げることが可能になり、より自然な画像を生成できる。
【００１４】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１の最遠景オブジェクトの配置位置が可変に設定されることを特徴とする。このようにすれば、例えばゲームステージなどに応じた最適な位置に第１の最遠景オブジェクトを配置することが可能になる。
【００１５】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１、第２の最遠景オブジェクト間の境界から離れた領域に第１の最遠景オブジェクトの不透明領域が設けられていることを特徴とする。このようにすれば、本来表示されるべきではない画像が仮想カメラから見えてしまうなどの不具合を解決できる。
【００１６】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１の最遠景オブジェクトの前記不透明領域の略中心に仮想カメラが向いた場合に、仮想カメラの視野範囲での第１の最遠景オブジェクトの画像が不透明になるように、第１の最遠景オブジェクトの前記不透明領域の大きさが設定されていることを特徴とする。このようにすれば、不透明領域の略中心に仮想カメラが向いた場合に（例えば真上を向いた場合に）、本来表示されるべきではない画像がこの不透明領域により隠れて見えなくなり、生成される画像の品質を高めることができる。
【００１７】
また本発明は、画像生成を行うゲームシステムであって、第２の最遠景オブジェクトを奥側にして第１、第２の最遠景オブジェクトが仮想カメラから見て重なり合うように、３次元の第１、第２の最遠景オブジェクトをオブジェクト空間に設定する手段と、第１、第２の最遠景オブジェクトの半透明合成処理を行う手段と、第１、第２の最遠景オブジェクトを含むオブジェクトが設定されるオブジェクト空間において仮想カメラから見える画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させるためのモジュールを含むことを特徴とする。
【００１８】
本発明によれば、第１、第２の最遠景オブジェクトが仮想カメラから見て重なり合うように配置され、これらの第１、第２の最遠景オブジェクトの画像が半透明合成される。従って、第１の最遠景オブジェクトを透過してその奥側に第２の最遠景オブジェクトが見えるような画像を生成できるようになる。これにより、表示される背景に立体感を持たせることが可能になり、生成される画像のリアル感を増すことができる。
【００１９】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１、第２の最遠景オブジェクトは、半球形状又は球形状のオブジェクトであることを特徴とする。このようにすれば、仮想カメラが真上方向などの種々の方向を向いた場合にも、破綻の無い画像を生成できるようになる。
【００２０】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１の最遠景オブジェクトに対して、テクスチャをテクスチャスクロールさせながらマッピングすることを特徴とする。このようにすれば、テクスチャがスクロールしてマッピングされる第１の最遠景オブジェクトを透過して、第２の最遠景オブジェクトがその奥側に見えるような画像を生成できる。これにより、表示される背景に立体感を持たせることが可能になる。
【００２１】
なお、本発明では、第２の最遠景オブジェクトのみに対してテクスチャスクロールを行うようにしてもよいし、第１、第２の最遠景オブジェクトの両方に対してテクスチャスクロールを行うようにしてもよい。
【００２２】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、第１の最遠景オブジェクトを複数設け、これらの複数の第１の最遠景オブジェクト間でテクスチャスクロールの仕方を互いに異ならせることを特徴とする。このようにすれば、複数の第１の最遠景オブジェクト間で、テクスチャにより表現される表示物（雲、樹木等）の流れる方向が違って見えるようになり、生成される背景画像の立体感を更に増すことができる。
【００２３】
なお、本発明では、第１、第２の最遠景オブジェクト間でのテクスチャスクロールの仕方を異ならせるようにしてもよい。
【００２４】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００２５】
１．構成
図１に、本実施形態のゲームシステム（画像生成システム）の機能ブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０を含めばよく）、それ以外のブロックについては任意の構成要素とすることができる。
【００２６】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、或いは筺体などのハードウェアにより実現できる。
【００２７】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００２８】
情報記憶媒体１８０（コンピュータにより使用可能な記憶媒体）は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）をコンピュータに実現（実行、機能）させるためのプログラム等が格納され、このプログラムは、１又は複数のモジュール（オブジェクト指向におけるオブジェクトも含む）を含む。
【００２９】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、本発明の処理を指示するための情報、或いはその指示に従って処理を行うための情報などを含ませることができる。
【００３０】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００３１】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００３２】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００３３】
通信部１９６は、外部（例えばホスト装置や他のゲームシステム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３４】
なお本発明（本実施形態）の各手段を実現するためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００３５】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部１００は、記憶部１７０内の主記憶部１７２をワーク領域として使用して、各種の処理を行う。
【００３６】
ここで、処理部１００が行うゲーム処理としては、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ面）の位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点の位置（仮想カメラの位置）や視線角度（仮想カメラの回転角度）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【００３７】
また処理部１００は、上記のゲーム処理の結果に基づいて各種の画像処理を行い、ゲーム画像を生成し、表示部１９０に出力する。例えば、いわゆる３次元のゲーム画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ（プリミティブ面の構成点（頂点）に付与される位置座標、テクスチャ座標、色（輝度）データ、法線ベクトル或いはα値等）が作成される。そして、この描画データ（プリミティブ面データ）に基づいて、ジオメトリ処理後のオブジェクト（１又は複数プリミティブ面）の画像が、描画バッファ１７４（フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ）に描画される。これにより、オブジェクト空間内において所与の視点（仮想カメラ）から見える画像が生成されるようになる。
【００３８】
更に処理部１００は、上記のゲーム処理結果に基づいて各種の音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００３９】
なお、処理部１００の機能は、より好適には、ハードウェア（ＣＰＵ、ＤＳＰ等のプロセッサ又はゲートアレイ等のＡＳＩＣ）とプログラム（ゲームプログラム又はファームウェア等）との組み合わせにより実現される。但し、処理部１００の機能の全てを、ハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。
【００４０】
処理部１００は、移動・動作演算部１１０、オブジェクト空間設定部１１２、半透明処理部１１４、テクスチャマッピング部１１６を含む。
【００４１】
ここで移動・動作演算部１１０は、キャラクタ、車などのオブジェクト（移動オブジェクト）の移動情報（位置データ、回転角度データ）や動作情報（オブジェクトの各パーツの位置データ、回転角度データ）を演算するものであり、例えば、操作部１６０によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、オブジェクトを移動させたり動作（モーション、アニメーション）させたりする処理を行う。
【００４２】
より具体的には、移動・動作演算部１１０は、オブジェクトの位置や回転角度を例えば１フレーム（１／６０秒）毎に変化させる。例えば（ｋ−１）フレームでのオブジェクトの位置をＰＭk-1、速度をＶＭk-1、加速度をＡＭk-1、１フレームの時間を△ｔとする。するとｋフレームでのオブジェクトの位置ＰＭk、速度ＶＭkは例えば下式（１）、（２）のように求められる。
【００４３】
ＰＭk＝ＰＭk-1＋ＶＭk-1×△ｔ              （１）
ＶＭk＝ＶＭk-1＋ＡＭk-1×△ｔ              （２）
なお、本実施形態では、キャラクタなどの移動オブジェクトの移動に追従して仮想カメラも移動するようになっている。
【００４４】
オブジェクト空間設定部１１２は、マップなどの各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間内に設定するための処理を行う。より具体的には、ワールド座標系でのオブジェクトの位置や回転角度（方向）を決定し、その位置にその回転角度（Ｘ、Ｙ、Ｚ軸回転）でオブジェクトを配置する。
【００４５】
そして本実施形態では、第２の最遠景オブジェクトを奥側にして第１、第２の最遠景オブジェクトが仮想カメラ（視点）から見て重なり合うように、３次元形状の第１、第２の最遠景オブジェクトがオブジェクト空間に配置される。より具体的には、３次元形状の第１、第２の最遠景オブジェクトが、その境界付近において仮想カメラから見て重なり合うようにオブジェクト空間に配置される。更に具体的には、蓋形状（円盤形状等）の第１の最遠景オブジェクトが、中空の柱体形状（円柱又は角柱形状等）の第２の最遠景オブジェクトの端面（上端面、下端面）からずらした位置に例えば嵌合して配置される。或いは、半球形状又は球形状の第１、第２の最遠景オブジェクトを仮想カメラから見て重なり合うように配置してもよい。
【００４６】
半透明処理部１１４は、例えばオブジェクト（プリミティブ面）やテクスチャなどに設定されたα値を用いて、種々の半透明合成処理（αブレンディング、α加算又はα減算等）を行う。αブレンディングの場合は例えば次式（３）、（４）、（５）に示すような処理を行う。
【００４７】
ＲＱ＝（１−α）×Ｒ１＋α×Ｒ２        （３）
ＧＱ＝（１−α）×Ｇ１＋α×Ｇ２        （４）
ＢＱ＝（１−α）×Ｂ１＋α×Ｂ２        （５）
ここで、Ｒ１、Ｇ１、Ｂ１は、描画バッファ１７４に既に描画されている元画像の色（輝度）のＲ、Ｇ、Ｂ成分であり、Ｒ２、Ｇ２、Ｂ２は、元画像に対して重ね書きする画像の色のＲ、Ｇ、Ｂ成分である。
【００４８】
そして本実施形態では、半透明処理部１１４が第１、第２の最遠景オブジェクトを半透明合成（α合成）する処理を行っている。より具体的には、第１、第２の最遠景オブジェクト間の境界に近づくにつれて第１の最遠景オブジェクトが透明になるように半透明合成処理を行う。
【００４９】
なお、α値（Ａ値）は、各ピクセルに関連づけられて記憶されるデータであり、例えば色データ（ＲＧＢ）以外のプラスアルファのデータである。α値は、半透明情報（透明情報又は不透明情報と等価）、マスク情報、バンプ情報などとして使用できる。
【００５０】
テクスチャマッピング部１１６は、テクスチャ記憶部１７６に記憶されるテクスチャをオブジェクトにマッピングする処理を行う。
【００５１】
そして、本実施形態では、最遠景オブジェクトについては、テクスチャをテクスチャスクロール（移動スクロール、回転スクロール）させながらマッピングするようにしている。このテクスチャスクロールは、例えば、テクスチャパターンが定義されるテクスチャ空間（テクスチャ記憶部１７６）においてテクスチャの原像領域が移動又は回転するように、オブジェクトに付与するテクスチャ座標を変化させることで実現できる。
【００５２】
なお、本実施形態のゲームシステムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５３】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて生成してもよい。
【００５４】
２．本実施形態の特徴
次に本実施形態の特徴について図面を用いて説明する。
【００５５】
２．１  最遠景オブジェクトの配置
本実施形態では背景を表すために、図２に示すような最遠景オブジェクトＯＢ１、ＯＢ２を用いている。
【００５６】
ここで、最遠景オブジェクトＯＢ１は蓋形状のオブジェクトであり、例えば雲や空などの絵が描かれている。また、最遠景オブジェクトＯＢ２は中空の柱体形状（筒状）のオブジェクトであり、その側面には雲や空などの絵が描かれている。そして本実施形態では図２のＡ１に示すように、蓋形状の最遠景オブジェクトＯＢ１を、柱体形状の最遠景オブジェクトＯＢ２の端面（上端面、下端面）からずらした位置に例えば嵌合して配置している。即ち、最遠景オブジェクトＯＢ１を、ＯＢ２の上端面の位置に配置せずに上端面から下にずらした位置に配置している。
【００５７】
このようにすれば、最遠景オブジェクトＯＢ１、ＯＢ２の境界ＢＤ（ＯＢ１、ＯＢ２の嵌合部分）付近を仮想カメラＶＣから見た場合に、ＯＢ２を奥側にしてＯＢ１、ＯＢ２が重なり合って見えるようになる。
【００５８】
そして本実施形態では図２のＡ２に示すように、最遠景オブジェクトＯＢ１は、ＯＢ１とＯＢ２の境界ＢＤ（外縁）に近づくにつれて徐々に透明になるようにそのα値が設定されている。より具体的には、最遠景オブジェクトＯＢ１の真ん中付近（ＢＤから離れた位置）には、不透明領域ＯＰＲが設定される。そして、この不透明領域ＯＰＲの外縁ＯＰＥから境界ＢＤに近づくにつれて、最遠景オブジェクトＯＢ１は徐々に透明になる。そして、境界ＢＤにおいては最遠景オブジェクトＯＢ１は完全に透明になる。
【００５９】
このようにすれば、図２のＡ１から明らかなように、最遠景オブジェクトＯＢ１とＯＢ２の境界ＢＤ付近において、ＯＢ１とＯＢ２が半透明合成（αブレンディング、α加算又はα減算等）されたゲーム画像が生成されるようになる。この結果、境界ＢＤ付近において、最遠景オブジェクトＯＢ１、ＯＢ２の画像がシームレスに繋がるようになり、境界ＢＤ付近での画像をより自然なものにすることができる。
【００６０】
例えば図３に本実施形態より生成されたゲーム画像の例を示す。
【００６１】
図３に示すように、境界ＢＤ付近においては、最遠景オブジェクトＯＢ１の雲の絵とＯＢ２の雲の絵が半透明合成された画像が生成されている。従って、ＯＢ１の雲の絵がＯＢ２の雲の絵に自然に溶け込んで変化して行くような表現が可能になる。即ち、ターゲット色（白）に色を収束させる特開平１１−１７５７４８の従来技術では生じていた白い筋などは生じず、より自然な画像を生成できる。
【００６２】
なお、比較・参考のために図４に、最遠景オブジェクトＯＢ１を配置しなかった場合に生成されるゲーム画像の例を示す。
【００６３】
また図５に、最遠景オブジェクトＯＢ１のα値（半透明度、透明度、不透明度）をグレースケールで表したものを示す。図５において、黒の部分がＯＢ１の不透明領域（α＝１．０）である。そして最遠景オブジェクトＯＢ１は、境界ＢＤに近づくにつれて徐々に透明になり（αが小さくなり）、境界ＢＤでは完全に透明（α＝０．０）になる。
【００６４】
また図６に、最遠景オブジェクトＯＢ１、ＯＢ２のワイヤーフレームモデルの例を示す。但し、図６では、複数の最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２が設けられている。
【００６５】
なお図７（Ａ）に示すように、最遠景オブジェクトＯＢ２の、境界ＢＤから上のはみ出し部分ＳＰ（又はＢＤより下のはみ出し部分）の形状を、例えば湾曲形状にしてもよい。
【００６６】
また、最遠景オブジェクトＯＢ１への均一なテクスチャマッピングを実現するためには、ＯＢ１の形状は平面形状（円盤形状）であることが望ましいが、図７（Ｂ）に示すような湾曲形状にしてもよい。
【００６７】
また図８（Ａ）に示すように、最遠景オブジェクトＯＢ１の配置位置（ＯＢ２に対するＯＢ１の相対位置）は可変に設定できることが望ましい。
【００６８】
例えば、最遠景オブジェクトＯＢ１の配置位置を上に設定しすぎると、仮想カメラＶＣから見て空が高くなりすぎてしまい、不自然な画像が生成される。従って、通常のゲームステージでは、このような不自然な画像が生成されないような位置に最遠景オブジェクトＯＢ１を配置する。
【００６９】
一方、例えば大きな敵ボスＥＯＢを倒すようなゲームステージにおいては、最遠景オブジェクトＯＢ１の配置位置を下に設定しすぎると、敵ボスＥＯＢの体の一部（頭等）が雲（ＯＢ１）の上に出て隠れてしまうなどの不具合が生じる。従って、このようなゲームステージでは、最遠景オブジェクトＯＢ１を、なるべく上に配置する。
【００７０】
このように、最遠景オブジェクトＯＢ１の配置位置をゲームステージなどに応じて可変に設定すれば、各ゲームステージに最適な背景画像を生成できるようになる。
【００７１】
また、図８（Ｂ）のように、複数（２個以上）の最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２を設けるようにしてもよい。このようにすれば、例えば、雲海の上で敵ボスＥＯＢと戦うようなゲームを表現できるようになり、得られるゲーム画像のバリエーションを増すことができる。
【００７２】
また、図８（Ｃ）に示すように、最遠景オブジェクトＯＢ２の上端面（又は下端面）に、遮蔽オブジェクトＯＢＳを配置するようにしてもよい。このようにすれば、本来は表示されるべきではない画像（例えば描画バッファに残っている前のフレームの画像）が、最遠景オブジェクトＯＢ１、ＯＢ２により隠されずに仮想カメラＶＣから見えてしまうなどの不具合を防止できる。
【００７３】
また、例えば遮蔽オブジェクトＯＢＳを黒などの色で塗りつぶしておけば、オブジェクトＯＢ１を取り除くだけで夜の空などを表現できるようになり（図４参照）、少ない処理負担でゲーム画像のバラエティ度を増すことができる。
【００７４】
２．２  不透明領域の設定
さて、図２の不透明領域ＯＰＲの大きさは例えば以下に説明するような手法で設定することが望ましい。
【００７５】
例えば図９に示すように、最遠景オブジェクトＯＢ１の不透明領域ＯＰＲの中心付近（ＯＢ１の中心付近）に仮想カメラＶＣが向いている場合を想定する。
【００７６】
このような場合に図９のＢ１に示すように、仮想カメラＶＣの視野範囲（視界内）での最遠景オブジェクトＯＢ１の画像が全て不透明になるように、ＯＢ１の不透明領域ＯＰＲの大きさを設定する。
【００７７】
また図９のＢ２に示すように、最遠景オブジェクトＯＢ２の、境界ＢＤからのはみ出し部分ＳＰが、仮想カメラＶＣのビューイングボリュームＶＶに接する又は中に入り込むように、はみ出し部分ＳＰの長さＬＳ（最遠景オブジェクトＯＢ１の配置位置）を設定する。
【００７８】
このようにすれば、仮想カメラＶＣが真上（不透明領域ＯＰＲの中心付近）を向いた場合には、仮想カメラＶＣからは、最遠景オブジェクトＯＢ１の不透明領域ＯＰＲの画像だけが見えるようになる。また、仮想カメラＶＣの向く方向が真上方向から右又は左にずれた場合にも、最遠景オブジェクトＯＢ１の不透明領域ＯＰＲの画像及び最遠景オブジェクトＯＢ１とＯＢ２の半透明合成画像が見えることになる。従って、本来は表示されるべきではない画像（描画バッファに残っている前のフレームの画像等）が、最遠景オブジェクトＯＢ１、ＯＢ２により隠されずに、仮想カメラＶＣから見えてしまう不具合を防止できる。
【００７９】
なお、最遠景オブジェクトＯＢ１、ＯＢ２の半透明合成処理は演算負荷が大きいため、不透明領域ＯＰＲはなるべく大きい方がよい（半透明領域はなるべく小さい方がよい）。一方、不透明領域ＯＰＲが大きすぎると、境界ＢＤ付近での最遠景オブジェクトＯＢ１、ＯＢ２の画像が不自然になる。従って、不透明領域ＯＰＲの大きさは、境界ＢＤ付近での画像が不自然にならない程度に、大きくすることが望ましい。
【００８０】
２．３  最遠景オブジェクトの移動
さて、図９に示すように最遠景オブジェクトＯＢ１の不透明領域ＯＰＲの大きさや最遠景オブジェクトＯＢ２の境界ＢＤからのはみ出し部分ＳＰの長さＬＳを設定した場合には、仮想カメラＶＣとＯＢ１、ＯＢ２との相対的位置関係が、なるべく変化しないようにすることが望まれる。
【００８１】
そこで、本実施形態では、仮想カメラＶＣの移動に追従させて最遠景オブジェクトＯＢ１、ＯＢ２を移動させるようにしている。
【００８２】
より具体的には図１０（Ａ）のＣ１に示すように仮想カメラＶＣが左右方向に移動した場合には、Ｃ２、Ｃ３に示すように最遠景オブジェクトＯＢ１、ＯＢ２も同じ移動量だけ左右方向に移動する。また図１０（Ｂ）のＣ４に示すように仮想カメラＶＣが上下方向に移動した場合には、Ｃ５、Ｃ６に示すように最遠景オブジェクトＯＢ１、ＯＢ２も同じ移動量だけ上下方向に移動する。
【００８３】
このようにすれば、仮想カメラＶＣと最遠景オブジェクトＯＢ１、ＯＢ２の相対的な位置関係が安定的に保たれるようになり、図９に示すような仮想カメラＶＣと不透明領域ＯＰＲやはみ出し部分ＳＰとの位置関係も安定的に保たれるようになる。これにより、仮想カメラＶＣが種々の方向を向いた場合にも破綻の無い画像を生成できる。
【００８４】
また、最遠景オブジェクトＯＢ１、ＯＢ２を仮想カメラＶＣに追従させて移動させないと、仮想カメラＶＣの移動に伴い、ＶＣから見えるＯＢ１、ＯＢ２のテクスチャの密度が変化してしまい、モアレやジャギーなどが発生するおそれがある。
【００８５】
これに対して図１０（Ａ）、（Ｂ）に示すように最遠景オブジェクトＯＢ１、ＯＢ２を仮想カメラＶＣに追従させて移動させれば、ＶＣから見えるＯＢ１、ＯＢ２のテクスチャの密度を一定に保つことができる。従って、モアレやジャギーの発生を防止でき、高品質な画像を生成できる。
【００８６】
なお、仮想カメラＶＣをキャラクタなどの移動オブジェクトに追従させる場合には、移動オブジェクトの移動に例えば慣性を持ちながらＶＣが追従し、このＶＣに最遠景オブジェクトＯＢ１、ＯＢ２が追従することになる。従って、この場合には、結局、最遠景オブジェクトＯＢ１、ＯＢ２はキャラクタなどの移動オブジェクトに追従することになる。
【００８７】
また、図１０（Ａ）、（Ｂ）では、最遠景オブジェクトＯＢ１、ＯＢ２の両方を仮想カメラＶＣに追従させているが、場合によっては、これらのＯＢ１、ＯＢ２の一方のみをＶＣに追従させてもよい。
【００８８】
２．４  テクスチャスクロール
さて、本実施形態では雲や空などを表すテクスチャをテクスチャスクロール（移動スクロール、回転スクロール）させながら、図２に示す最遠景オブジェクトＯＢ１に対してマッピングするようにしている。
【００８９】
より具体的には図１１に示すように、最遠景オブジェクトＯＢ１にマッピングされるテクスチャＴＥＸ（雲、空のテクスチャ）のパターンが定義されるテクスチャ空間（Ｕ、Ｖ空間）において、テクスチャの原像領域ＩＭが移動又は回転するように、ＯＢ１に付与するテクスチャ座標を変化させている。
【００９０】
このようにすれば、雲がリアルタイムで流れて行く様子を、簡易な処理で表現できるようになる。この結果、最遠景オブジェクトＯＢ１に静止画像が単にマッピングされる場合に比べて、プレーヤの感じる仮想現実感を大幅に向上できる。
【００９１】
また、最遠景オブジェクトＯＢ１に雲のテクスチャをテクスチャスクロールさせながらマッピングする場合に、何も工夫を施さないと、図２の境界ＢＤにおいて雲が突然消えてしまうという画像が表示され、プレーヤに違和感を与えてしまうおそれがある。
【００９２】
これに対して本実施形態では、図２、図３等で説明したように、最遠景オブジェクトＯＢ１、ＯＢ２の境界ＢＤ付近でＯＢ１、ＯＢ２を半透明合成している。従って、境界ＢＤで雲が自然に消えて行く様子を表現できるようになり、より自然で違和感のない画像をプレーヤに提供できる。
【００９３】
なお図１１に示すように本実施形態では、原像領域ＩＭは、テクスチャＴＥＸの一方の端辺に達すると他方の端辺に戻るように移動する。このようにすることで、テクスチャの記憶に要するメモリ容量を節約しながら、豊かな表現を実現できる。
【００９４】
また図１１では、原像領域ＩＭをテクスチャ空間内で並進移動させているが、原像領域ＩＭをテクスチャ空間内で回転させてもよい。このようにしても、雲が流れて行く様子をリアルに表現できる。
【００９５】
また図８（Ｂ）に示すように、最遠景オブジェクトＯＢ１を複数個設ける場合には、これらの複数（３個以上でもよい）の最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２間でテクスチャスクロールの仕方を互いに異ならせることが望ましい。
【００９６】
例えば図１１に示すように、最遠景オブジェクトＯＢ１＿１については、テクスチャ空間の座標軸Ｖの正方向側に原像領域ＩＭを移動させながら、原像領域ＩＭのテクスチャをＯＢ＿１にマッピングするようにする。一方、図１２に示すように、最遠景オブジェクトＯＢ１＿２については、座標軸Ｖの負方向側に原像領域ＩＭを移動させながら、原像領域ＩＭのテクスチャをＯＢ＿２にマッピングするようにする。
【００９７】
このようにすれば、仮想カメラＶＣから見て手前側の最遠景オブジェクトＯＢ＿１と奥側のＯＢ１＿２とで、雲の流れの方向が違って見えるようになる。これにより、平面的な最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２を用いながらも、あたかも厚みがあるかのように見える雲を表現できる。
【００９８】
なお、複数の最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２間でテクスチャスクロールの仕方を異ならせる手法としては、種々の変形実施が可能である。例えば、最遠景オブジェクトＯＢ１＿１については原像領域ＩＭを並進移動させ、ＯＢ＿２についてはＩＭを回転させるようにしてもよい。或いは逆に、ＯＢ１＿１についてはＩＭを回転させ、ＯＢ１＿２についてはＩＭを並進移動させるようにしてもよい。
【００９９】
また、最遠景オブジェクトＯＢ１＿１、ＯＢ１＿２でのテクスチャスクロールの速度（原像領域ＩＭの移動・回転速度）を変化させてもよい。
【０１００】
更に、最遠景オブジェクトＯＢ１＿１とＯＢ１＿２とでマッピングされるテクスチャのパターン自体を異ならせることも効果的である。
【０１０１】
なお、最遠景オブジェクトＯＢ１だけではなく最遠景オブジェクトＯＢ２に対しても、テクスチャをテクスチャスクロールさせながらマッピングしてもよい。
【０１０２】
２．５  最遠景オブジェクトの他の例
さて、以上の説明では、最遠景オブジェクトＯＢ１が蓋形状で、最遠景オブジェクトＯＢ２が柱体形状である場合について主に説明した。
【０１０３】
しかしながら、最遠景オブジェクトＯＢ１、ＯＢ２を半球形状（又は球形状）にして図１３に示すように配置することもできる。即ち、半径が小さな最遠景オブジェクトＯＢ１と半径が大きな最遠景オブジェクトＯＢ２を、その中心点が一致する位置に配置して、最遠景オブジェクト（天球）を二重（多重）構造にする。
【０１０４】
そして、図１３の場合にも図２と同様に、最遠景オブジェクトＯＢ１、ＯＢ２は、ＯＢ２を奥側にして仮想カメラＶＣから見て重なり合うように配置されることになる。従って、これらの最遠景オブジェクトＯＢ１、ＯＢ２を半透明合成することが可能となり、リアルな画像を生成できるようになる。
【０１０５】
例えば図１３において、小さな手前側の最遠景オブジェクトＯＢ１には雲を表すテクスチャをマッピングし、大きな奥側の最遠景オブジェクトＯＢ２には空、太陽、月、星などを表すテクスチャをマッピングする。そして、最遠景オブジェクトＯＢ１については、そのテクスチャ座標を変化させて、図１１で説明したようなテクスチャスクロールマッピングを行うようにする。
【０１０６】
このようにすれば、最遠景オブジェクトＯＢ２により表される空、太陽、月、星を奥側の背景として、最遠景オブジェクトＯＢ１により表される手前側の雲が流れるという表現が可能になる。従って、表示される背景に立体感を持たせることが可能になり、これまでにない画像表現が可能になる。また、雲とは異なり、太陽や月は流れずに静止することになるため、生成される画像のリアル度を増すことができる。
【０１０７】
なお、森の中をキャラクタが移動するようなゲームステージにおいては、小さな手前側の最遠景オブジェクトＯＢ１に対しては樹木を表すテクスチャをマッピングし、大きな奥側の最遠景オブジェクトＯＢ２に対しては空や雲などを表すテクスチャをマッピングしてもよい。このようにすれば、オブジェクト空間に配置すべき樹木オブジェクトの数を減らす又は無くすことが可能になり、画像生成に必要なデータの使用記憶容量を低減できる。
【０１０８】
また、図１３のように最遠景オブジェクトＯＢ１、ＯＢ２を配置する場合、最遠景オブジェクトＯＢ１、ＯＢ２の一方のみでテクスチャスクロールを行うようにしてもよいし、ＯＢ１、ＯＢ２の両方でテクスチャスクロールを行うようにしてもよい。そして、最遠景オブジェクトＯＢ１、ＯＢ２の両方でテクスチャスクロールを行う場合には、テクスチャスクロールの仕方を互いに異ならせることが望ましい（例えばＯＢ２でのテクスチャスクロールの速度を遅くする）。
【０１０９】
また、図１３において、大きさの異なる半球形状（球形状）の最遠景オブジェクトを３個以上配置するようにしてもよい。
【０１１０】
３．本実施形態の処理
次に、本実施形態の処理の詳細例について、図１４のフローチャートを用いて説明する。
【０１１１】
まず、オブジェクト空間へのオブジェクトの設定処理を行う（ステップＳ１）。即ち、図２や図１３に示す最遠景オブジェクトなどの種々のオブジェクトをオブジェクト空間に配置設定する処理を行う。
【０１１２】
次に、キャラクタなどの移動オブジェクトの移動演算処理を行う（ステップＳ２）。例えば、移動オブジェクトの移動変化ベクトルを（△ＸＭ、△ＹＭ、△ＺＭ）、回転変化ベクトルを（△θＸＭ、△θＹＭ、△θＺＭ）とすると、当該フレーム（インター）での移動オブジェクトの位置（ＸＭ、ＹＭ、ＺＭ）及び回転角度（θＸＭ、θＹＭ、θＺＭ）は例えば下式のようにして求められる。
【０１１３】
ＸＭ＝ＸＭ＋△ＸＭ                （６）
ＹＭ＝ＹＭ＋△ＹＭ                （７）
ＺＭ＝ＺＭ＋△ＺＭ                （８）
θＸＭ＝θＸＭ＋△θＸＭ          （９）
θＹＭ＝θＹＭ＋△θＹＭ          （１０）
θＺＭ＝θＺＭ＋△θＺＭ          （１１）
次に、移動オブジェクトの移動に追従させて仮想カメラを移動させる（ステップＳ３）。例えば、仮想カメラの移動変化ベクトルを（△ＸＣ、△ＹＣ、△ＺＣ）、回転変化ベクトルを（△θＸＣ、△θＹＣ、△θＺＣ）とすると、当該フレームでの仮想カメラの位置（ＸＣ、ＹＣ、ＺＣ）及び回転角度（θＸＣ、θＹＣ、θＺＣ）は例えば下式のようにして求められる。
【０１１４】
ＸＣ＝ＸＣ＋△ＸＣ                （１２）
ＹＣ＝ＹＣ＋△ＹＣ                （１３）
ＺＣ＝ＺＣ＋△ＺＣ                （１４）
θＸＣ＝θＸＣ＋△θＸＣ          （１５）
θＹＣ＝θＹＣ＋△θＹＣ          （１６）
θＺＣ＝θＺＣ＋△θＺＣ          （１７）
なお、上式（１２）〜（１７）において、仮想カメラを移動オブジェクトに完全に追従させる場合には、△ＸＣ＝△ＸＭ、△ＹＣ＝△ＹＭ、△ＺＣ＝△ＺＭ、△θＸＣ＝△θＸＭ、△θＹＣ＝△θＹＭ、△θＺＣ＝△θＺＭの関係式が成り立つ。一方、仮想カメラに慣性を持たせて移動オブジェクトに追従させる場合には、例えば、所与の関数Ｆを用いて、△ＸＣ＝Ｆ（△ＸＭ）、△ＹＣ＝Ｆ（△ＹＭ）、△ＺＣ＝Ｆ（△ＺＭ）、△θＸＣ＝Ｆ（△θＸＭ）、△θＹＣ＝Ｆ（△θＹＭ）、△θＺＣ＝Ｆ（△θＺＭ）のような関係式が成り立つことになる。
【０１１５】
次に、仮想カメラの移動に追従させて最遠景オブジェクトを移動させる（ステップＳ４）。この場合には最遠景オブジェクトの位置（ＸＦ、ＹＦ、ＺＦ）は例えば下式のようにして求められる。
【０１１６】
ＸＦ＝ＸＦ＋△ＸＣ                （１８）
ＹＦ＝ＹＦ＋△ＹＣ                （１９）
ＺＦ＝ＺＦ＋△ＺＣ                （２０）
次に、雲の流れを作るための風速ベクトル（△ＷＸ、△ＷＹ、△ＷＺ）、仮想カメラの移動変化ベクトル（△ＸＣ、△ＹＣ、△ＺＣ）などに基づいて、最遠景オブジェクトにマッピングするテクスチャのテクスチャ座標（Ｕ、Ｖ）を変化させる（ステップＳ５）。そして、求められたテクスチャ座標に基づいて、テクスチャを最遠景オブジェクトにマッピングする（ステップＳ６）。これにより、図１１で説明したようなテクスチャスクロールを実現できる。
【０１１７】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１５を用いて説明する。
【０１１８】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１１９】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１２０】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１２１】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１２２】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１２３】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１２４】
ゲームコントローラ９４２（レバー、ボタン、筺体、パッド型コントローラ又はガン型コントローラ等）からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１２５】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１２６】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１２７】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１２８】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１２９】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。
【０１３０】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実現（実行）してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１３１】
そして、本発明の各手段をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実現するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実現することになる。
【０１３２】
図１６（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実現するためのプログラム（データ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、このプログラムを格納プログラム（格納情報）と呼ぶ。
【０１３３】
図１６（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納プログラム（格納情報）は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【０１３４】
図１６（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-n（ゲーム機、携帯電話）とを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納プログラム（格納情報）は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【０１３５】
なお、図１６（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実現するようにしてもよい。また、本発明の各手段を実現するための上記格納プログラム（格納情報）を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１３６】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【０１３７】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１３８】
例えば第１、第２の最遠景オブジェクトの構造や配置は、図２、図７（Ａ）〜図９、図１３で説明した構造や配置であることが特に望ましいが、これに限定されず、種々の変形実施が可能である。
【０１３９】
また、第１、第２の最遠景オブジェクト間の半透明合成処理の手法も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【０１４０】
また、テクスチャスクロールの手法も図１１、図１２で説明した手法に限定されるものではない。
【０１４１】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１４２】
また、本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１４３】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム（画像生成システム）に適用できる。
【図面の簡単な説明】
【図１】本実施形態のゲームシステムの機能ブロック図の例である。
【図２】本実施形態の原理について説明するための図である。
【図３】本実施形態により生成されるゲーム画像の例である。
【図４】最遠景オブジェクトＯＢ１を設けなかった場合に生成されるゲーム画像の例である。
【図５】最遠景オブジェクトＯＢ１に設定されるα値をグレースケールで表した図である。
【図６】最遠景オブジェクトのワイヤーフレームモデルの例を示す図である。
【図７】図７（Ａ）、（Ｂ）は、最遠景オブジェクトの形状の変形例について説明するための図である。
【図８】図８（Ａ）、（Ｂ）、（Ｃ）は、最遠景オブジェクトの形状、配置の変形例について説明するための図である。
【図９】最遠景オブジェクトの不透明領域の設定手法について説明するための図である。
【図１０】図１０（Ａ）、（Ｂ）は、仮想カメラの移動に最遠景オブジェクトを追従させる手法について説明するための図である。
【図１１】テクスチャスクロールの手法について説明するための図である。
【図１２】テクスチャスクロールの仕方を最遠景オブジェクト間で異ならせる手法について説明するための図である。
【図１３】半球形状の最遠景オブジェクトを用いる手法について説明するための図である。
【図１４】本実施形態の処理の詳細例について示すフローチャートである。
【図１５】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１６】図１６（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
ＯＢ１、ＯＢ２  最遠景オブジェクト
ＢＤ    ＯＢ１とＯＢ２の境界
ＶＣ    仮想カメラ
ＯＰＲ  不透明領域
ＳＰ    はみ出し部分
ＬＳ    はみ出し部分の長さ
ＶＶ    ビューイングボリューム
１００  処理部
１１０  移動・動作演算部
１１２  オブジェクト空間設定部
１１４  半透明処理部
１１６  テクスチャマッピング部
１６０  操作部
１７０  記憶部
１７２  主記憶部
１７４  描画バッファ
１７６  テクスチャ記憶部
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004577968.tif 000002
【図２】
0004577968.tif 000003
【図３】
0004577968.tif 000004
【図４】
0004577968.tif 000005
【図５】
0004577968.tif 000006
【図６】
0004577968.tif 000007
【図７】
0004577968.tif 000008
【図８】
0004577968.tif 000009
【図９】
0004577968.tif 000010
【図１０】
0004577968.tif 000011
【図１１】
0004577968.tif 000012
【図１２】
0004577968.tif 000013
【図１３】
0004577968.tif 000014
【図１４】
0004577968.tif 000015
【図１５】
0004577968.tif 000016
【図１６】
0004577968.tif 000017