説明

プログラム、情報記憶媒体及び画像生成システム

【課題】より幅広く種々のシチュエーションを表現することができるとともに、簡単な処理にて現実性の高い画像を生成することができるプログラム、情報記憶媒体及びゲームシステムを提供する。
【解決手段】描画ピクセルの色を算出する際に、オブジェクトカラー用パラメータPOを用いてオブジェクトの色の合成率を設定するとともに、デプスキューイング色用パラメータPDを用いて合成すべきデプスキューイング色の合成率を設定し、オブジェクトカラー用パラメータPOとデプスキューイング色用パラメータPDとに基づいて、オブジェクトの色とデプスキューイング色とを合成するデプスキューイング処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【0002】
近年、仮想的な3次元空間(以下、「オブジェクト空間」という。)に配置設定されたキャラクタなどのオブジェクトを、仮想カメラ(所与の視点)に基づく所定の画像として生成する画像生成システムが実用化されている。
【0003】
このような画像生成システムは、仮想現実を体験させることができるものとして様々なシステムにて用いられるようになっており、特に、ゲームシステムにおいては、娯楽性及び興趣性を向上させるためものとして重要視されている。
【0004】
従来、このような画像生成システムにおいて、仮想カメラから見える画像における遠近感などを表現するため、仮想カメラからの距離に応じてオブジェクトの色に遠景の色を合成するデプスキューイング処理を行う方法が知られている。
【0005】
特に、最近では、オブジェクトの色と、遠景の色として設定されたターゲットとなる色とを線形補間するためのパラメータを用意し、そのようなパラメータを用いて仮想カメラにおける視点からの距離に応じて色を合成する代表的な方法が知られている。
【特許文献1】特許第3656062号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上述のような画像生成システムにあっては、オブジェクトの色の合成率と、遠景の色の合成率とが補間関係を有していたため、オブジェクト空間内の情景(シチュエーション)を詳細に表現することができない場合も多い。
【0007】
本発明は上記事情に鑑みてなされたものであり、その目的は、より幅広く種々のシチュエーションを表現することができるとともに、簡単な処理にてリアリティのある画像を生成することができるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【0008】
(1)本発明は、仮想カメラから見える画像を生成するための画像生成システムであって、オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部と、を含み、前記デプスキューイング処理部が、前記奥行き値に対して減衰特性を有する第1のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第2のパラメータを前記デプスキューイング色の合成率として設定し、前記第1のパラメータおよび前記第2のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成する画像生成システムに関するものである。また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータに読み取り可能な情報記憶媒体に関するものである。
【0009】
本発明によれば、デプスキューイング処理を行う際に、オブジェクトの色の合成率を第1のパラメータによって設定し、デプスキューイング色の合成率を第1のパラメータとは異なる第2のパラメータによって設定する。このため本発明によれば、オブジェクトの色とデプスキューイング色とを別個独立に調整することによって、視界の悪さ、大気や環境光の色味などを詳細に表現することができる。この結果、本発明によれば、例えば、空気の澄んだ情景や、曇った日の天候、朝から夕方・夜などの時間帯の違いなど、種々のシチュエーションを従来の手法より自由にかつ詳細に表現することができる。
【0010】
(2)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記第1のパラメータが前記奥行き値に応じた減衰を開始する第1の開始奥行き値と、前記第1のパラメータが前記奥行き値に応じた減衰を終了する第1の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第1のパラメータを設定し、前記第2のパラメータが前記奥行き値に応じた増加を開始する第2の開始奥行き値と、前記第2のパラメータが前記奥行き値に応じた増加を終了する第2の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第2のパラメータを設定するようにしてもよい。
【0011】
このようにすれば、奥行き値に対する各パラメータの特性変化を開始奥行き値と終了奥行き値とに基づいて個別に調整することができる。このため、例えば、第1の開始奥行き値と第2の開始奥行き値とを互いに異ならせたり、第1の終了奥行き値と第2の終了奥行き値とを互いに異ならせたりすることによって様々なシチュエーションを表現できるようになる。すなわち、この態様によれば、仮想カメラに対する深度(奥行き値に相当するもの)が同じであっても、オブジェクトの色の合成率やデプスキューイング色の合成率が異なる場合を実現できるので、種々のシチュエーションをより自由にかつ詳細に表現することができる。
【0012】
さらに、この態様では、第1の開始奥行き値と第2の開始奥行き値とを同じにするとともに、第1の終了奥行き値と第2の終了奥行き値とを同じにすることによって第1のパラメータと第2のパラメータとに補間関係を持たせることができるため、特殊なデプスキューイング表現だけではなく従来のデプスキューイング表現も可能となって利便性が高い。
【0013】
(3)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記オブジェクト空間において前記仮想カメラを中心とする天球オブジェクトに遠景色として付されている色のうち、前記仮想カメラの視線方向と前記天球オブジェクトとの交差点に付されている色を前記デプスキューイング色として設定するようにしてもよい。
【0014】
このようにすれば、遠景色として天球オブジェクトに付された色を用いるので、予めデプスキューイング色を定めておく場合に比べて、霧やガス又は夕暮れ時などの太陽光の乱反射を的確に表現することができる。すなわち、この態様によれば、大気の状態や環境光の色味の変化をデプスキューイング色に動的に反映させることができる。
【0015】
(4)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータを、前記光源の色に乗算することによって前記デプスキューイング色を設定するようにしてもよい。
【0016】
このようにすれば、視線方向に入射する光の色味の変化を光源方向と視線方向との角度差に応じて表現することができるので、種々のシチュエーションをより的確に表現することができる。
【0017】
(5)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記デプスキューイング処理部が、前記オブジェクト空間に設定された所与の光源の色と、前記光源の色と対になる色とを、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータに基づいて補間することによって前記デプスキューイング色を設定するようにしてもよい。
【0018】
このようにすれば、光源方向と対となる色が設定される方向を、例えば、仮想カメラに対して光源とは180度反対の方向として設定することができ、夕焼け時など空間内から見た空の色が一定でない場合(西の空では夕焼けの場合であっても東の空では薄暗くなっているようなシチュエーション)において視線方向に応じた適切なデプスキューイング色を設定することができる。
【0019】
(6)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記第1のパラメータが前記奥行き値に応じた減衰を開始する第1の開始奥行き値、前記第1のパラメータが前記奥行き値に応じた減衰を終了する第1の終了奥行き値、前記第2のパラメータが前記奥行き値に応じた増加を開始する第2の開始奥行き値、および前記第2のパラメータが前記奥行き値に応じた増加を終了する第2の終了奥行き値の少なくともいずれか1つを、前記オブジェクト空間に対して設定された天候、前記オブジェクト空間において進行する時刻、前記オブジェクト空間における仮想カメラの位置、および前記オブジェクト空間における仮想カメラの向きの少なくともいずれか1つに基づいて変化させるようにしてもよい。
【0020】
このようにすれば、オブジェクト空間の天候や時刻又は仮想カメラの位置や向きの変化によるシチュエーションの違いを的確に表現することができる。
【発明を実施するための最良の形態】
【0021】
以下、本発明に好適な実施の形態について図面を用いて説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態にて説明される構成の全てが、本発明の必須の構成要件であるとは限らない。
【0022】
1.構成
まず、図1を用いて本実施形態における画像生成システム(ゲームシステム)の構成について説明する。図1は、本実施形態における画像生成システムの機能ブロック図の一例である。なお、本実施形態の画像生成システムは、図1の構成要素(各部)の一部を省略した構成としてもよい。
【0023】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【0024】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM、VRAMなどにより実現できる。そして、本実施形態の記憶部170は、処理部100のワーク領域となる主記憶部171、画像を構成するピクセルの色情報等(画像情報)が記憶される描画バッファ172と、オブジェクトを定義する頂点データ(オブジェクトデータ、モデルデータ)が記憶されるオブジェクトデータ記憶部173と、オブジェクトにマッピングされる各種のテクスチャが記憶されるテクスチャ記憶部174と、隠面消去処理等に用いるZ値(奥行き値の一例)が記憶されるZバッファ176と、を含む。なお、これらの一部を省略する構成としてもよい。
【0025】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。
【0026】
この情報記憶媒体180には、処理部100において本実施形態の種々の処理を行うためのプログラム(データ)が記憶されている。即ち、この情報記録媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶されている。
【0027】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0028】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0029】
携帯型情報記憶装置194には、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。
【0030】
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0031】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0032】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は、記憶部170内の主記憶部171をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0033】
特に、本実施形態の処理部100は、オブジェクト空間に各種のオブジェクトを設定するオブジェクト空間設定部110と、オブジェクト空間における移動体オブジェクトの移動・動作演算を行う移動・動作処理部112と、仮想カメラを制御する仮想カメラ制御部114と、仮想カメラから見える画像を生成する画像生成部120と、音を生成する音生成部130と、を含む。なお、これらの一部を省略する構成としてもよい。
【0034】
オブジェクト空間設定部110は、各キャラクタオブジェクト、車、戦車、建物、樹木、柱、壁、マップ(地形)及び仮想球(天球)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。
【0035】
すなわち、オブジェクト空間設定部110は、ワールド座標系でのオブジェクト(モデルオブジェクト)の位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0036】
特に本実施形態では、オブジェクトデータ記憶部173に、移動体オブジェクト(車、キャラクタ等)、固定物オブジェクト(建物等)、背景オブジェクト(マップ、地形、仮想球(天球)等)の各オブジェクトを定義するオブジェクトデータが記憶されている。具体的には、このオブジェクトデータ記憶部173には、任意のローカル座標系で設定された頂点の位置座標によってオブジェクトを定義するオブジェクトデータが記憶される。なお、オブジェクトデータには、テクスチャ座標、色(頂点色)、法線ベクトル(法線データ)およびα値などが頂点の位置座標に対応づけられていてもよい。そして、オブジェクト空間設定部110は、オブジェクトデータ記憶部173に記憶されているオブジェクトデータに基づいてオブジェクト空間内にオブジェクトを配置設定する処理を行う。
【0037】
移動・動作処理部112は、移動体オブジェクト(車又は飛行機の他にキャラクタが使用する道具等)の移動・動作演算(移動・動作シミュレーション)を行う。即ち、この移動・動作処理部112は、操作部160によりプレーヤが入力した操作データ、設定されたパラメータや属性又はプログラム(移動・動作アルゴリズム)や各種データ(モーションデータ)などに基づいて、移動体オブジェクトをオブジェクト空間内で移動させ、又は、移動体オブジェクトの動作(モーション、アニメーション)を制御するための処理を行う。
【0038】
具体的には、本実施形態の移動・動作処理部112は、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。
【0039】
ここでフレームとは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。そして、本実施形態では、フレームレートは毎フレーム固定としてもよいし、処理負荷に応じて可変としてもよい。
【0040】
仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置や視線方向を制御する処理)を行う。
【0041】
例えば、仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【0042】
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ172(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内に設定された仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
【0043】
なお画像生成部120が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0044】
そして画像生成部120は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0045】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、主記憶部171に保存される。
【0046】
テクスチャマッピングは、記憶部170のテクスチャ記憶部174に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて記憶部170のテクスチャ記憶部174からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。特に本実施形態では、オブジェクト空間における遠景(背景)を現すための遠景テクスチャ(背景テクスチャ)を記憶部170のテクスチャ記憶部174から読み出すとともに、仮想カメラが設定された位置を中心とするように設定される仮想球オブジェクト(天球オブジェクト)に読み出された遠景テクスチャをマッピングする。
【0047】
なお、本実施形態では、仮想球オブジェクトにマッピングされる遠景テクスチャの色分布(テクセルパターン)を動的に変化させることができる。この場合において、色分布(ピクセルパターン)が異なる遠景テクスチャを動的に生成してもよいし、互いに色分布が異なる複数の遠景テクスチャを予め用意しておき、使用する遠景テクスチャを動的に切り替えるようにしてもよい。
【0048】
隠面消去処理としては、描画ピクセルのZ値が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0049】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより2つの色を合成した色を求める処理を行う。
【0050】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えばRGBの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0051】
そして本実施形態では、画像生成部120が、デプスキューイング処理部122を含む。
【0052】
デプスキューイング処理部122は、仮想カメラと描画対象のオブジェクトとの距離(視点座標系における仮想カメラと頂点との間の距離)を示す奥行き値に基づいて、描画対象のオブジェクトの色(以下、「オブジェクトカラー」ともいう。)と、デプスキューイング色とを合成するデプスキューイング処理を行う。
【0053】
具体的には、デプスキューイング処理部122は、オブジェクトの色の合成率を奥行き値に応じて減衰させるパラメータ(第1のパラメータの一例:以下、「オブジェクトカラー用パラメータ」という。)と、遠景色等として設定されているデプスキューイング色の合成率を奥行き値に応じて増加させるパラメータ(第2のパラメータの一例:以下、「デプスキューイング色用パラメータ」という。)とに基づいてデプスキューイング処理を行う。
【0054】
そして、デプスキューイング処理部122は、オブジェクトの色を構成する色成分(R、G、B)の輝度値に対してオブジェクトカラー用パラメータを乗算するとともに、デプスキューイング色を構成する色成分(R、G、B)の輝度値に対してデプスキューイング色用パラメータを乗算し、各乗算結果を加算することによってデプスキューイング処理後のオブジェクトについての描画ピクセルの色を求めて、求められた描画ピクセルの色を構成する色成分(R、G、B)の輝度値を描画バッファ172に出力する。
【0055】
また、デプスキューイング処理部122は、朝、昼、夕方又は夜などのオブジェクト空間の時刻(時間帯)、雨や霧およびその量など当該オブジェクト空間に設定された天候、及び、高地や山地などの仮想カメラが設定されたオブジェクト空間上の位置又はその向きに基づいて、上述の算出に用いるオブジェクトカラー用パラメータ及びデプスキューイング色用パラメータを設定する。
【0056】
例えば、デプスキューイング処理部122は、オブジェクトカラー用パラメータが奥行き値に応じた減衰を開始する開始点(第1の開始奥行き値の一例)及びその終了点(第1の終了奥行き値の一例)を、オブジェクト空間の天候及び時刻(時間帯)又は仮想カメラの位置及び向きなどの仮想カメラから見える画像を生成する際のシチュエーションに基づいて設定する。また例えば、デプスキューイング処理部122は、デプスキューイング色用パラメータが奥行き値に応じた増加を開始する開始点(第2の開始奥行き値の一例)及びその終了点(第2の終了奥行き値の一例)を、オブジェクト空間の天候及び時刻(時間帯)又は仮想カメラの位置及び向きなどの仮想カメラから見える画像を生成する際のシチュエーションに基づいて設定する。すなわち本実施形態では、開始点と終了点とにより定められる変化特性に基づいて、仮想カメラと描画対象のオブジェクトとの距離関係に応じたオブジェクトカラー用パラメータおよびデプスキューイング用パラメータを求める。そして本実施形態では、オブジェクトカラー用パラメータについての開始点および終了点と、デプスキューイング色用パラメータについての開始点および終了点とが、個別に設定されるため、各パラメータを独立して求めることができるようになっている。
【0057】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音又は音声などのゲーム音を生成し、音出力部192に出力する。
【0058】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0059】
また、複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0060】
2.本実施形態の手法
2.1 本実施形態のデプスキューイング処理の概要
次に、図2及び図3を用いて本実施形態のデプスキューイング処理の概要について説明する。
【0061】
なお、図2は、従来のデプスキューイング処理を説明するための図であり、図3は、本実施形態のデプスキューイング処理を説明するための図である。
【0062】
通常、現実の世界においては、視点を基準に遠方に行くほどに景色は霞んで見えるようになっており、ゲームなどの仮想現実の世界であっても、遠景にあるオブジェクトがくっきりとした輪郭を有していると、プレーヤなどに不自然な印象を与える。
【0063】
このため、最近では、遠景(背景)にあるオブジェクトの画像をより自然で現実的に表現する一つの手法として、デプスキューイング処理と呼ばれる手法が知られている。
【0064】
このデプスキューイング処理は、隠面消去処理が実行され、各描画ピクセルの描画色、すなわち、各描画ピクセルの色成分の輝度値を特定する際に実行される処理であって、視点からの距離に応じてオブジェクトの色をデプスキューイング色と呼ばれるターゲット色(例えば背景色に設定された色)に近づけ、遠景(背景)にあるオブジェクトをぼやかすための画像処理として実行される。またデプスキューイング処理は、オブジェクト空間内に霧(フォグ)が発生している様子を擬似的に表現するエフェクト処理(いわゆるフォグ処理)のためにも利用される。
【0065】
従来、このデプスキューイング処理においては、図2に示すように、オブジェクトの色と遠景色として設定されたターゲットとなる色(デプスキューイング色)とを線形補間するパラメータ(例えば、α値など)を用い、描画対象のオブジェクトを構成する描画ピクセルの色に対して仮想カメラからの距離(奥行き値L)に応じたデプスキューイング効果を反映させる処理を実行する。
【0066】
すなわち、従来のデプスキューイング処理では、(式1)に示すように、オブジェクトの色を構成する輝度値(ROB、GOB、BOB)とデプスキューイング色を構成する輝度値(R、G、B)とを、Z値に応じて設定される単一のパラメータである合成率rによって線形補間して、描画ピクセルの色の輝度値(R、G、B)を求めていた。
【0067】
【数1】

【0068】
なお、(式1)において、従来(R、G、B)は、従来の手法によりデプスキューイング処理が施された描画ピクセルの色を構成する各色成分の輝度値を示す。
【0069】
また、図2において、L1は、デプスキューイング処理の効果が描画ピクセルに反映され始める奥行き値Lを示し、L2は、描画ピクセルに反映されるデプスキューイング処理の効果が一定になる奥行き値Lを示す。すなわち、図2に示すように、奥行き値Lが0〜L1の範囲では、オブジェクトの色が描画ピクセルの色となり、奥行き値LがL2以降の範囲では、デプスキューイング色が描画ピクセルの色となる。
【0070】
しかしながら、このような従来のデプスキューイング処理では、オブジェクトの色(オブジェクトカラー)の実質的な合成率“1−r”と、デプスキューイング色の実質的な合成率“r”とが補間関係(図2におけるL1〜L2の区間において、オブジェクトの色が一定の割合で減少するとともに、デプスキューイング色が一定の割合で増加する関係)を有しているため、詳細にオブジェクト空間内の情景を表現することができない場合も多く存在していた。
【0071】
そこで、本実施形態では、図3に示すように、オブジェクトカラー用パラメータPOとデプスキューイング色用パラメータPDとを個別設定して、オブジェクトカラーが視点からの距離(奥行き値L)に応じて減衰する度合いと、デプスキューイング色が視点からの距離(奥行き値L)に応じて加算合成される度合いとを別個独立に求めている。
【0072】
具体的には、(1)オブジェクトカラー用パラメータ及びデプスキューイング色用パラメータの設定を行う処理(以下、「パラメータの設定処理」という。)、(2)デプスキューイング色を設定する処理(以下、「デプスキューイング色の設定処理」という。)及び(3)オブジェクトカラーとデプスキューイング色との合成を行う処理(以下、「合成処理」という。)の各処理を、デプスキューイング処理として行うようになっている。
【0073】
このように、本実施形態の手法によれば、オブジェクトの色とデプスキューイング色とを個別に調整することによって、視界の悪さや大気あるいは環境光の色味を、描画ピクセルの色に的確に反映することができるので、例えば、空気の澄んだ情景や曇った日の天候、朝から夕方・夜などといった時間帯の違いに基づく表現など種々のシチュエーションをより自由にかつ的確に表現することができるようになる。
【0074】
2.2 パラメータの設定処理
次に、上述と同様に、図3を用いて本実施形態のパラメータの設定処理について説明する。
【0075】
本実施形態では、表示画像を構成する各描画ピクセルの色を算出する際に、オブジェクト空間内で進行している仮想の時刻や天候又は仮想カメラ(視点)の位置及び向きなど、オブジェクト空間にて設定されている仮想のシチュエーションに基づいて、オブジェクトカラー用パラメータとデプスキューイング色用パラメータを設定することができるようになっている。
【0076】
具体的には、オブジェクトカラーの合成率が奥行き値Lに応じた減衰を開始する地点(第1の開始奥行き値:以下、「減衰開始点」という。)Srと、オブジェクトカラーの合成率が奥行き値Lに応じた減衰を終了する地点(第1の終了奥行き値:以下、「減衰終了点」という。)Grとがシチュエーション毎に設定され、シチュエーション毎の減衰開始点Srと減衰終了点Grとに基づいて、図3(A)に示すように、減衰開始点Srと減衰終了点Grとの間において減衰特性を有するオブジェクトカラー用パラメータPOを設定している。
【0077】
例えば、本実施形態では、オブジェクトカラーの合成率であるオブジェクトカラー用パラメータPOを0〜1.0の範囲に正規化しており、(式2)に示すように、減衰開始点Sr及び減衰終了点Grに基づいてオブジェクトカラー用パラメータ(合成率)POを設定している。
【0078】
【数2】

【0079】
ここで、(式2)における「L」は、描画対象となるオブジェクトの仮想カメラからの距離である奥行き値Lを示す。また、本実施形態では、L>Srの場合にオブジェクトカラーが減衰されるデプスキューイング処理が行われるようになっており、オブジェクトカラー用パラメータPOは、L>Grにおいて「0」にクランプされる。なおL<Srの場合に、オブジェクトカラー用パラメータPOが「1.0」にクランプされるようにしてもよい。
【0080】
また、本実施の形態では、デプスキューイング色用パラメータについて、デプスキューイング色の合成率が奥行き値Lに応じた増加を開始する地点(第2の開始奥行き値:以下、「増加開始点」という。)Siと、デプスキューイング色の合成率が奥行き値Lに応じた増加を終了する地点(第2の終了奥行き値:以下、「増加終了点」という。)Giとがシチュエーション毎に設定され、増加開始点Siと増加終了点Giとに基づいて、図3(B)に示すように、増加開始点Siと増加終了点Giとの間において増加特性を有するデプスキューイング色用パラメータPDを設定している。
【0081】
例えば、本実施形態では、オブジェクトカラー用パラメータと同様に、デプスキューイング色の合成率であるデプスキューイング色用パラメータを0〜1.0の範囲に正規化しており、(式3)に示すように、増加開始点Si及び増加終了点Giに基づいてデプスキューイング色用パラメータ(合成率)PDを設定している。
【0082】
【数3】

【0083】
ここで、(式3)における「L」は、描画対象となるオブジェクトの仮想カメラからの距離である奥行き値Lを示す。また、本実施形態では、L>Siの場合にデプスキューイング色が加算合成されるデプスキューイング処理が行われるようになっており、デプスキューイング色用パラメータPDは、L>Giでは、「1.0」にクランプされる。なお、L<Siの場合に、デプスキューイング色用パラメータPDが「0」にクランプされるようにしてもよい。
【0084】
なお本実施形態では、減衰開始点、増加開始点、減衰終了点、及び増加終了点がシチュエーション毎に設定可能なため、シチュエーション毎に減衰開始点と増加開始点とを異ならせることや、減衰終了点と増加終了点とを異ならせるることができる。ただし、任意のシチュエーションでは、減衰開始点と増加開始点とを同一としたり、減衰終了点と増加終了点とを同一としたりすることも可能である。
【0085】
ところで、図3(A)及び図3(B)に示した例では、オブジェクトカラー用パラメータとデプスキューイング色用パラメータとが奥行き値Lに対して1次関数的に変化するパラメータとして設定しているが、シチュエーションに応じて2次関数的、あるいは指数関数的にパラメータが変化するようにしてもよい。
【0086】
例えば、(式4)及び(式5)に示すように、(式2)で得られるPO、及び(式3)で得られるPDをそれぞれ2乗することによって0〜1.0に正規化された範囲で2次関数的に変化するオブジェクトカラー用パラメータPO´やデプスキューイング色用パラメータPD´を設定することも可能である。
【0087】
【数4】

【数5】

【0088】
2.3 デプスキューイング色の設定処理
次に、図4〜図6を用いて本実施形態のデプスキューイング色の設定処理について説明する。
【0089】
まず本実施形態では、仮想カメラの向き(いわゆる視線方向)に応じてデプスキューイング色を設定する手法を採用している。
【0090】
例えば、図4に示すように、オブジェクト空間において仮想カメラの位置Vを中心として設定された仮想球オブジェクトSB(天球オブジェクト)に遠景色BGを設定するテクスチャ(遠景テクスチャ、背景テクスチャ)がマッピングされている場合に、仮想カメラVCの視線方向Aと仮想球オブジェクトSBとの交差点に付されている色BGをデプスキューイング色DCとして設定することができる。
【0091】
本実施形態の手法によれば、仮想球オブジェクトSBに付された遠景色BGからデプスキューイング色DCを取得できるので、視線方向に映る空模様を的確に反映させたデプスキューイング色DCを設定することができる。
【0092】
なお、図4に示す例では、後述する図6に示される例を適用して仮想カメラVCの視線方向Aと仮想球オブジェクトSBとの交差点に付されている遠景色BGと環境光を設定する光源の色LCとを、仮想カメラVCの視線方向Aと光源方向Lとの角度差θに基づいて補間することによってデプスキューイング色DCを設定するようにしてもよい。
【0093】
また本実施形態の手法の他の例として、図5に示すように、環境光を設定する光源の色LCと、光源が設定されている方向と180度異なる方向Mに設定された色(環境光源の色と対になる色、例えば黒色)MCとを、仮想カメラVCの視線方向Aと光源の方向Lとの角度差θに応じて変化する補間パラメータに基づいて補間することによってデプスキューイング色DCを設定してもよい。
【0094】
すなわち、図5に示す例では、仮想カメラVCの視線方向Aと光源の方向Lとの角度差θに応じて変化する内積値「cosθ」(視線方向Aと光源方向Lとの内積に相当)を補間パラメータとして利用しており、(式6)に示すように、光源の色LCと、光源の色LCと対となる色MCとを「cosθ」によって線形補間することによってデプスキューイング色DCを設定している。なお、(式6)では、cosθが負の場合(cosθ<0)の場合には、cosθが0にクランプされる。
【0095】
【数6】

【0096】
図5に示す例によれば、西の空では夕焼けの場合であっても東の空では薄暗くなっているようなシチュエーションにおいて、仮想カメラVCの視線方向Aの変化に追従するようにデプスキューイング色DCを変化させることができるので、種々のシチュエーションをより的確に表現することができるようになっている。
【0097】
なお、図5に示す例では、光源の色LCと対になる色MCを光源方向Lと180度異なる方向Mに設定するようになっているが、180度以外、例えば、150度や120度など任意の角度方向に光源の色LCと対になる色MCを設定してもよい。
【0098】
また、図5に示す例では、角度差θに応じて変化する補間パラメータとして「cosθ」を用いているが、オブジェクト空間のシチュエーションによって「cosθ」を補間パラメータとして用いるようにしてもよい。
【0099】
また、本実施形態の手法の他の例として、図6に示すように、環境光を設定する光源の色LCを、視線方向Aと光源の方向Lとに基づいて調整することによりデプスキューイング色DCを設定するようにしてもよい。
【0100】
すなわち、図6に示す例では、仮想カメラVCの視線方向Aと環境光を設定する光源の方向Lとの角度差θに応じて変化する余弦「cosθ」を調整パラメータとして利用しており、(式7)に示すように、光源の色LCに調整パラメータを乗算することによってデプスキューイング色DCを設定している。なお、(式7)では、cosθが負の場合(cosθ<0)の場合には、cosθが0にクランプされる。
【0101】
【数7】

【0102】
図6に示す例によれば、例えば、光源方向Lに対して視線方向Aが変化する場合に、角度差θに応じた色味の変化を表現することができる。ただし、上述のように、調整パラメータとして「cosθ」を用いる代わりに、オブジェクト空間のシチュエーションによって「cosθ」を光源の色LCに乗算するようにしてもよい。
【0103】
また、上述では、光源が1種類の場合を例に説明しているが、太陽、月、外灯など2種類以上の複数の光源がオブジェクト空間に設定されている場合であっても、上述の考え方を適用してデプスキューイング色DCを設定することができる。
【0104】
また本実施形態の手法の変形例として、オブジェクト空間内で進行している仮想時刻、オブジェクト空間内の天候、あるいは仮想カメラの位置・向きなど各種のシチュエーションに応じて、デプスキューイング色DCを設定することができる。
【0105】
例えば、オブジェクト空間内で進行している仮想時刻に基づいてオブジェクト空間における時間帯を決定し、「朝」の時間帯においては「白色」、「昼」の時間帯においては「青色」、「夕方」の時間単位においては「赤色」及び「夜」の時間帯においては「黒色」をデプスキューイング色DCとして設定するようにしてもよい。なお、「朝」の時間帯であっても「昼」に近い場合には、青味がかっている「白」などをデプスキューイング色DCとして設定するようにしてもよい。
【0106】
また、オブジェクト空間内の天候に関しては、「晴れ」のときは「青色」、「曇り」のときは「灰色」又は「霧」が発生ししているときは「白色」をデプスキューイング色DCとして設定するようにしてもよい。この場合に、時間帯によって設定される色と天候によって設定される色とを合成してデプスキューイング色DCを設定するようにしてもよい。
【0107】
さらに、仮想カメラの位置又は向きに関しては、仮想カメラの位置が山頂の場合には「白色」をデプスキューイング色DCとして設定し、仮想カメラの位置が山麓の場合には「灰色」をデプスキューイング色DCとして設定するようにしてもよい。また、太陽などのオブジェクト空間に設定された環境光を設定する光源に対する向きに応じて、時間帯や天候にて設定された色に対して「白色」あるいは「黒色」を加算合成した色をデプスキューイング色DCとして設定するようにしてもよい。
【0108】
2.4 合成処理
本実施形態では、上述のように設定されたオブジェクトカラー用パラメータPO、デプスキューイング色用パラメータPD、及びデプスキューイング色DCに基づいて、オブジェクトカラーOCとデプスキューイング色DCとを、(式8)に示す演算を行うことによって合成して描画ピクセルの色Cを算出している。
【0109】
【数8】

【0110】
具体的には、オブジェクトカラーOC(ROC、GOC、BOC)に(式2)に示すオブジェクトカラー用パラメータPOを乗算して、奥行き値Lに応じて減衰させたオブジェクトカラー(Ro、Go、Bo)を算出するとともに、デプスキューイング色DC(RDC、GDC、BDC)に(式3)に示すデプスキューイング色用パラメータPDを乗算して、奥行き値Lに応じて加算されるデプスキューイング色(R、G、B)を算出する。
【0111】
そして、オブジェクトカラー(Ro、Go、Bo)とデプスキューイング色の色成分の輝度値(R、G、B)とを加算合成して、描画ピクセルの色C(Rc、Gc、Bc)を算出している。
【0112】
3.本実施形態の処理
次に、図7及び図8を用いて本実施形態の手法を実現する処理の例について説明する。
【0113】
まず図7に示すように、フレーム更新(例えば、1/60秒)のタイミングが到来したか否かを判断する(ステップS1)。そしてフレーム更新のタイミングである場合には(ステップS1でY)、デプスキューイング処理のためのシェーダプログラムを描画プロセッサ(画像生成部120)に転送する(ステップS2)。
【0114】
次に、シェーダプログラムの実行の際に必要となるシェーダパラメータの設定と転送を行う(ステップS3)。具体的には、描画対象となるオブジェクトの頂点座標を視点座標系に変換するためのマトリクス(ワールドマトリクス及びビューマトリクス)、視点座標系での環境光(平行光源)の光源方向、オブジェクトの色(オブジェクトにマッピングされるデカールテクスチャの色)、デプスキューイング色を設定するための遠景色、オブジェクトカラー用パラメータPOを設定するための減衰開始点Sr及び減衰終了点Gr、デプスキューイング色用パラメータPDを設定するための増加開始点Si及び増加終了点Giなどがシェーディングパラメータとして設定されて描画プロセッサに転送される。
【0115】
次に、描画対象となるオブジェクトの頂点リスト(頂点のローカル座標及びテクスチャ座標を含むデータ)を描画プロセッサに転送し(ステップS4)、描画プロセッサにシェーダプログラムの実行を指示するコマンドを転送する(ステップS5)。
【0116】
続いて描画プロセッサでは、図8に示すように、シェーダプログラム、シェーダパラメータ、及び頂点リストを取得して(ステップS10)、描画対象となるオブジェクトの頂点に関するジオメトリ計算を行って、仮想カメラから頂点までの距離である奥行き値Lを算出する(ステップS11)。具体的には、頂点のローカル座標をマトリクス変換して視点座標系での頂点の位置を求めるとともに、視点座標系での仮想カメラから頂点までの距離を算出して奥行き値Lを求める。
【0117】
次に、奥行き値Lと減衰開始点Srとの差分値の符号が正であるか否かを判断し(ステップS12)、奥行き値Lが減衰開始点Srより奥側である場合には(ステップS12でY)、オブジェクトの色OCを、オブジェクトカラー用パラメータPOに応じて減衰させる処理を行う(ステップS13)。
【0118】
次に、奥行き値Lと増加開始点Siとの差分値の符号が正であるか否かを判断し(ステップS14)、奥行き値Lが増加開始点Siより奥側である場合には(ステップS14でY)、デプスキューイング色用パラメータPDに基づいてデプスキューイング色DCの加算分を求める処理を行う(ステップS15)。
【0119】
そして最終出力色Cをオブジェクトの色OCとデプスキューイング色DCとの加算合成により求めて描画バッファへ出力する(ステップS16)。
【0120】
4.ハードウェア構成
次に、図9を用いて本実施形態を実現できるハードウェア構成について説明する。なお、図18は、本実施形態を実現できるハードウェア構成の例である。
【0121】
メインプロセッサ900は、光学ディスク982(CD、DVDなど:情報記憶媒体)に格納されたプログラム、通信インターフェース990を介してダウンロードされたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、マトリクス演算(ベクトル演算)を高速に実行する。例えばオブジェクトを移動させたり、動作(モーション)させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0122】
ジオメトリプロセッサ904は、メインプロセッサ900上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ906は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、MPEG方式等で圧縮された動画像を表示できる。
【0123】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。また描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが描画プロセッサ910に実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更(更新)やピクセル(フラグメント)の描画色の決定を行う。1フレーム分の画像がフレームバッファ922に書き込まれるとその画像はディスプレイ912に表示される。
【0124】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などのゲーム音を生成し、スピーカ932を介して出力する。ゲームコントローラ942やメモリカード944からのデータはシリアルインターフェース940を介して入力される。
【0125】
ROM950にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納される。なおROM950の代わりにハードディスクを利用してもよい。RAM960は各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ間でのDMA転送を制御する。光学ディスクドライブ980は、プログラム、画像データ、或いは音データなどが格納される光学ディスク982にアクセスする。通信インターフェース990はネットワーク(通信回線、高速シリアルバス)を介して外部との間でデータ転送を行う。
【0126】
なお、本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0127】
そして、本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。
【0128】
より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【0129】
また、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0130】
また、パラメータ設定処理、デプスキューイング色の設定処理及び合成処理についても本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【0131】
また、本発明は、種々のゲームに適用できる。そして、本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【0132】
【図1】本実施形態の画像生成システムの機能ブロック図。
【図2】従来のデプスキューイング手法を説明するための図。
【図3】本実施形態のデプスキューイング手法を説明するための図。
【図4】本実施形態のデプスキューイング手法を説明するための図。
【図5】本実施形態のデプスキューイング手法を説明するための図。
【図6】本実施形態のデプスキューイング手法を説明するための図。
【図7】本実施形態の具体的な処理例を示すフローチャート。
【図8】本実施形態の具体的な処理例を示すフローチャート。
【図9】ハードウェア構成例
【符号の説明】
【0133】
100 処理部、
110 オブジェクト空間設定部、112 移動・動作処理部、
114 仮想カメラ制御部、
120 画像生成部、122 デプスキューイング処理部、
130 音生成部、
160 操作部、
170 記憶部、
171 主記憶部、172 描画バッファ、173 オブジェクトデータ記憶部、
174 テクスチャ記憶部、176 Zバッファ、
180 情報記憶媒体、190 表示部、192 音出力部、
194 携帯型情報記憶装置、196 通信部

【特許請求の範囲】
【請求項1】
仮想カメラから見える画像を生成するためのプログラムであって、
オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、
前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、
前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部としてコンピュータを機能させ、
前記デプスキューイング処理部が、
前記奥行き値に対して減衰特性を有する第1のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第2のパラメータを前記デプスキューイング色の合成率として設定し、前記第1のパラメータおよび前記第2のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成することを特徴とするプログラム。
【請求項2】
請求項1において、
前記デプスキューイング処理部が、
前記第1のパラメータが前記奥行き値に応じた減衰を開始する第1の開始奥行き値と、前記第1のパラメータが前記奥行き値に応じた減衰を終了する第1の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第1のパラメータを設定し、
前記第2のパラメータが前記奥行き値に応じた増加を開始する第2の開始奥行き値と、前記第2のパラメータが前記奥行き値に応じた増加を終了する第2の終了奥行き値とに基づいて、前記オブジェクトの奥行き値に応じた第2のパラメータを設定することを特徴とするプログラム。
【請求項3】
請求項1又は2において、
前記デプスキューイング処理部が、
前記オブジェクト空間において前記仮想カメラを中心とする天球オブジェクトに遠景色として付されている色のうち、前記仮想カメラの視線方向と前記天球オブジェクトとの交差点に付されている色を前記デプスキューイング色として設定することを特徴とするプログラム。
【請求項4】
請求項1又は2において、
前記デプスキューイング処理部が、
前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータを、前記光源の色に乗算することによって前記デプスキューイング色を設定することを特徴とするプログラム。
【請求項5】
請求項1又は2において、
前記デプスキューイング処理部が、
前記オブジェクト空間に設定された所与の光源の色と、前記光源の色と対になる色とを、前記仮想カメラの視線方向と前記オブジェクト空間に設定された所与の光源の方向との角度差に応じて変化するパラメータに基づいて補間することによって前記デプスキューイング色を設定することを特徴とするプログラム。
【請求項6】
請求項1〜5のいずれかにおいて、
前記第1のパラメータが前記奥行き値に応じた減衰を開始する第1の開始奥行き値、前記第1のパラメータが前記奥行き値に応じた減衰を終了する第1の終了奥行き値、前記第2のパラメータが前記奥行き値に応じた増加を開始する第2の開始奥行き値、および前記第2のパラメータが前記奥行き値に応じた増加を終了する第2の終了奥行き値の少なくともいずれか1つを、前記オブジェクト空間に対して設定された天候、前記オブジェクト空間において進行する時刻、前記オブジェクト空間における仮想カメラの位置、および前記オブジェクト空間における仮想カメラの向きの少なくともいずれか1つに基づいて変化させることを特徴とするプログラム。
【請求項7】
コンピュータ読み取り可能な情報記憶媒体であって、請求項1〜6のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項8】
仮想カメラから見える画像を生成するための画像生成システムであって、
オブジェクト空間にオブジェクトを設定するオブジェクト空間設定部と、
前記オブジェクト空間における前記仮想カメラの位置及び向きを設定する仮想カメラ制御部と、
前記仮想カメラから見た前記オブジェクトの画像を描画する際に、前記仮想カメラに対するオブジェクトの奥行き値に対応づけて、前記オブジェクトの色と所与のデプスキューイング色とを合成するデプスキューイング処理を行うデプスキューイング処理部と、
を備え、
前記デプスキューイング処理部が、
前記奥行き値に対して減衰特性を有する第1のパラメータを前記オブジェクトの色の合成率として設定するとともに、前記奥行き値に対して増加特性を有する第2のパラメータを前記デプスキューイング色の合成率として設定し、前記第1のパラメータおよび前記第2のパラメータに基づいて、前記オブジェクトの色と前記デプスキューイング色とを合成することを特徴とする画像生成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2008−77304(P2008−77304A)
【公開日】平成20年4月3日(2008.4.3)
【国際特許分類】
【出願番号】特願2006−254305(P2006−254305)
【出願日】平成18年9月20日(2006.9.20)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】