(57)【特許請求の範囲】
【請求項１】
画像を生成するための画像生成システムであって、
テクスチャをテクセル補間方式でオブジェクトにマッピングする手段と、
元画像をテクスチャとして設定し、該テクスチャをテクセル補間方式でオブジェクトにマッピングする際にオブジェクトのテクスチャ座標をシフトさせて元画像のぼかし画像を生成する手段と、
を含むことを特徴とする画像生成システム。
【請求項２】
請求項１において、
テクスチャ座標を１テクセルよりも小さい値だけシフトさせて元画像のぼかし画像を生成することを特徴とする画像生成システム。
【請求項３】
請求項１又は２において、
テクスチャ座標を第１のシフト方向へシフトさせてテクセル補間方式でテクスチャマッピングを行った後に、テクスチャ座標を第２のシフト方向にシフトさせてテクセル補間方式でテクスチャマッピングを行うことを特徴とする画像生成システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記オブジェクトが、ぼかし領域と同一形状を有する仮想的なオブジェクトであることを特徴とする画像生成システム。
【請求項５】
請求項１乃至４のいずれかにおいて、
元画像の各画素の奥行き値に応じた値に、各画素のα値を設定するα値設定手段と、
元画像と該元画像のぼかし画像とを、各画素に設定されるα値に基づいて、奥行き値に応じてぼかし画像の合成比率が変化するようにα合成する手段と、
を含むことを特徴とする画像生成システム。
【請求項６】
請求項５において、
前記α値設定手段が、
仮想カメラの焦点の奥行き値と各画素の奥行き値との差が大きい画素ほど、ぼかし画像の合成比率が高くなるように、各画素のα値を設定することを特徴する画像生成システム。
【請求項７】
請求項５又は６において、
各画素の奥行き値とα値との対応関係を変化させることで、被写界深度の範囲又はぼかしエフェクトの強弱を可変に制御することを特徴とする画像生成システム。
【請求項８】
請求項５乃至７のいずれかにおいて、
前記α値設定手段が、
その奥行き値がＺｉ（ｉは整数）とＺｉ＋１の間にある画素についてはそのα値をαｉに設定することを特徴とする画像生成システム。
【請求項９】
画像を生成するための画像生成システムに用いられる情報記憶媒体であって、
テクスチャをテクセル補間方式でオブジェクトにマッピングする手段と、
元画像をテクスチャとして設定し、該テクスチャをテクセル補間方式でオブジェクトにマッピングする際にオブジェクトのテクスチャ座標をシフトさせて元画像のぼかし画像を生成する手段と、
を画像生成システムに実現させるためのプログラムを含むことを特徴とする情報記憶媒体。
【請求項１０】
請求項９において、
テクスチャ座標を１テクセルよりも小さい値だけシフトさせて元画像のぼかし画像を生成することを特徴とする情報記憶媒体。
【請求項１１】
請求項９又は１０において、
テクスチャ座標を第１のシフト方向へシフトさせてテクセル補間方式でテクスチャマッピングを行った後に、テクスチャ座標を第２のシフト方向にシフトさせてテクセル補間方式でテクスチャマッピングを行うことを特徴とする情報記憶媒体。
【請求項１２】
請求項９乃至１１のいずれかにおいて、
前記オブジェクトが、ぼかし領域と同一形状を有する仮想的なオブジェクトであることを特徴とする情報記憶媒体。
【請求項１３】
請求項９乃至１２のいずれかにおいて、
元画像の各画素の奥行き値に応じた値に、各画素のα値を設定するα値設定手段と、
元画像と該元画像のぼかし画像とを、各画素に設定されるα値に基づいて、奥行き値に応じてぼかし画像の合成比率が変化するようにα合成する手段と、
を画像生成システムに実現させるためのプログラムを含むことを特徴とする情報記憶媒体。
【請求項１４】
請求項１３において、
前記α値設定手段が、
仮想カメラの焦点の奥行き値と各画素の奥行き値との差が大きい画素ほど、ぼかし画像の合成比率が高くなるように、各画素のα値を設定することを特徴する情報記憶媒体。
【請求項１５】
請求項１３又は１４において、
各画素の奥行き値とα値との対応関係を変化させることで、被写界深度の範囲又はぼかしエフェクトの強弱を可変に制御することを特徴とする情報記憶媒体。
【請求項１６】
請求項１３乃至１５のいずれかにおいて、
前記α値設定手段が、
その奥行き値がＺｉ（ｉは整数）とＺｉ＋１の間にある画素についてはそのα値をαｉに設定することを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像生成システム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内の所与の視点から見える画像を生成する画像生成システムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。レーシングゲームを楽しむことができる画像生成システムを例にとれば、プレーヤは、車（オブジェクト）を操作してオブジェクト空間内で走行させ、他のプレーヤやコンピュータが操作する車と競争することで３次元ゲームを楽しむ。
【０００３】
さて、従来の画像生成システムにより生成される画像は、人間の視界画像のように視点からの距離に応じてフォーカシングされた画像ではなかった。このため、画像内の全ての被写体にピントが合っているかのような表現になっていた。
【０００４】
しかしながら、至近距離から遠距離までの全ての被写体にピントが合っている画像は、日常生活では見ることができない画像であるため、見た目に不自然さがあった。
【０００５】
よりリアリティを追求するためには、視点とオブジェクトとの距離や視線方向などに応じてピントの度合いが調節された画像を生成することが望ましい。しかしながら、ゲーム空間内の個々のオブジェクトについて視点との距離等を計算し、各オブジェクト毎にぼやけ具合を演算することで、ぼやけた画像を生成すると、処理負荷が過大になる。
【０００６】
リアルタイムに変化する視点に対応した画像を、制約されたハードウェア資源を用いて生成する必要がある画像生成システムにおいては、如何にして少ない処理負担で、現実世界の視界画像のようにフォーカシングされた画像を生成するかが重要な課題となる。
【０００７】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、現実世界の視界画像のようにフォーカシングされた画像を、少ない処理負担で生成できる画像生成システム及び情報記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像を生成するための画像生成システムであって、テクスチャをテクセル補間方式でオブジェクトにマッピングする手段と、元画像をテクスチャとして設定し、該テクスチャをテクセル補間方式でオブジェクトにマッピングする際にオブジェクトのテクスチャ座標をシフトさせて元画像のぼかし画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【０００９】
本発明によれば、テクセル補間方式を有効利用して、簡素な処理でぼかし画像を生成できるようになる。
【００１０】
なお、テクセル補間方式とは、特には限定はされないが、テクセルの画像情報を補間して画素の画像情報を得る方式などであり、例えば、バイリニアフィルタ方式やトライリニアフィルタ方式などがある。
【００１１】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、テクスチャ座標を１テクセルよりも小さい値だけシフトさせて元画像のぼかし画像を生成することを特徴とする。
【００１２】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、テクスチャ座標を第１のシフト方向へシフトさせてテクセル補間方式でテクスチャマッピングを行った後に、テクスチャ座標を第２のシフト方向にシフトさせてテクセル補間方式でテクスチャマッピングを行うことを特徴とする。
【００１３】
このようにすれば、更に理想的なぼかし画像を生成できるようになる。
【００１４】
なお、第１のシフト方向と第２のシフト方向は互いに逆方向であることが望ましい。また、第１のシフト方向へのシフトと第２のシフト方向へのシフトのセットを、複数回行うことが更に望ましい。
【００１５】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記オブジェクトが、ぼかし領域と同一形状を有する仮想的なオブジェクトであることを特徴とする。
【００１６】
なお、画面全体をぼかす場合には、オブジェクトやぼかし領域を画面と同一形状にすることが望ましいが、画面の一部の領域のみをぼかすようにしてもよい。
【００１７】
また本発明は、画像を生成するための画像生成システムであって、元画像の各画素の奥行き値に応じた値に、各画素のα値を設定するα値設定手段と、元画像と該元画像に対応するぼかし画像とを、各画素に設定されるα値に基づいて合成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【００１８】
本発明によれば、元画像の各画素の奥行き値に応じた値に設定されたα値に基づいて、元画像とぼかし画像とが合成される。従って、奥行き値に応じて、ぼかし画像の合成比率等を変化させることが可能になり、被写界深度などの表現が可能になる。
【００１９】
なお、α（アルファ）値は、各画素に関連づけられて記憶される情報であり、例えば色情報以外の情報である。また奥行き値は、視点（仮想カメラ）から遠いほど大きい値にしてもよいし、視点から近いほど大きい値にしてもよい。また、元画像の合成対象となるぼかし画像の合成手法としては、種々の手法を採用できる。またα値を用いた合成処理はαブレンディングに限定されない。
【００２０】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記α値設定手段が、仮想カメラの焦点の奥行き値と各画素の奥行き値との差が大きい画素ほど、ぼかし画像の合成比率が高くなるように、各画素のα値を設定することを特徴する。
【００２１】
このようにすることで、焦点から遠いほどぼけて見えるような画像を生成できるようになる。
【００２２】
なお、α値が大きいほどぼかし画像の合成比率が高くなる場合には、焦点との奥行き値の差が大きいほど、α値を大きくすればよい。また、α値が小さいほどぼかし画像の合成比率が高くなる場合には、焦点との奥行き値の差が大きいほど、α値を小さくすればよい。
【００２３】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、各画素の奥行き値とα値との対応関係を変化させることで、被写界深度の範囲又はぼかしエフェクトの強弱を可変に制御することを特徴とする。
【００２４】
このようにすれば、奥行き値とα値との対応関係を変化させるだけで、被写界深度の範囲やぼかしエフェクトの強弱が異なる画像を生成できるようになり、画像表現の多様性を高めることができる。
【００２５】
なお、被写界深度の範囲とは、特に限定されないが、例えば、ぼけていない鮮明な画像が得られる最も近い点と遠い点の間の範囲である。例えば、α値が所与の値より小さくなる範囲や、所与の値より大きくなる範囲を、被写界深度の範囲として定義できる。また、ぼかしエフェクトの強弱の制御は、例えば、同じ奥行き値でもα値の大きさを異ならせることで実現できる。
【００２６】
また本発明は、画像を生成するための画像生成システムであって、その奥行き値がＺ１とＺ２の間の領域ＡＲ１にある画素についてはそのα値をα１に設定し、その奥行き値がＺ２とＺ３の間の領域ＡＲ２にある画素についてはそのα値をα２に設定し・・・・・・・・、その奥行き値がＺｉとＺｉ＋１の間の領域ＡＲｉにある画素についてはそのα値をαｉに設定するα値設定手段と、前記α値設定手段により設定されたα値に基づいて画像を描画する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【００２７】
本発明によれば、領域ＡＲ１、ＡＲ２・・・ＡＲｉにある画素のα値が、各々、α１、α２・・・・αｉに設定される。そして、設定されたα１、α２・・・・αｉを利用して、画像の描画処理が行われる。このようにすれば、奥行き値に応じたα値を、簡素な処理で設定できるようになる。また、奥行き値とα値の対応関係も、簡素な処理で可変に制御できるようになる。
【００２８】
なお、本発明で設定されたα値に基づく画像描画処理は、元画像とぼかし画像の合成処理には限定されない。
【００２９】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記α値設定手段が、奥行き値がＺ１に設定されるオブジェクトＯＢ１を元画像の描画領域に描画することで、オブジェクトＯＢ１を基準に第１の方向側にある画素のα値を更新し、奥行き値がＺ２に設定されるオブジェクトＯＢ２を元画像の描画領域に描画することで、オブジェクトＯＢ２を基準に第１の方向側にある画素のα値を更新し・・・・・・・・・・・・、奥行き値がＺｉに設定されるオブジェクトＯＢｉを元画像の描画領域に描画することで、オブジェクトＯＢｉを基準に第１の方向側にある画素のα値を更新することを特徴とする。
【００３０】
このようにすれば、オブジェクトを描画するだけという、負担が軽く高速な処理で、奥行き値に応じたα値を設定できるようになる。
【００３１】
なお、第１の方向側は、オブジェクトから見て奥側であってもよいし、手前側であってもよい。
【００３２】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記α値設定手段が、オブジェクトを元画像の描画領域に描画してα値を更新する際に、更新対象となるビット以外をマスクして更新対象となるビットのみを更新することを特徴とする。
【００３３】
このようにすれば、ビット単位でα値を更新できるようになる。なお、α値の更新の際には、例えば各画素の色情報などもマスクしておくことが望ましい。
【００３４】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記α値設定手段が、奥行き値がＺ１’に設定されるオブジェクトＯＢ１’を元画像の描画領域に描画することで、オブジェクトＯＢ１’を基準に第１の方向側にある画素のα値の第ｎビットを第１のレベルに更新すると共に、奥行き値がＺ１に設定され前記オブジェクトＯＢ１’を基準に第１の方向側にあるオブジェクトＯＢ１を元画像の描画領域に描画することで、オブジェクトＯＢ１を基準に第１の方向側にある画素のα値の第ｎビットを第２のレベルに更新し、奥行き値がＺ２’に設定されるオブジェクトＯＢ２’を元画像の描画領域に描画することで、オブジェクトＯＢ２’を基準に第１の方向側にある画素のα値の第ｎ＋１ビットを第１のレベルに更新すると共に、奥行き値がＺ２に設定され前記オブジェクトＯＢ２’を基準に第１の方向側にあるオブジェクトＯＢ２を元画像の描画領域に描画することで、オブジェクトＯＢ２を基準に第１の方向側にある画素のα値の第ｎ＋１ビットを第２のレベルに更新し・・・・・・・・・、奥行き値がＺｉ’に設定されるオブジェクトＯＢｉ’を元画像の描画領域に描画することで、オブジェクトＯＢｉ’を基準に第１の方向側にある画素のα値の第ｎ＋ｉ−１ビットを第１のレベルに更新すると共に、奥行き値がＺｉに設定され前記オブジェクトＯＢｉ’を基準に第１の方向側にあるオブジェクトＯＢｉを元画像の描画領域に描画することで、オブジェクトＯＢｉを基準に第１の方向側にある画素のα値の第ｎ＋ｉ−１ビットを第２のレベルに更新することを特徴とする。
【００３５】
ここで、第１の方向側は、オブジェクトから見て奥側であってもよいし、手前側であってもよい。
【００３６】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００３７】
１．構成
図１に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０、或いは処理部１００と記憶部１７０と情報記憶媒体１８０を含めばよく）、それ以外のブロック（例えば操作部１６０、表示部１９０、音出力部１９２、携帯型情報記憶装置１９４、通信部１９６）については、任意の構成要素とすることができる。
【００３８】
ここで処理部１００は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００３９】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【００４０】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００４１】
情報記憶媒体（コンピュータにより使用可能な記憶媒体）１８０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）を実行するための情報（プログラム或いはデータ）が格納される。
【００４２】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００４３】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００４４】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００４５】
携帯型情報記憶装置１９４は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００４６】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００４７】
なお本発明（本実施形態）の手段を実行するためのプログラム或いはデータは、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００４８】
処理部１００は、ゲーム処理部１１０、画像生成部１３０、音生成部１５０を含む。
【００４９】
ここでゲーム処理部１１０は、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ面）の位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点の位置（仮想カメラの位置）や視線角度（仮想カメラの回転角度）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置するための処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部１６０からの操作データや、携帯型情報記憶装置１９４からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
【００５０】
画像生成部１３０は、ゲーム処理部１１０からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ（視点）から見える画像を生成して、表示部１９０に出力する。また、音生成部１５０は、ゲーム処理部１１０からの指示等にしたがって各種の音処理を行い、ＢＧＭ、効果音、音声などの音を生成し、音出力部１９２に出力する。
【００５１】
なお、ゲーム処理部１１０、画像生成部１３０、音生成部１５０の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００５２】
画像生成部１３０は、ジオメトリ処理部１３２（３次元演算部）、α（アルファ）値設定部１３４、ぼかし（ブロア）画像生成部１３６、描画部１４０（レンダリング部）を含む。
【００５３】
ここで、ジオメトリ処理部１３２は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理（３次元演算）を行う。そして、ジオメトリ処理後（透視変換後）のオブジェクトデータ（オブジェクトの頂点座標などの形状データ、或いは頂点テクスチャ座標、輝度データ等）は、記憶部１７０のメインメモリ１７２に保存される。
【００５４】
α値設定部１３４は、元画像（例えば透視変換後の画像）の各画素のＺ値（広義には奥行き値）に応じた値に、各画素のα値（各画素に関連づけて記憶される情報であり、例えば色情報以外の情報）を設定する処理を行う。そして、α値設定部１３４が、各画素の奥行き値とα値との対応関係を変化させることで、被写界深度の範囲やぼかしエフェクトの強弱が可変に制御される。また、α値設定部１３４は、仮想カメラの焦点から遠い画素ほどα値が大きくなるように（広義には、ぼかし画像の合成比率が高くなるように）、各画素のα値を設定する。
【００５５】
ぼかし画像生成部１３６は、元画像とα合成（αブレンディング、α加算、α減算、半透明処理等）されるぼかし画像（最もぼけた画像）を生成するための処理を行う。
【００５６】
より具体的には、本実施形態では、テクスチャマッピングのバイリニアフィルタ方式（広義には、トライリニアフィルタ方式などを含むテクセル補間方式）を有効利用してぼかし画像を生成する。即ち、ぼかし画像生成部１３６は、元画像をテクスチャとして設定し、このテクスチャをバイリニアフィルタ方式でオブジェクト（ぼかし領域と同一形状の仮想オブジェクト）にマッピングする際に、オブジェクトのテクスチャ座標を例えば１テクセルよりも小さい値だけシフトさせる処理（ずらす処理、移動させる処理）を行う。このようにすれば、テクスチャ座標をシフトさせるだけという簡素な処理で、元画像の合成対象となるぼかし画像を生成できるようになる。
【００５７】
描画部１４０は、オブジェクトデータやテクスチャなどに基づいて、オブジェクト空間において仮想カメラから見える画像を描画する処理を行う。
【００５８】
描画部１４０は、テクスチャマッピング部１４２、α合成部１４４、陰面消去部１４６を含む。
【００５９】
ここでテクスチャマッピング部１４２は、テクスチャ記憶部１７６に記憶されるテクスチャを、バイリニアフィルタ方式（テクセル補間方式）やポイントサンプリング方式でオブジェクト（ポリゴン、自由曲面などのプリミティブ面）にマッピングする処理を行う。
【００６０】
α合成部１４２は、元画像と、ぼかし画像生成部１３６により生成されたぼかし画像とを、α値設定部１３４により各画素に対して設定されたα値（Ａ値）に基づいて合成する処理を行う。例えばα合成がαブレンディングである場合には、下式のように元画像とぼかし画像とが合成される。
【００６１】
ＲQ＝（１−α）×Ｒ1＋α×Ｒ2        （１）
ＧQ＝（１−α）×Ｇ1＋α×Ｇ2        （２）
ＢQ＝（１−α）×Ｂ1＋α×Ｂ2        （３）
ここで、Ｒ1、Ｇ1、Ｂ1は、フレームバッファ１７４に既に描画されている元画像の色（輝度）のＲ、Ｇ、Ｂ成分であり、Ｒ2、Ｇ2、Ｂ2は、ぼかし画像生成部１３６により生成されたぼかし画像の色のＲ、Ｇ、Ｂ成分である。またＲQ、ＧQ、ＢQは、αブレンディングにより生成される出力画像である。
【００６２】
陰面消去部１４４は、Ｚ値（奥行き値）が格納されるＺバッファ１７８（Ｚプレーン）を用いて、Ｚバッファ法のアルゴリズムにしたがった陰面消去を行う。本実施形態ではこの陰面消去部１４４の機能を利用して、仮想的なオブジェクトの描画によるα値の更新を実現している。
【００６３】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００６４】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末を用いて生成してもよい。
【００６５】
２．本実施形態の特徴
２．１  α（アルファ）合成
本実施形態では図２のＥ１に示すように、元画像の各画素Ａ、Ｂ、Ｃ、ＤのＺ値ＺＡ、ＺＢ、ＺＣ、ＺＤに応じた値に、各画素のα値αＡ、αＢ、αＣ、αＤを設定して、例えばＥ２に示すようなαプレーン（各画素のα値が設定されるプレーン）を生成する。より具体的には、仮想カメラ１０の焦点（注視点）から遠い画素（焦点とのＺ値の差が大きい画素）ほど、例えば大きなα値（１．０に近いα値）が設定される。これにより、仮想カメラ１０の焦点から遠い画素ほど、ぼかし画像の合成比率が高くなる。
【００６６】
なお、Ｚ値は、仮想カメラ１０から遠いほど大きくなる値にしてもよいし、仮想カメラ１０から近いほど大きくなる値にしてもよい。また、α値が１．０（１００％）に近づくほど、ぼかし画像の合成比率が高くなるようにしてもよいし、α値が０．０（０％）に近づくほど、ぼかし画像の合成比率が高くなるようにしてもよい（この場合には上式の（１）、（２）、（３）で、α−１とαを入れ替えればよい）。
【００６７】
そして本実施形態では、図２のＥ３に示すように、生成されたαプレーン（広義には、各画素に設定されたα値）に基づいて、元画像とぼかし画像のα合成（αブレンディング等）を行う。なお、図３（Ａ）、（Ｂ）に、α合成される元画像、ぼかし画像の例を示す。
【００６８】
このように、Ｚ値（奥行き値）に応じて設定されたα値に基づき元画像とぼかし画像のα合成を行うことで、例えば、仮想カメラの焦点（ピントが合っている点として設定される点）から遠くなるほどぼけて見える画像を生成できるようになり、いわゆる被写界深度の表現が可能になる。これにより、画面内の全ての被写体にピントが合っていた従来のゲーム画像とは異なり、現実世界の視界画像のように視点からの距離に応じてフォーカシングされたリアルで自然なゲーム画像を生成できる。この結果、プレーヤの仮想現実感を格段に向上できる。
【００６９】
しかも本実施形態によれば、各オブジェクトと視点との位置関係に基づく演算が不要になるため（このような演算を行ってもよい）、少ない処理負担で被写界深度の表現が可能になるという利点がある。
【００７０】
２．２  α値設定
図４（Ａ）、図４（Ｂ）、図５（Ａ）、（Ｂ）に、Ｚ値に応じたα値の設定の一例を示す。
【００７１】
例えば図４（Ａ）では、Ｚ値Ｚ１〜Ｚ４、Ｚ１’〜Ｚ４’（しきい値）により領域ＡＲ０〜ＡＲ４、ＡＲ１’〜ＡＲ４’の区分けが行われる。そして、これらの領域ＡＲ０〜ＡＲ４、ＡＲ１’〜ＡＲ４’に対して、α値α０〜α４、α１’〜α４’が設定される。
【００７２】
例えば、Ｚ１〜Ｚ２の間の領域ＡＲ１にある画素については、そのα値がα１に設定され、Ｚ２〜Ｚ３の間の領域ＡＲ２にある画素については、そのα値がα２に設定される。また、Ｚ１’〜Ｚ２’の間の領域ＡＲ１’にある画素については、そのα値がα１’に設定され、Ｚ２’〜Ｚ３’の間の領域ＡＲ２’にある画素については、そのα値がα２’に設定される。
【００７３】
そして、各領域に設定されるα値には例えば以下の関係式が成り立つ。
【００７４】
α０＜α１  ＜α２  ＜α３  ＜α４        （４）
α０＜α１’＜α２’＜α３’＜α４’      （５）
これらの式（４）、（５）から明らかなように、仮想カメラ１０の焦点（注視点）から遠いほどα値が大きくなっている（上式（１）、（２）、（３）でα−１とαを入れ替えた場合には、焦点から遠いほどα値を逆に小さくする）。即ち、本実施形態では、仮想カメラ１０の焦点とのＺ値の差が大きい画素ほど、ぼかし画像の合成比率が高くなるように、α値を設定している。
【００７５】
また本実施形態では、各画素のＺ値とα値との対応関係を変化させることで、被写界深度の範囲や、ぼかしエフェクトの強弱を可変に制御している。
【００７６】
例えば、α値が１．０よりも小さくなる範囲（ぼかし画像の合成比率が１００％よりも小さくなる範囲）を被写界深度の範囲として定義したとする。すると、図４（Ａ）のようにＺ値とα値を対応させれば、被写界深度の範囲を広くできる。一方、図４（Ｂ）のようにＺ値とα値を対応させれば、被写界深度の範囲を狭くできる。
【００７７】
なお、被写界深度の範囲の境界を特定するα値は１．０に限定されず、任意である。
【００７８】
また、図５（Ａ）のようにＺ値とα値を対応させれば、ぼかしエフェクトを弱くでき、図５（Ｂ）のようにＺ値とα値を対応させれば、ぼかしエフェクトを強くできる。即ち図５（Ａ）では、例えば、Ｚ２〜Ｚ３（又はＺ２’〜Ｚ３’）の領域ＡＲ２（又はＡＲ２’）でのα値は０．４（弱いぼかしエフェクト）に設定されているのに対して、図５（Ｂ）では、ＡＲ２（又はＡＲ２’）でのα値は０．７（強いぼかしエフェクト）に設定されているからである。
【００７９】
なお、本実施形態では図６（Ａ）に示すように、焦点を基準に奥側及び手前側の両方で、領域の区分けと各領域へのα値の設定を行っている。しかしながら、図６（Ｂ）に示すように、焦点を基準に奥側においてのみ領域の区分けと各領域へのα値の設定を行ってもよい。或いは、図６（Ｃ）に示すように、焦点を基準に手前側においてのみ領域の区分けと各領域へのα値の設定を行ってもよい。
【００８０】
さて、図６（Ａ）、（Ｂ）、（Ｃ）に示すようなα値の設定は、具体的には以下のような手法により実現できる。
【００８１】
即ち図７（Ａ）に示すように、まず、Ｚ値がＺ１に設定されるオブジェクトＯＢ１（ポリゴン）を、フレームバッファ（広義には、元画像の描画領域）に描画することで、オブジェクトＯＢ１を基準に奥側（広義には、手前側も含む第１の方向側）にある画素のα値を更新する。即ち、Ｚ値に基づく陰面消去手法（Ｚバッファ法）を有効利用して、ＯＢ１よりも奥側にある画素のα値を更新する。
【００８２】
次に、図７（Ｂ）に示すように、Ｚ値がＺ２に設定されるオブジェクトＯＢ２をフレームバッファに描画することで、オブジェクトＯＢ２を基準に奥側にある画素のα値を更新する。同様に、図７（Ｃ）に示すように、Ｚ値がＺ３に設定されるオブジェクトＯＢ３をフレームバッファに描画することで、オブジェクトＯＢ３を基準に奥側にある画素のα値を更新する。
【００８３】
このような手法を採用すれば、領域ＡＲ１にある画素のα値をα１に設定し、領域ＡＲ２にある画素のα値をα２に設定し、領域ＡＲ３にある画素のα値をα３に設定できるようになる。
【００８４】
しかも、この手法では、元画像が描画されているフレームバッファに単にオブジェクトを描画するだけで、Ｚバッファを用いた陰面消去機能により自動的にα値が更新される。従って、非常に少ない処理負担で、各領域にある画素に所望のα値を設定できるという利点がある。
【００８５】
さて、図８（Ａ）〜図９（Ｄ）に、α値（αプレーン）の設定手法の更なる詳細な具体例を示す。
【００８６】
まず、図８（Ａ）に示すように、全ての領域ＡＲ０〜ＡＲ３、ＡＲ１’〜ＡＲ３’のα値を、例えば（１１１）に初期化する（α値が３ビットの場合）。
【００８７】
次に、図８（Ｂ）に示すように、Ｚ値がＺ１’に設定され、αが例えば（０００）に設定されるオブジェクトＯＢ１’をフレームバッファに描画することで、オブジェクトＯＢ１’（ｎｅａｒ）よりも奥側（広義には第１の方向側）にある画素のα値の１ビット目を例えば０（広義には第１のレベル）に更新する。但し、この場合に、１ビット目（更新対象ビット）以外のビットについてはマスクしておき、１ビット目のみを更新する。
【００８８】
次に、図８（Ｃ）に示すように、Ｚ値がＺ１に設定されαが例えば（１１１）に設定されるオブジェクトＯＢ１をフレームバッファに描画することで、オブジェクトＯＢ１（ｆａｒ）よりも奥側にある画素のα値の１ビット目を１（広義には第２のレベル）に更新する。但し、この場合にも、１ビット目以外のビットについてはマスクしておく。
【００８９】
以上のようにすることで、領域ＡＲ０のα値は（１１０）に設定され、他の領域のα値は（１１１）に設定される。即ち、領域ＡＲ０に設定されるα値と他の領域に設定されるα値とを異ならせることができる。
【００９０】
次に、図９（Ａ）に示すように、Ｚ＝Ｚ２’でα＝（０００）のオブジェクトＯＢ２’を描画することで、オブジェクトＯＢ２’よりも奥側にある画素のα値の２ビット目を０に更新する（２ビット目以外はマスク）。
【００９１】
次に、図９（Ｂ）に示すように、Ｚ＝Ｚ２でα＝（１１１）のオブジェクトＯＢ２を描画することで、オブジェクトＯＢ２よりも奥側にある画素のα値の２ビット目を１に更新する（２ビット目以外はマスク）。
【００９２】
以上のようにすることで、領域ＡＲ０のα値は（１００）に設定され、領域ＡＲ１’及びＡＲ１のα値は（１０１）に設定され、他の領域のα値は（１１１）に設定される。
【００９３】
次に、図９（Ｃ）に示すように、Ｚ＝Ｚ３’でα＝（０００）のオブジェクトＯＢ３’を描画することで、オブジェクトＯＢ３’よりも奥側にある画素のα値の３ビット目を０に更新する（３ビット目以外はマスク）。
【００９４】
次に、図９（Ｄ）に示すように、Ｚ＝Ｚ３でα＝（１１１）のオブジェクトＯＢ３を描画することで、オブジェクトＯＢ３よりも奥側にある画素のα値の３ビット目を１に更新する（３ビット目以外のビットはマスク）。
【００９５】
以上のようにすることで、領域ＡＲ０のα値は（０００）に設定され、領域ＡＲ１’及びＡＲ１のα値は（００１）に設定され、領域ＡＲ２’及びＡＲ２のα値は（０１１）に設定され、領域ＡＲ３’及びＡＲ３のα値は（１１１）に設定される。
【００９６】
即ち、仮想カメラ１０の焦点とのＺ値の差が大きい画素（領域）ほど、α値が大きな値に設定され、ぼかし画像の合成比率が高くなる。従って、特定ビットをマスクしながらオブジェクトを描画するだけという簡素で高速な処理で、被写界深度の表現に最適なα値の設定を実現できるようになる。
【００９７】
なお、以上では、オブジェクトを描画することで、そのオブジェクトの奥側にある画素のα値を更新する場合について説明した。しかしながら、オブジェクトの描画によりオブジェクトの手前側にある画素のα値を更新できる機能や、Ｚ値を反転できる機能等を画像生成システムが有している場合には、オブジェクトを描画することで、そのオブジェクトの手前側にある画素のα値を更新するようにしてもよい。
【００９８】
２．３  ぼかし画像の生成
さて、本実施形態では、テクスチャマッピングのバイリニアフィルタ方式（テクセル補間方式）を有効利用して、元画像（図３（Ａ））の合成対象となるぼかし画像（図３（Ｂ））を生成している。
【００９９】
即ち、テクスチャマッピングにおいては画素の位置とテクセルの位置がずれる場合がある。
【０１００】
この場合に、図１０に示すように、ポイントサンプリング方式では、画素（サンプリング点）Ｐの色ＣＰ（広義には画像情報）は、Ｐに最も距離が近いテクセルＴＡの色ＣＡになる。
【０１０１】
一方、バイリニアフィルタ方式では、Ｐの色ＣＰは、Ｐの周りのテクセルＴＡ、ＴＢ、ＴＣ、ＴＤの色ＣＡ、ＣＢ、ＣＣ、ＣＤを補間した色になる。
【０１０２】
より具体的には、ＴＡ〜ＴＤの座標とＰの座標とに基づき、Ｘ軸方向の座標比β：１−β（０≦β≦１）と、Ｙ軸方向の座標比γ：１−γ（０≦γ≦１）を求める。
【０１０３】
この場合に、Ｐの色ＣＰ（バイリニアフィルタ方式での出力色）は、下式のようになる。
【０１０４】
ＣＰ＝（１−β）×（１−γ）×ＣＡ＋β×（１−γ）×ＣＢ
＋（１−β）×γ×ＣＣ＋β×γ×ＣＤ                （６）
本実施形態では、このようにバイリニアフィルタ方式では色が自動的に補間されることに着目して、ぼかし画像を生成している。
【０１０５】
より具体的には図１１のＦ１に示すように、例えばフレームバッファに描画されている元画像をテクスチャとして設定する。そして、このテクスチャ（元画像）をオブジェクトにバイリニアフィルタ方式でマッピングする際に、オブジェクトの頂点に与えるテクスチャ座標を、例えば（０．５、０．５）だけ右下方向にシフト（ずらす、移動）させる。このようにすることで、バイリニアフィルタ方式の補間機能により自動的に、元画像の画素の色が周囲ににじんだようなぼかし画像を生成できるようになる。
【０１０６】
なお、画面全体をぼかす場合には、テクスチャ（元画像）をマッピングするオブジェクト（表示されない仮想的なオブジェクト）の形状は、画面（ぼかし領域）と同一形状に設定される。即ち、画面の頂点座標が（Ｘ、Ｙ）＝（０、０）、（６４０、０）、（６４０、４８０）、（０、４８０）であった場合には、オブジェクトの頂点座標も（Ｘ、Ｙ）＝（０、０）、（６４０、０）、（６４０、４８０）、（０、４８０）になる。
【０１０７】
そして、この場合に、オブジェクトの頂点ＶＸ１、ＶＸ２、ＶＸ３、ＶＸ４に与えるテクスチャ座標（Ｕ、Ｖ）を、各々、（０、０）、（６４０、０）、（６４０、４８０）、（０、４８０）に設定すれば、画面の画素の位置とテクスチャのテクセルの位置とがずれずに一致する。従って、画像はぼけない。
【０１０８】
これに対して、オブジェクトの頂点ＶＸ１、ＶＸ２、ＶＸ３、ＶＸ４に与えるテクスチャ座標（Ｕ、Ｖ）を、各々、（０．５、０．５）、（６４０．５、０．５）、（６４０．５、４８０．５）、（０．５、４８０．５）に設定すれば、画面の画素の位置とテクスチャのテクセルの位置とがずれるようになる。従って、バイリニアフィルタ方式の補間機能により、色の補間が行われ、画像がぼけて見えるようになる。
【０１０９】
なお、画面の一部の領域をぼかす場合には、オブジェクトの形状を、そのぼかし領域と同一形状にすればよい。
【０１１０】
また本実施形態では、図１２のＧ１に示すように、元画像をテクスチャに設定し、例えば右下方向（第１のシフト方向）に０．５テクセルだけシフトしてバイリニアフィルタ方式でテクスチャマッピングを行い、第１のぼかし画像を生成する。次に、図１２のＧ２に示すように、この第１のぼかし画像をテクスチャに設定し、例えば左上方向（第２のシフト方向）に０．５テクセルだけシフトしてバイリニアフィルタ方式でテクスチャマッピングを行い、第２のぼかし画像を生成する。或いは、以上の処理（右下方向のシフトと左上方向のシフト）を複数回繰り返す。このようにすることで、更に自然でぼかし効果の強いぼかし画像を生成できるようになる。
【０１１１】
次に、バイリニアフィルタ方式の補間機能によりぼかし画像が生成される原理について説明する。
【０１１２】
例えば図１３（Ａ）に示すように、テクスチャ座標を０．５テクセルだけ右下方向にシフトさせて、バイリニアフィルタ方式のテクスチャマッピングを行ったとする。この場合には、上式（６）においてβ＝γ＝１／２になるため、テクセルＴ４４、Ｔ４５、Ｔ５４、Ｔ５５の色をＣ４４、Ｃ４５、Ｃ５４、Ｃ５５とすると、画素Ｐ４４の色ＣＰ４４は下式のようになる。
【０１１３】
ＣＰ４４＝（Ｃ４４＋Ｃ４５＋Ｃ５４＋Ｃ５５）／４  （７）
以上から明らかなように、図１３（Ａ）に示す変換により、テクセルＴ４４の色Ｃ４４（変換前の元画像の画素Ｐ４４の元の色に相当）は、周りの画素Ｐ３３、Ｐ３４、Ｐ４３、Ｐ４４に対して１／４ずつしみ出すことになる。
【０１１４】
そして、その後に図１３（Ｂ）に示すように、図１３（Ａ）で得られた画像をテクスチャとして、テクスチャ座標を０．５テクセルだけ左上方向にシフトさせてバイリニアフィルタ方式でテクスチャマッピングを行ったとする。この場合には、図１３（Ａ）の画素Ｐ３３、Ｐ３４、Ｐ４３、Ｐ４４が、図１３（Ｂ）のテクセルＴ３３、Ｔ３４、Ｔ４３、Ｔ４４に対応するようになる。そして、図１３（Ａ）でＰ３３、Ｐ３４、Ｐ４３、Ｐ４４（Ｔ３３、Ｔ３４、Ｔ４３、Ｔ４４）に対して１／４ずつしみ出した色Ｃ４４が、更に１／４倍されて周りの４つの画素に対してしみ出すことになる。即ち、結局、元のＴ４４の色Ｃ４４が１／４×１／４＝１／１６ずつ周りにしみ出すことになる。
【０１１５】
従って、図１３（Ａ）、（Ｂ）の変換により、画素Ｐ３３、Ｐ３４、Ｐ３５には、各々、色Ｃ４４（フレームバッファに描かれた元画像の画素Ｐ４４の元の色に相当）が１／１６、２／１６、１／１６ずつしみ出すことになる。また、画素Ｐ４３、Ｐ４４、Ｐ４５には、各々、色Ｃ４４が２／１６、４／１６、２／１６ずつしみ出し、画素Ｐ５３、Ｐ５４、Ｐ５５には、各々、色Ｃ４４が１／１６、２／１６、１／１６ずつしみ出すことになる。
【０１１６】
従って、図１３（Ａ）、（Ｂ）の変換により、結局、図１４（Ａ）に示すような平面フィルタが元画像に対して施されるようになる。この平面フィルタによれば、元画像の各画素の色がその周りに均一に広がるようになり、元画像の理想的なぼかし画像を生成できる。
【０１１７】
また、図１３（Ａ）、（Ｂ）の変換のセットを２回行えば、図１４（Ｂ）に示すような平面フィルタが元画像に対して施されるようになる。この平面フィルタによれば、図１４（Ａ）よりも更に理想的なぼかし画像を生成できる。
【０１１８】
３．本実施形態の処理
次に、本実施形態の処理の詳細例について、図１５、図１６のフローチャートを用いて説明する。
【０１１９】
まず、元画像（透視変換後の画像）をフレームバッファに描画する（ステップＳ１）。次に、図８（Ａ）〜図９（Ｄ）で説明した手法によりαプレーン（αチャンネル）を作成する（ステップＳ２）。そして、ｊを０に初期化する（ステップＳ３）。
【０１２０】
次に、図１２のＧ１に示すように、フレームバッファの元画像をテクスチャに設定して、そのテクスチャを別バッファにマッピングする（ステップＳ４）。そして、この時、テクスチャ座標を（０．５、０．５）だけシフトしてバイリニアフィルタ方式でマッピングする。
【０１２１】
次に、図１２のＧ２に示すように、別バッファの画像をテクスチャに設定して、そのテクスチャをフレームバッファにマッピングする（ステップＳ５）。そして、この時、テクスチャ座標を（−０．５、−０．５）だけシフトしてバイリニアフィルタ方式でマッピングする。また、図２のＥ３に示すように、ステップＳ２で生成したαプレーンを用いて、元画像（図３（Ａ））とぼかし画像（図３（Ｂ））のαブレンディングを行う。
【０１２２】
次に、ｊを１だけインクリメントする（ステップＳ６）。そして、ｊがＭ（ぼかし変換の繰り返し回数）を越えたか否かを判断し（ステップＳ７）、越えていない場合にはステップＳ４に戻り、越えた場合には処理を終了する。
【０１２３】
図１６は、図１５のαプレーン生成処理の詳細なフローチャートである。
【０１２４】
まず、図８（Ａ）で説明したように、αプレーンの全てのα値を２m−２n-1で初期化する（ステップＳ１０）。そして、ｉをｎに初期化する（ステップＳ１１）。
【０１２５】
ここで、ｍ、ｎは、各々、作成するαプレーンの最大ビット、最小ビットである。例えば、α値が８ビットであり、ｍ＝６、ｎ＝４の場合には、ステップＳ１０によりαプレーンのα値は、（００１１１０００）に初期化される。即ち、ステップＳ１０の初期化により、ｍビットからｎビットまでが全て１になり、それ以外のビットが０になる値にα値が初期化されることになる。
【０１２６】
次に、フレームバッファの元画像のＲ、Ｇ、Ｂ、α値のうち、α値のｉビット目以外をマスクする（ステップＳ１２）。そして、図８（Ｂ）で説明したように、Ｚ＝Ｚｉ’（ｎｅａｒ）、α＝（００００００００）のオブジェクト（ポリゴン）をフレームバッファに描画して、そのオブジェクトよりも奥側にある画素のα値を更新する（ステップＳ１３）。次に、図８（Ｃ）で説明したように、Ｚ＝Ｚｉ（ｆａｒ）、α＝（１１１１１１１１）のオブジェクトをフレームバッファに描画して、そのオブジェクトよりも奥側にある画素のα値を更新する（ステップＳ１４）。
【０１２７】
次に、ｉを１だけインクリメントする（ステップＳ１５）。そして、ｉがＫを越えたか否かを判断し（ステップＳ１６）、越えていない場合にはステップＳ１２に戻り、越えた場合にはαプレーンの作成処理を終了する。
【０１２８】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１７を用いて説明する。
【０１２９】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１３０】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１３１】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１３２】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１３３】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１３４】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１３５】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１３６】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１３７】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１３８】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１３９】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１４０】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システム、他のゲームシステムとの間でのデータ転送が可能になる。
【０１４１】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【０１４２】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【０１４３】
図１８（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報（プログラム又はデータ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、この情報を格納情報と呼ぶ。
【０１４４】
図１８（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【０１４５】
図１８（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【０１４６】
なお、図１８（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１４７】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【０１４８】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１４９】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１５０】
また、α値の設定手法は、図６（Ａ）〜図９（Ｄ）で説明した手法が特に望ましいが、これに限定されない。例えば、奥行き値（Ｚ値）の変化に対してα値を段階的に変化させずに、連続的に変化させるようにしてもよい。
【０１５１】
また、元画像の合成対象となるぼかし画像は、図１１、図１２で説明した手法により生成することが特に望ましいが、これに限定されない。例えば元画像と元画像をずらした画像を合成したり、当該フレームの元画像と前のフレームの元画像とを合成したりしてぼかし画像を生成してもよい。
【０１５２】
また、図６（Ａ）〜図９（Ｄ）のようにα値を設定する発明では、設定されたα値を、元画像とぼかし画像の合成処理以外にも、種々の画像描画処理に利用できる。例えば、設定されたα値を用いて、視点から遠いオブジェクトを半透明にして最遠景に溶け込ませる処理を行ってもよい。
【０１５３】
また、テクセル補間方式を利用してぼかし画像を生成する発明も、図１１〜図１４（Ｂ）で説明した手法に限定されない。例えば、画面全体をぼかすのではなく、画面よりも小さいぼかし領域を設定して、その領域にある元画像をぼかすようにしてもよい。
【０１５４】
また本実施形態では視点から遠ざかるほど奥行き値が大きくなる場合を例にとり説明したがこれに限られない。例えば視点から遠ざかるほど奥行き値が小さくなる場合にも本発明は適用できる。
【０１５５】
また、本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１５６】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【図１】本実施形態の画像生成システムのブロック図の例である。
【図２】Ｚ値（奥行き値）に応じたα値を設定し、設定されたα値を用いて元画像とぼかし画像を合成する手法について説明するための図である。
【図３】図３（Ａ）、（Ｂ）は、元画像とそのぼかし画像の例である。ための図である。
【図４】図４（Ａ）、（Ｂ）は、Ｚ値とα値の対応関係を変化させて、被写界深度の範囲を制御する手法について示す図である。
【図５】図５（Ａ）、（Ｂ）は、Ｚ値とα値の対応関係を変化させて、ぼかしエフェクトの強弱を制御する手法について示す図である。
【図６】図６（Ａ）、（Ｂ）、（Ｃ）は、Ｚ値に基づいて領域を区分けし、区分けされた各領域にα値を設定する手法について説明するための図である。
【図７】図７（Ａ）、（Ｂ）、（Ｃ）は、オブジェクトを描画することでオブジェクトの奥側の画素のα値を更新する手法について説明するための図である。
【図８】図８（Ａ）、（Ｂ）、（Ｃ）は、α値を更新する手法の詳細な具体例について説明するための図である。
【図９】図９（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）も、α値を更新する手法の詳細な具体例について説明するための図である。
【図１０】バイリニアフィルタ方式のテクスチャマッピングについて説明するための図である。
【図１１】バイリニアフィルタ方式を有効利用してぼかし画像を生成する手法について説明するための図である。
【図１２】バイリニアフィルタ方式を有効利用してぼかし画像を生成する手法について説明するための図である。
【図１３】図１３（Ａ）、（Ｂ）は、バイリニアフィルタ方式の補間機能によりぼかし画像が生成される原理について説明するための図である。
【図１４】図１４（Ａ）、（Ｂ）も、バイリニアフィルタ方式の補間機能によりぼかし画像が生成される原理について説明するための図である。
【図１５】本実施形態の処理の詳細例について示すフローチャートである。
【図１６】αプレーンの生成処理の詳細例について示すフローチャートである。
【図１７】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１８】図１８（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
１０    仮想カメラ
１１０  ゲーム処理部
１３０  画像生成部
１３２  ジオメトリ処理部
１３４  α値設定部
１３６  ぼかし画像生成部
１４０  描画部
１４２  テクスチャマッピング部
１４４  α合成部
１４６  陰面消去部
１５０  音生成部
１６０  操作部
１７０  記憶部
１７２  メインメモリ
１７４  フレームバッファ
１７６  テクスチャ記憶部
１７８  Ｚバッファ
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004443083.tif 000002
【図２】
0004443083.tif 000003
【図３】
0004443083.tif 000004
【図４】
0004443083.tif 000005
【図５】
0004443083.tif 000006
【図６】
0004443083.tif 000007
【図７】
0004443083.tif 000008
【図８】
0004443083.tif 000009
【図９】
0004443083.tif 000010
【図１０】
0004443083.tif 000011
【図１１】
0004443083.tif 000012
【図１２】
0004443083.tif 000013
【図１３】
0004443083.tif 000014
【図１４】
0004443083.tif 000015
【図１５】
0004443083.tif 000016
【図１６】
0004443083.tif 000017
【図１７】
0004443083.tif 000018
【図１８】
0004443083.tif 000019