(57)【要約】【課題】より幅広く種々のシチュエーションを表現することができるとともに、簡単な処理にて現実性の高い画像を生成することができるプログラム、情報記憶媒体及びゲームシステムを提供する。【解決手段】描画ピクセルの色を算出する際に、オブジェクトカラー用パラメータＰＯを用いてオブジェクトの色の合成率を設定するとともに、デプスキューイング色用パラメータＰＤを用いて合成すべきデプスキューイング色の合成率を設定し、オブジェクトカラー用パラメータＰＯとデプスキューイング色用パラメータＰＤとに基づいて、オブジェクトの色とデプスキューイング色とを合成するデプスキューイング処理を実行する。【選択図】図３
2008077304.tif 000002
【特許請求の範囲】
【請求項１】
仮想カメラから見える画像を生成するためのプログラムであって、
オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、
前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、
前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部としてコンピュータを機能させ、
前記デプスキューイング処理部が、
前記奥行き値に対して減衰特性を有する第１のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第２のパラメータを前記デプスキューイング色の合成率として設定し、前記第１のパラメータおよび前記第２のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成することを特徴とするプログラム。
【請求項２】
請求項１において、
前記デプスキューイング処理部が、
前記第１のパラメータが前記奥行き値に応じた減衰を開始する第１の開始奥行き値と、前記第１のパラメータが前記奥行き値に応じた減衰を終了する第１の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第１のパラメータを設定し、
前記第２のパラメータが前記奥行き値に応じた増加を開始する第２の開始奥行き値と、前記第２のパラメータが前記奥行き値に応じた増加を終了する第２の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第２のパラメータを設定することを特徴とするプログラム。
【請求項３】
請求項１又は２において、
前記デプスキューイング処理部が、
前記オブジェクト空間において前記仮想カメラを中心とする天球オブジェクトに遠景色として付されている色のうち、前記仮想カメラの視線方向と前記天球オブジェクトとの交差点に付されている色を前記デプスキューイング色として設定することを特徴とするプログラム。
【請求項４】
請求項１又は２において、
前記デプスキューイング処理部が、
前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータを、前記光源の色に乗算することによって前記デプスキューイング色を設定することを特徴とするプログラム。
【請求項５】
請求項１又は２において、
前記デプスキューイング処理部が、
前記オブジェクト空間に設定された所与の光源の色と、前記光源の色と対になる色とを、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータに基づいて補間することによって前記デプスキューイング色を設定することを特徴とするプログラム。
【請求項６】
請求項１〜５のいずれかにおいて、
前記第１のパラメータが前記奥行き値に応じた減衰を開始する第１の開始奥行き値、前記第１のパラメータが前記奥行き値に応じた減衰を終了する第１の終了奥行き値、前記第２のパラメータが前記奥行き値に応じた増加を開始する第２の開始奥行き値、および前記第２のパラメータが前記奥行き値に応じた増加を終了する第２の終了奥行き値の少なくともいずれか１つを、前記オブジェクト空間に対して設定された天候、前記オブジェクト空間において進行する時刻、前記オブジェクト空間における仮想カメラの位置、および前記オブジェクト空間における仮想カメラの向きの少なくともいずれか１つに基づいて変化させることを特徴とするプログラム。
【請求項７】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１〜６のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項８】
仮想カメラから見える画像を生成するための画像生成システムであって、
オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、
前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、
前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部と、
を備え、
前記デプスキューイング処理部が、
前記奥行き値に対して減衰特性を有する第１のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第２のパラメータを前記デプスキューイング色の合成率として設定し、前記第１のパラメータおよび前記第２のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
近年、仮想的な３次元空間（以下、「オブジェクト空間」という。）に配置設定されたキャラクタなどのオブジェクトを、仮想カメラ（所与の視点）に基づく所定の画像として生成する画像生成システムが実用化されている。
【０００３】
このような画像生成システムは、仮想現実を体験させることができるものとして様々なシステムにて用いられるようになっており、特に、ゲームシステムにおいては、娯楽性及び興趣性を向上させるためものとして重要視されている。
【０００４】
従来、このような画像生成システムにおいて、仮想カメラから見える画像における遠近感などを表現するため、仮想カメラからの距離に応じてオブジェクトの色に遠景の色を合成するデプスキューイング処理を行う方法が知られている。
【０００５】
特に、最近では、オブジェクトの色と、遠景の色として設定されたターゲットとなる色とを線形補間するためのパラメータを用意し、そのようなパラメータを用いて仮想カメラにおける視点からの距離に応じて色を合成する代表的な方法が知られている。
【特許文献１】特許第３６５６０６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述のような画像生成システムにあっては、オブジェクトの色の合成率と、遠景の色の合成率とが補間関係を有していたため、オブジェクト空間内の情景（シチュエーション）を詳細に表現することができない場合も多い。
【０００７】
本発明は上記事情に鑑みてなされたものであり、その目的は、より幅広く種々のシチュエーションを表現することができるとともに、簡単な処理にてリアリティのある画像を生成することができるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００８】
（１）本発明は、仮想カメラから見える画像を生成するための画像生成システムであって、オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部と、を含み、前記デプスキューイング処理部が、前記奥行き値に対して減衰特性を有する第１のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第２のパラメータを前記デプスキューイング色の合成率として設定し、前記第１のパラメータおよび前記第２のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成する画像生成システムに関するものである。また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータに読み取り可能な情報記憶媒体に関するものである。
【０００９】
本発明によれば、デプスキューイング処理を行う際に、オブジェクトの色の合成率を第１のパラメータによって設定し、デプスキューイング色の合成率を第１のパラメータとは異なる第２のパラメータによって設定する。このため本発明によれば、オブジェクトの色とデプスキューイング色とを別個独立に調整することによって、視界の悪さ、大気や環境光の色味などを詳細に表現することができる。この結果、本発明によれば、例えば、空気の澄んだ情景や、曇った日の天候、朝から夕方・夜などの時間帯の違いなど、種々のシチュエーションを従来の手法より自由にかつ詳細に表現することができる。
【００１０】
（２）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記第１のパラメータが前記奥行き値に応じた減衰を開始する第１の開始奥行き値と、前記第１のパラメータが前記奥行き値に応じた減衰を終了する第１の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第１のパラメータを設定し、前記第２のパラメータが前記奥行き値に応じた増加を開始する第２の開始奥行き値と、前記第２のパラメータが前記奥行き値に応じた増加を終了する第２の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第２のパラメータを設定するようにしてもよい。
【００１１】
このようにすれば、奥行き値に対する各パラメータの特性変化を開始奥行き値と終了奥行き値とに基づいて個別に調整することができる。このため、例えば、第１の開始奥行き値と第２の開始奥行き値とを互いに異ならせたり、第１の終了奥行き値と第２の終了奥行き値とを互いに異ならせたりすることによって様々なシチュエーションを表現できるようになる。すなわち、この態様によれば、仮想カメラに対する深度（奥行き値に相当するもの）が同じであっても、オブジェクトの色の合成率やデプスキューイング色の合成率が異なる場合を実現できるので、種々のシチュエーションをより自由にかつ詳細に表現することができる。
【００１２】
さらに、この態様では、第１の開始奥行き値と第２の開始奥行き値とを同じにするとともに、第１の終了奥行き値と第２の終了奥行き値とを同じにすることによって第１のパラメータと第２のパラメータとに補間関係を持たせることができるため、特殊なデプスキューイング表現だけではなく従来のデプスキューイング表現も可能となって利便性が高い。
【００１３】
（３）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記オブジェクト空間において前記仮想カメラを中心とする天球オブジェクトに遠景色として付されている色のうち、前記仮想カメラの視線方向と前記天球オブジェクトとの交差点に付されている色を前記デプスキューイング色として設定するようにしてもよい。
【００１４】
このようにすれば、遠景色として天球オブジェクトに付された色を用いるので、予めデプスキューイング色を定めておく場合に比べて、霧やガス又は夕暮れ時などの太陽光の乱反射を的確に表現することができる。すなわち、この態様によれば、大気の状態や環境光の色味の変化をデプスキューイング色に動的に反映させることができる。
【００１５】
（４）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータを、前記光源の色に乗算することによって前記デプスキューイング色を設定するようにしてもよい。
【００１６】
このようにすれば、視線方向に入射する光の色味の変化を光源方向と視線方向との角度差に応じて表現することができるので、種々のシチュエーションをより的確に表現することができる。
【００１７】
（５）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記オブジェクト空間に設定された所与の光源の色と、前記光源の色と対になる色とを、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータに基づいて補間することによって前記デプスキューイング色を設定するようにしてもよい。
【００１８】
このようにすれば、光源方向と対となる色が設定される方向を、例えば、仮想カメラに対して光源とは１８０度反対の方向として設定することができ、夕焼け時など空間内から見た空の色が一定でない場合（西の空では夕焼けの場合であっても東の空では薄暗くなっているようなシチュエーション）において視線方向に応じた適切なデプスキューイング色を設定することができる。
【００１９】
（６）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記第１のパラメータが前記奥行き値に応じた減衰を開始する第１の開始奥行き値、前記第１のパラメータが前記奥行き値に応じた減衰を終了する第１の終了奥行き値、前記第２のパラメータが前記奥行き値に応じた増加を開始する第２の開始奥行き値、および前記第２のパラメータが前記奥行き値に応じた増加を終了する第２の終了奥行き値の少なくともいずれか１つを、前記オブジェクト空間に対して設定された天候、前記オブジェクト空間において進行する時刻、前記オブジェクト空間における仮想カメラの位置、および前記オブジェクト空間における仮想カメラの向きの少なくともいずれか１つに基づいて変化させるようにしてもよい。
【００２０】
このようにすれば、オブジェクト空間の天候や時刻又は仮想カメラの位置や向きの変化によるシチュエーションの違いを的確に表現することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に好適な実施の形態について図面を用いて説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態にて説明される構成の全てが、本発明の必須の構成要件であるとは限らない。
【００２２】
１．構成
まず、図１を用いて本実施形態における画像生成システム（ゲームシステム）の構成について説明する。図１は、本実施形態における画像生成システムの機能ブロック図の一例である。なお、本実施形態の画像生成システムは、図１の構成要素（各部）の一部を省略した構成としてもよい。
【００２３】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【００２４】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ、ＶＲＡＭなどにより実現できる。そして、本実施形態の記憶部１７０は、処理部１００のワーク領域となる主記憶部１７１、画像を構成するピクセルの色情報等（画像情報）が記憶される描画バッファ１７２と、オブジェクトを定義する頂点データ（オブジェクトデータ、モデルデータ）が記憶されるオブジェクトデータ記憶部１７３と、オブジェクトにマッピングされる各種のテクスチャが記憶されるテクスチャ記憶部１７４と、隠面消去処理等に用いるＺ値（奥行き値の一例）が記憶されるＺバッファ１７６と、を含む。なお、これらの一部を省略する構成としてもよい。
【００２５】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。
【００２６】
この情報記憶媒体１８０には、処理部１００において本実施形態の種々の処理を行うためのプログラム（データ）が記憶されている。即ち、この情報記録媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶されている。
【００２７】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。
【００２８】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００２９】
携帯型情報記憶装置１９４には、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。
【００３０】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３１】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００３２】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部１００は、記憶部１７０内の主記憶部１７１をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００３３】
特に、本実施形態の処理部１００は、オブジェクト空間に各種のオブジェクトを設定するオブジェクト空間設定部１１０と、オブジェクト空間における移動体オブジェクトの移動・動作演算を行う移動・動作処理部１１２と、仮想カメラを制御する仮想カメラ制御部１１４と、仮想カメラから見える画像を生成する画像生成部１２０と、音を生成する音生成部１３０と、を含む。なお、これらの一部を省略する構成としてもよい。
【００３４】
オブジェクト空間設定部１１０は、各キャラクタオブジェクト、車、戦車、建物、樹木、柱、壁、マップ（地形）及び仮想球（天球）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。
【００３５】
すなわち、オブジェクト空間設定部１１０は、ワールド座標系でのオブジェクト（モデルオブジェクト）の位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００３６】
特に本実施形態では、オブジェクトデータ記憶部１７３に、移動体オブジェクト（車、キャラクタ等）、固定物オブジェクト（建物等）、背景オブジェクト（マップ、地形、仮想球（天球）等）の各オブジェクトを定義するオブジェクトデータが記憶されている。具体的には、このオブジェクトデータ記憶部１７３には、任意のローカル座標系で設定された頂点の位置座標によってオブジェクトを定義するオブジェクトデータが記憶される。なお、オブジェクトデータには、テクスチャ座標、色（頂点色）、法線ベクトル（法線データ）およびα値などが頂点の位置座標に対応づけられていてもよい。そして、オブジェクト空間設定部１１０は、オブジェクトデータ記憶部１７３に記憶されているオブジェクトデータに基づいてオブジェクト空間内にオブジェクトを配置設定する処理を行う。
【００３７】
移動・動作処理部１１２は、移動体オブジェクト（車又は飛行機の他にキャラクタが使用する道具等）の移動・動作演算（移動・動作シミュレーション）を行う。即ち、この移動・動作処理部１１２は、操作部１６０によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム（移動・動作アルゴリズム）や各種データ（モーションデータ）などに基づいて、移動体オブジェクトをオブジェクト空間内で移動させ、又は、移動体オブジェクトの動作（モーション、アニメーション）を制御するための処理を行う。
【００３８】
具体的には、本実施形態の移動・動作処理部１１２は、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（各パーツオブジェクトの位置、或いは回転角度）を、１フレーム（例えば１／６０秒）毎に順次求めるシミュレーション処理を行う。
【００３９】
ここでフレームとは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。そして、本実施形態では、フレームレートは毎フレーム固定としてもよいし、処理負荷に応じて可変としてもよい。
【００４０】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置や視線方向を制御する処理）を行う。
【００４１】
例えば、仮想カメラによりオブジェクト（例えばキャラクタ、ボール、車）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００４２】
画像生成部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。頂点処理では、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（フラグメント処理）が行われる。ピクセル処理では、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ１７２（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内に設定された仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００４３】
なお画像生成部１２０が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００４４】
そして画像生成部１２０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００４５】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、主記憶部１７１に保存される。
【００４６】
テクスチャマッピングは、記憶部１７０のテクスチャ記憶部１７４に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部１７４からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。特に本実施形態では、オブジェクト空間における遠景（背景）を現すための遠景テクスチャ（背景テクスチャ）を記憶部１７０のテクスチャ記憶部１７４から読み出すとともに、仮想カメラが設定された位置を中心とするように設定される仮想球オブジェクト（天球オブジェクト）に読み出された遠景テクスチャをマッピングする。
【００４７】
なお、本実施形態では、仮想球オブジェクトにマッピングされる遠景テクスチャの色分布（テクセルパターン）を動的に変化させることができる。この場合において、色分布（ピクセルパターン）が異なる遠景テクスチャを動的に生成してもよいし、互いに色分布が異なる複数の遠景テクスチャを予め用意しておき、使用する遠景テクスチャを動的に切り替えるようにしてもよい。
【００４８】
隠面消去処理としては、描画ピクセルのＺ値が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファに格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【００４９】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより２つの色を合成した色を求める処理を行う。
【００５０】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えばＲＧＢの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００５１】
そして本実施形態では、画像生成部１２０が、デプスキューイング処理部１２２を含む。
【００５２】
デプスキューイング処理部１２２は、仮想カメラと描画対象のオブジェクトとの距離（視点座標系における仮想カメラと頂点との間の距離）を示す奥行き値に基づいて、描画対象のオブジェクトの色（以下、「オブジェクトカラー」ともいう。）と、デプスキューイング色とを合成するデプスキューイング処理を行う。
【００５３】
具体的には、デプスキューイング処理部１２２は、オブジェクトの色の合成率を奥行き値に応じて減衰させるパラメータ（第１のパラメータの一例：以下、「オブジェクトカラー用パラメータ」という。）と、遠景色等として設定されているデプスキューイング色の合成率を奥行き値に応じて増加させるパラメータ（第２のパラメータの一例：以下、「デプスキューイング色用パラメータ」という。）とに基づいてデプスキューイング処理を行う。
【００５４】
そして、デプスキューイング処理部１２２は、オブジェクトの色を構成する色成分（Ｒ、Ｇ、Ｂ）の輝度値に対してオブジェクトカラー用パラメータを乗算するとともに、デプスキューイング色を構成する色成分（Ｒ、Ｇ、Ｂ）の輝度値に対してデプスキューイング色用パラメータを乗算し、各乗算結果を加算することによってデプスキューイング処理後のオブジェクトについての描画ピクセルの色を求めて、求められた描画ピクセルの色を構成する色成分（Ｒ、Ｇ、Ｂ）の輝度値を描画バッファ１７２に出力する。
【００５５】
また、デプスキューイング処理部１２２は、朝、昼、夕方又は夜などのオブジェクト空間の時刻（時間帯）、雨や霧およびその量など当該オブジェクト空間に設定された天候、及び、高地や山地などの仮想カメラが設定されたオブジェクト空間上の位置又はその向きに基づいて、上述の算出に用いるオブジェクトカラー用パラメータ及びデプスキューイング色用パラメータを設定する。
【００５６】
例えば、デプスキューイング処理部１２２は、オブジェクトカラー用パラメータが奥行き値に応じた減衰を開始する開始点（第１の開始奥行き値の一例）及びその終了点（第１の終了奥行き値の一例）を、オブジェクト空間の天候及び時刻（時間帯）又は仮想カメラの位置及び向きなどの仮想カメラから見える画像を生成する際のシチュエーションに基づいて設定する。また例えば、デプスキューイング処理部１２２は、デプスキューイング色用パラメータが奥行き値に応じた増加を開始する開始点（第２の開始奥行き値の一例）及びその終了点（第２の終了奥行き値の一例）を、オブジェクト空間の天候及び時刻（時間帯）又は仮想カメラの位置及び向きなどの仮想カメラから見える画像を生成する際のシチュエーションに基づいて設定する。すなわち本実施形態では、開始点と終了点とにより定められる変化特性に基づいて、仮想カメラと描画対象のオブジェクトとの距離関係に応じたオブジェクトカラー用パラメータおよびデプスキューイング用パラメータを求める。そして本実施形態では、オブジェクトカラー用パラメータについての開始点および終了点と、デプスキューイング色用パラメータについての開始点および終了点とが、個別に設定されるため、各パラメータを独立して求めることができるようになっている。
【００５７】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００５８】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５９】
また、複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００６０】
２．本実施形態の手法
２．１  本実施形態のデプスキューイング処理の概要
次に、図２及び図３を用いて本実施形態のデプスキューイング処理の概要について説明する。
【００６１】
なお、図２は、従来のデプスキューイング処理を説明するための図であり、図３は、本実施形態のデプスキューイング処理を説明するための図である。
【００６２】
通常、現実の世界においては、視点を基準に遠方に行くほどに景色は霞んで見えるようになっており、ゲームなどの仮想現実の世界であっても、遠景にあるオブジェクトがくっきりとした輪郭を有していると、プレーヤなどに不自然な印象を与える。
【００６３】
このため、最近では、遠景（背景）にあるオブジェクトの画像をより自然で現実的に表現する一つの手法として、デプスキューイング処理と呼ばれる手法が知られている。
【００６４】
このデプスキューイング処理は、隠面消去処理が実行され、各描画ピクセルの描画色、すなわち、各描画ピクセルの色成分の輝度値を特定する際に実行される処理であって、視点からの距離に応じてオブジェクトの色をデプスキューイング色と呼ばれるターゲット色（例えば背景色に設定された色）に近づけ、遠景（背景）にあるオブジェクトをぼやかすための画像処理として実行される。またデプスキューイング処理は、オブジェクト空間内に霧（フォグ）が発生している様子を擬似的に表現するエフェクト処理（いわゆるフォグ処理）のためにも利用される。
【００６５】
従来、このデプスキューイング処理においては、図２に示すように、オブジェクトの色と遠景色として設定されたターゲットとなる色（デプスキューイング色）とを線形補間するパラメータ（例えば、α値など）を用い、描画対象のオブジェクトを構成する描画ピクセルの色に対して仮想カメラからの距離（奥行き値Ｌ）に応じたデプスキューイング効果を反映させる処理を実行する。
【００６６】
すなわち、従来のデプスキューイング処理では、（式１）に示すように、オブジェクトの色を構成する輝度値（ＲＯＢ、ＧＯＢ、ＢＯＢ）とデプスキューイング色を構成する輝度値（ＲＤ、ＧＤ、ＢＤ）とを、Ｚ値に応じて設定される単一のパラメータである合成率ｒによって線形補間して、描画ピクセルの色の輝度値（Ｒ、Ｇ、Ｂ）を求めていた。
【００６７】
【数１】
2008077304.tif 000003
【００６８】
なお、（式１）において、従来（Ｒ、Ｇ、Ｂ）は、従来の手法によりデプスキューイング処理が施された描画ピクセルの色を構成する各色成分の輝度値を示す。
【００６９】
また、図２において、Ｌ１は、デプスキューイング処理の効果が描画ピクセルに反映され始める奥行き値Ｌを示し、Ｌ２は、描画ピクセルに反映されるデプスキューイング処理の効果が一定になる奥行き値Ｌを示す。すなわち、図２に示すように、奥行き値Ｌが０〜Ｌ１の範囲では、オブジェクトの色が描画ピクセルの色となり、奥行き値ＬがＬ２以降の範囲では、デプスキューイング色が描画ピクセルの色となる。
【００７０】
しかしながら、このような従来のデプスキューイング処理では、オブジェクトの色（オブジェクトカラー）の実質的な合成率“１−ｒ”と、デプスキューイング色の実質的な合成率“ｒ”とが補間関係（図２におけるＬ１〜Ｌ２の区間において、オブジェクトの色が一定の割合で減少するとともに、デプスキューイング色が一定の割合で増加する関係）を有しているため、詳細にオブジェクト空間内の情景を表現することができない場合も多く存在していた。
【００７１】
そこで、本実施形態では、図３に示すように、オブジェクトカラー用パラメータＰＯとデプスキューイング色用パラメータＰＤとを個別設定して、オブジェクトカラーが視点からの距離（奥行き値Ｌ）に応じて減衰する度合いと、デプスキューイング色が視点からの距離（奥行き値Ｌ）に応じて加算合成される度合いとを別個独立に求めている。
【００７２】
具体的には、（１）オブジェクトカラー用パラメータ及びデプスキューイング色用パラメータの設定を行う処理（以下、「パラメータの設定処理」という。）、（２）デプスキューイング色を設定する処理（以下、「デプスキューイング色の設定処理」という。）及び（３）オブジェクトカラーとデプスキューイング色との合成を行う処理（以下、「合成処理」という。）の各処理を、デプスキューイング処理として行うようになっている。
【００７３】
このように、本実施形態の手法によれば、オブジェクトの色とデプスキューイング色とを個別に調整することによって、視界の悪さや大気あるいは環境光の色味を、描画ピクセルの色に的確に反映することができるので、例えば、空気の澄んだ情景や曇った日の天候、朝から夕方・夜などといった時間帯の違いに基づく表現など種々のシチュエーションをより自由にかつ的確に表現することができるようになる。
【００７４】
２．２  パラメータの設定処理
次に、上述と同様に、図３を用いて本実施形態のパラメータの設定処理について説明する。
【００７５】
本実施形態では、表示画像を構成する各描画ピクセルの色を算出する際に、オブジェクト空間内で進行している仮想の時刻や天候又は仮想カメラ（視点）の位置及び向きなど、オブジェクト空間にて設定されている仮想のシチュエーションに基づいて、オブジェクトカラー用パラメータとデプスキューイング色用パラメータを設定することができるようになっている。
【００７６】
具体的には、オブジェクトカラーの合成率が奥行き値Ｌに応じた減衰を開始する地点（第１の開始奥行き値：以下、「減衰開始点」という。）Ｓｒと、オブジェクトカラーの合成率が奥行き値Ｌに応じた減衰を終了する地点（第１の終了奥行き値：以下、「減衰終了点」という。）Ｇｒとがシチュエーション毎に設定され、シチュエーション毎の減衰開始点Ｓｒと減衰終了点Ｇｒとに基づいて、図３（Ａ）に示すように、減衰開始点Ｓｒと減衰終了点Ｇｒとの間において減衰特性を有するオブジェクトカラー用パラメータＰＯを設定している。
【００７７】
例えば、本実施形態では、オブジェクトカラーの合成率であるオブジェクトカラー用パラメータＰＯを０〜１．０の範囲に正規化しており、（式２）に示すように、減衰開始点Ｓｒ及び減衰終了点Ｇｒに基づいてオブジェクトカラー用パラメータ（合成率）ＰＯを設定している。
【００７８】
【数２】
2008077304.tif 000004
【００７９】
ここで、（式２）における「Ｌ」は、描画対象となるオブジェクトの仮想カメラからの距離である奥行き値Ｌを示す。また、本実施形態では、Ｌ＞Ｓｒの場合にオブジェクトカラーが減衰されるデプスキューイング処理が行われるようになっており、オブジェクトカラー用パラメータＰＯは、Ｌ＞Ｇｒにおいて「０」にクランプされる。なおＬ＜Ｓｒの場合に、オブジェクトカラー用パラメータＰＯが「１．０」にクランプされるようにしてもよい。
【００８０】
また、本実施の形態では、デプスキューイング色用パラメータについて、デプスキューイング色の合成率が奥行き値Ｌに応じた増加を開始する地点（第２の開始奥行き値：以下、「増加開始点」という。）Ｓｉと、デプスキューイング色の合成率が奥行き値Ｌに応じた増加を終了する地点（第２の終了奥行き値：以下、「増加終了点」という。）Ｇｉとがシチュエーション毎に設定され、増加開始点Ｓｉと増加終了点Ｇｉとに基づいて、図３（Ｂ）に示すように、増加開始点Ｓｉと増加終了点Ｇｉとの間において増加特性を有するデプスキューイング色用パラメータＰＤを設定している。
【００８１】
例えば、本実施形態では、オブジェクトカラー用パラメータと同様に、デプスキューイング色の合成率であるデプスキューイング色用パラメータを０〜１．０の範囲に正規化しており、（式３）に示すように、増加開始点Ｓｉ及び増加終了点Ｇｉに基づいてデプスキューイング色用パラメータ（合成率）ＰＤを設定している。
【００８２】
【数３】
2008077304.tif 000005
【００８３】
ここで、（式３）における「Ｌ」は、描画対象となるオブジェクトの仮想カメラからの距離である奥行き値Ｌを示す。また、本実施形態では、Ｌ＞Ｓｉの場合にデプスキューイング色が加算合成されるデプスキューイング処理が行われるようになっており、デプスキューイング色用パラメータＰＤは、Ｌ＞Ｇｉでは、「１．０」にクランプされる。なお、Ｌ＜Ｓｉの場合に、デプスキューイング色用パラメータＰＤが「０」にクランプされるようにしてもよい。
【００８４】
なお本実施形態では、減衰開始点、増加開始点、減衰終了点、及び増加終了点がシチュエーション毎に設定可能なため、シチュエーション毎に減衰開始点と増加開始点とを異ならせることや、減衰終了点と増加終了点とを異ならせるることができる。ただし、任意のシチュエーションでは、減衰開始点と増加開始点とを同一としたり、減衰終了点と増加終了点とを同一としたりすることも可能である。
【００８５】
ところで、図３（Ａ）及び図３（Ｂ）に示した例では、オブジェクトカラー用パラメータとデプスキューイング色用パラメータとが奥行き値Ｌに対して１次関数的に変化するパラメータとして設定しているが、シチュエーションに応じて２次関数的、あるいは指数関数的にパラメータが変化するようにしてもよい。
【００８６】
例えば、（式４）及び（式５）に示すように、（式２）で得られるＰＯ、及び（式３）で得られるＰＤをそれぞれ２乗することによって０〜１．０に正規化された範囲で２次関数的に変化するオブジェクトカラー用パラメータＰＯ´やデプスキューイング色用パラメータＰＤ´を設定することも可能である。
【００８７】
【数４】
2008077304.tif 000006
【数５】
2008077304.tif 000007
【００８８】
２．３  デプスキューイング色の設定処理
次に、図４〜図６を用いて本実施形態のデプスキューイング色の設定処理について説明する。
【００８９】
まず本実施形態では、仮想カメラの向き（いわゆる視線方向）に応じてデプスキューイング色を設定する手法を採用している。
【００９０】
例えば、図４に示すように、オブジェクト空間において仮想カメラの位置Ｖを中心として設定された仮想球オブジェクトＳＢ（天球オブジェクト）に遠景色ＢＧを設定するテクスチャ（遠景テクスチャ、背景テクスチャ）がマッピングされている場合に、仮想カメラＶＣの視線方向Ａと仮想球オブジェクトＳＢとの交差点に付されている色ＢＧをデプスキューイング色ＤＣとして設定することができる。
【００９１】
本実施形態の手法によれば、仮想球オブジェクトＳＢに付された遠景色ＢＧからデプスキューイング色ＤＣを取得できるので、視線方向に映る空模様を的確に反映させたデプスキューイング色ＤＣを設定することができる。
【００９２】
なお、図４に示す例では、後述する図６に示される例を適用して仮想カメラＶＣの視線方向Ａと仮想球オブジェクトＳＢとの交差点に付されている遠景色ＢＧと環境光を設定する光源の色ＬＣとを、仮想カメラＶＣの視線方向Ａと光源方向Ｌとの角度差θに基づいて補間することによってデプスキューイング色ＤＣを設定するようにしてもよい。
【００９３】
また本実施形態の手法の他の例として、図５に示すように、環境光を設定する光源の色ＬＣと、光源が設定されている方向と１８０度異なる方向Ｍに設定された色（環境光源の色と対になる色、例えば黒色）ＭＣとを、仮想カメラＶＣの視線方向Ａと光源の方向Ｌとの角度差θに応じて変化する補間パラメータに基づいて補間することによってデプスキューイング色ＤＣを設定してもよい。
【００９４】
すなわち、図５に示す例では、仮想カメラＶＣの視線方向Ａと光源の方向Ｌとの角度差θに応じて変化する内積値「ｃｏｓθ」（視線方向Ａと光源方向Ｌとの内積に相当）を補間パラメータとして利用しており、（式６）に示すように、光源の色ＬＣと、光源の色ＬＣと対となる色ＭＣとを「ｃｏｓθ」によって線形補間することによってデプスキューイング色ＤＣを設定している。なお、（式６）では、ｃｏｓθが負の場合（ｃｏｓθ＜０）の場合には、ｃｏｓθが０にクランプされる。
【００９５】
【数６】
2008077304.tif 000008
【００９６】
図５に示す例によれば、西の空では夕焼けの場合であっても東の空では薄暗くなっているようなシチュエーションにおいて、仮想カメラＶＣの視線方向Ａの変化に追従するようにデプスキューイング色ＤＣを変化させることができるので、種々のシチュエーションをより的確に表現することができるようになっている。
【００９７】
なお、図５に示す例では、光源の色ＬＣと対になる色ＭＣを光源方向Ｌと１８０度異なる方向Ｍに設定するようになっているが、１８０度以外、例えば、１５０度や１２０度など任意の角度方向に光源の色ＬＣと対になる色ＭＣを設定してもよい。
【００９８】
また、図５に示す例では、角度差θに応じて変化する補間パラメータとして「ｃｏｓθ」を用いているが、オブジェクト空間のシチュエーションによって「ｃｏｓ２θ」を補間パラメータとして用いるようにしてもよい。
【００９９】
また、本実施形態の手法の他の例として、図６に示すように、環境光を設定する光源の色ＬＣを、視線方向Ａと光源の方向Ｌとに基づいて調整することによりデプスキューイング色ＤＣを設定するようにしてもよい。
【０１００】
すなわち、図６に示す例では、仮想カメラＶＣの視線方向Ａと環境光を設定する光源の方向Ｌとの角度差θに応じて変化する余弦「ｃｏｓθ」を調整パラメータとして利用しており、（式７）に示すように、光源の色ＬＣに調整パラメータを乗算することによってデプスキューイング色ＤＣを設定している。なお、（式７）では、ｃｏｓθが負の場合（ｃｏｓθ＜０）の場合には、ｃｏｓθが０にクランプされる。
【０１０１】
【数７】
2008077304.tif 000009
【０１０２】
図６に示す例によれば、例えば、光源方向Ｌに対して視線方向Ａが変化する場合に、角度差θに応じた色味の変化を表現することができる。ただし、上述のように、調整パラメータとして「ｃｏｓθ」を用いる代わりに、オブジェクト空間のシチュエーションによって「ｃｏｓ２θ」を光源の色ＬＣに乗算するようにしてもよい。
【０１０３】
また、上述では、光源が１種類の場合を例に説明しているが、太陽、月、外灯など２種類以上の複数の光源がオブジェクト空間に設定されている場合であっても、上述の考え方を適用してデプスキューイング色ＤＣを設定することができる。
【０１０４】
また本実施形態の手法の変形例として、オブジェクト空間内で進行している仮想時刻、オブジェクト空間内の天候、あるいは仮想カメラの位置・向きなど各種のシチュエーションに応じて、デプスキューイング色ＤＣを設定することができる。
【０１０５】
例えば、オブジェクト空間内で進行している仮想時刻に基づいてオブジェクト空間における時間帯を決定し、「朝」の時間帯においては「白色」、「昼」の時間帯においては「青色」、「夕方」の時間単位においては「赤色」及び「夜」の時間帯においては「黒色」をデプスキューイング色ＤＣとして設定するようにしてもよい。なお、「朝」の時間帯であっても「昼」に近い場合には、青味がかっている「白」などをデプスキューイング色ＤＣとして設定するようにしてもよい。
【０１０６】
また、オブジェクト空間内の天候に関しては、「晴れ」のときは「青色」、「曇り」のときは「灰色」又は「霧」が発生ししているときは「白色」をデプスキューイング色ＤＣとして設定するようにしてもよい。この場合に、時間帯によって設定される色と天候によって設定される色とを合成してデプスキューイング色ＤＣを設定するようにしてもよい。
【０１０７】
さらに、仮想カメラの位置又は向きに関しては、仮想カメラの位置が山頂の場合には「白色」をデプスキューイング色ＤＣとして設定し、仮想カメラの位置が山麓の場合には「灰色」をデプスキューイング色ＤＣとして設定するようにしてもよい。また、太陽などのオブジェクト空間に設定された環境光を設定する光源に対する向きに応じて、時間帯や天候にて設定された色に対して「白色」あるいは「黒色」を加算合成した色をデプスキューイング色ＤＣとして設定するようにしてもよい。
【０１０８】
２．４  合成処理
本実施形態では、上述のように設定されたオブジェクトカラー用パラメータＰＯ、デプスキューイング色用パラメータＰＤ、及びデプスキューイング色ＤＣに基づいて、オブジェクトカラーＯＣとデプスキューイング色ＤＣとを、（式８）に示す演算を行うことによって合成して描画ピクセルの色Ｃを算出している。
【０１０９】
【数８】
2008077304.tif 000010
【０１１０】
具体的には、オブジェクトカラーＯＣ（ＲＯＣ、ＧＯＣ、ＢＯＣ）に（式２）に示すオブジェクトカラー用パラメータＰＯを乗算して、奥行き値Ｌに応じて減衰させたオブジェクトカラー（Ｒｏ、Ｇｏ、Ｂｏ）を算出するとともに、デプスキューイング色ＤＣ（ＲＤＣ、ＧＤＣ、ＢＤＣ）に（式３）に示すデプスキューイング色用パラメータＰＤを乗算して、奥行き値Ｌに応じて加算されるデプスキューイング色（ＲＤ、ＧＤ、ＢＤ）を算出する。
【０１１１】
そして、オブジェクトカラー（Ｒｏ、Ｇｏ、Ｂｏ）とデプスキューイング色の色成分の輝度値（ＲＤ、ＧＤ、ＢＤ）とを加算合成して、描画ピクセルの色Ｃ（Ｒｃ、Ｇｃ、Ｂｃ）を算出している。
【０１１２】
３．本実施形態の処理
次に、図７及び図８を用いて本実施形態の手法を実現する処理の例について説明する。
【０１１３】
まず図７に示すように、フレーム更新（例えば、１／６０秒）のタイミングが到来したか否かを判断する（ステップＳ１）。そしてフレーム更新のタイミングである場合には（ステップＳ１でＹ）、デプスキューイング処理のためのシェーダプログラムを描画プロセッサ（画像生成部１２０）に転送する（ステップＳ２）。
【０１１４】
次に、シェーダプログラムの実行の際に必要となるシェーダパラメータの設定と転送を行う（ステップＳ３）。具体的には、描画対象となるオブジェクトの頂点座標を視点座標系に変換するためのマトリクス（ワールドマトリクス及びビューマトリクス）、視点座標系での環境光（平行光源）の光源方向、オブジェクトの色（オブジェクトにマッピングされるデカールテクスチャの色）、デプスキューイング色を設定するための遠景色、オブジェクトカラー用パラメータＰＯを設定するための減衰開始点Ｓｒ及び減衰終了点Ｇｒ、デプスキューイング色用パラメータＰＤを設定するための増加開始点Ｓｉ及び増加終了点Ｇｉなどがシェーディングパラメータとして設定されて描画プロセッサに転送される。
【０１１５】
次に、描画対象となるオブジェクトの頂点リスト（頂点のローカル座標及びテクスチャ座標を含むデータ）を描画プロセッサに転送し（ステップＳ４）、描画プロセッサにシェーダプログラムの実行を指示するコマンドを転送する（ステップＳ５）。
【０１１６】
続いて描画プロセッサでは、図８に示すように、シェーダプログラム、シェーダパラメータ、及び頂点リストを取得して（ステップＳ１０）、描画対象となるオブジェクトの頂点に関するジオメトリ計算を行って、仮想カメラから頂点までの距離である奥行き値Ｌを算出する（ステップＳ１１）。具体的には、頂点のローカル座標をマトリクス変換して視点座標系での頂点の位置を求めるとともに、視点座標系での仮想カメラから頂点までの距離を算出して奥行き値Ｌを求める。
【０１１７】
次に、奥行き値Ｌと減衰開始点Ｓｒとの差分値の符号が正であるか否かを判断し（ステップＳ１２）、奥行き値Ｌが減衰開始点Ｓｒより奥側である場合には（ステップＳ１２でＹ）、オブジェクトの色ＯＣを、オブジェクトカラー用パラメータＰＯに応じて減衰させる処理を行う（ステップＳ１３）。
【０１１８】
次に、奥行き値Ｌと増加開始点Ｓｉとの差分値の符号が正であるか否かを判断し（ステップＳ１４）、奥行き値Ｌが増加開始点Ｓｉより奥側である場合には（ステップＳ１４でＹ）、デプスキューイング色用パラメータＰＤに基づいてデプスキューイング色ＤＣの加算分を求める処理を行う（ステップＳ１５）。
【０１１９】
そして最終出力色Ｃをオブジェクトの色ＯＣとデプスキューイング色ＤＣとの加算合成により求めて描画バッファへ出力する（ステップＳ１６）。
【０１２０】
４．ハードウェア構成
次に、図９を用いて本実施形態を実現できるハードウェア構成について説明する。なお、図１８は、本実施形態を実現できるハードウェア構成の例である。
【０１２１】
メインプロセッサ９００は、光学ディスク９８２（ＣＤ、ＤＶＤなど：情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動させたり、動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１２２】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１２３】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが描画プロセッサ９１０に実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更（更新）やピクセル（フラグメント）の描画色の決定を行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【０１２４】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１２５】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。光学ディスクドライブ９８０は、プログラム、画像データ、或いは音データなどが格納される光学ディスク９８２にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１２６】
なお、本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１２７】
そして、本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。
【０１２８】
より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１２９】
また、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【０１３０】
また、パラメータ設定処理、デプスキューイング色の設定処理及び合成処理についても本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【０１３１】
また、本発明は、種々のゲームに適用できる。そして、本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【０１３２】
【図１】本実施形態の画像生成システムの機能ブロック図。
【図２】従来のデプスキューイング手法を説明するための図。
【図３】本実施形態のデプスキューイング手法を説明するための図。
【図４】本実施形態のデプスキューイング手法を説明するための図。
【図５】本実施形態のデプスキューイング手法を説明するための図。
【図６】本実施形態のデプスキューイング手法を説明するための図。
【図７】本実施形態の具体的な処理例を示すフローチャート。
【図８】本実施形態の具体的な処理例を示すフローチャート。
【図９】ハードウェア構成例
【符号の説明】
【０１３３】
１００  処理部、
１１０  オブジェクト空間設定部、１１２  移動・動作処理部、
１１４  仮想カメラ制御部、
１２０  画像生成部、１２２  デプスキューイング処理部、
１３０  音生成部、
１６０  操作部、
１７０  記憶部、
１７１  主記憶部、１７２  描画バッファ、１７３  オブジェクトデータ記憶部、
１７４  テクスチャ記憶部、１７６  Ｚバッファ、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
2008077304.tif 000011
【図２】
2008077304.tif 000012
【図３】
2008077304.tif 000013
【図４】
2008077304.tif 000014
【図５】
2008077304.tif 000015
【図６】
2008077304.tif 000016
【図７】
2008077304.tif 000017
【図８】
2008077304.tif 000018
【図９】
2008077304.tif 000019