(57)【要約】【課題】  ハードウェアの負担増を抑制しつつ、霧のかかった仮想ゲーム空間を仮想カメラで撮影したときのフレーム画像のリアリティを高めることのできるコンピュータプログラム及び画像処理装置を提供する。【解決手段】  画像処理装置1は、フォグを有する仮想ゲーム空間を仮想カメラで撮影したフレーム画像を生成するフレーム画像生成部43を備え、該フレーム画像生成部43は、フレームの各画素について画素色とフォグ色とを混合した表示色を決定する際、色強度が高い画素ほどフォグ色の影響度を低くする。【選択図】図４
2013146324.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
フォグを有する仮想空間を仮想カメラで撮影した画像を生成する画像生成手段として機能させ、
前記画像生成手段は、各画素について画素色とフォグ色とを混合した表示色を決定する際、色強度が高い画素ほどフォグ色の影響度を低くすることを特徴とするコンピュータプログラム。
【請求項２】
前記画像生成手段は、下記の式（１）
【数１】
2013146324.tif 000006
に基づいて前記表示色を決定することを特徴とする請求項１に記載のコンピュータプログラム。
【請求項３】
前記色強度として輝度を用いることを特徴とする請求項２に記載のコンピュータプログラム。
【請求項４】
請求項１乃至３の何れかに記載のコンピュータプログラムを記憶したプログラム記憶部と、該プログラム記憶部に記憶されたプログラムを実行するコンピュータと、を備えた、画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間を仮想カメラで撮影したときの画像をモニタに表示すべくコンピュータを機能させるコンピュータプログラム、及び画像処理装置に関する。
【背景技術】
【０００２】
従来、仮想の三次元空間内で行動するプレイヤキャラクタをユーザが操作することによって進行するゲームが存在する。例えば、プレイヤキャラクタを操作して仮想ゲーム空間内を移動させ、遭遇したモンスター等の敵キャラクタを討伐しながらゲームを進行させるアクションゲームなどがある。このようなゲームでは、キャラクタ等の動的オブジェクトや建築物等の静的オブジェクトを含む三次元の仮想ゲーム空間を設定し、これを仮想カメラによって撮影したフレーム画像をモニタに表示している。具体的には、オブジェクトの配置を決定し、仮想カメラの位置及び向き、光源、エフェクトなどの設定を行い、レンダリング処理を実行することにより、仮想ゲーム空間を投影変換したフレーム画像を生成する。
【０００３】
また、仮想ゲーム空間をよりリアルに表現するために、仮想ゲーム空間内の大気による作用をフォグ（霧）によって表現する場合がある（特許文献１，２参照）。例えば、レンダリング処理において深度テストを行い、仮想カメラから遠方に位置するオブジェクトほど、これを表示する画素の色をフォグ色（例えば、白色）に近づける。これにより、遠方に位置するオブジェクトほど白く霞んで表示されるため、大気の存在を臨場感のある画像で表現することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３７２７０９８号公報
【特許文献２】特許第４６９８８９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１，２に開示されたフォグの表現方法では、現実世界で発生する光の散乱現象（Light Scattering）が考慮されていないため、リアリティに欠けるものとなっている。例えば、濃いフォグの中に輝度の高い物体が存在する場合、現実世界であれば散乱光によって当該物体が発する光を視認できる場合であっても、上記の従来方法により生成したフレーム画像では、当該物体がフォグに完全に埋没してしまって視認できなくなる場合がある。
【０００６】
一方、光の散乱現象を物理的に表現する数式を用いることにより、レンダリング処理にて当該現象を反映したフレーム画像を生成することも考えられる。しかし、このような処理はハードウェアにかかる負荷が大きく現実的ではない。更に、高輝度領域を予め選択しておき、この領域と仮想カメラとの間のフォグを除外することにより、当該領域の視認性を高くすることも考えられる。しかし、この場合には高輝度領域とその周囲との間で、フォグの有無が顕著に識別されてしまい、かえってリアリティに欠ける画像となる可能性がある。
【０００７】
そこで本発明は、ハードウェアの負担増を抑制しつつ、霧のかかった仮想空間を仮想カメラで撮影したときのフレーム画像のリアリティを高めることのできるコンピュータプログラム及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るコンピュータプログラムは、コンピュータを、フォグを有する仮想空間を仮想カメラで撮影した画像を生成する画像生成手段として機能させ、前記画像生成手段は、各画素について画素色とフォグ色とを混合した表示色を決定する際、色強度が高い画素ほどフォグ色の影響度を低くする。
【０００９】
このような構成とすることにより、１画素ごとに、色強度に応じてフォグ色の影響が可変となるため、レンダリング処理の負荷の増大を抑制しつつ、現実世界での光の散乱現象をリアルに表現することができる。ここで、「色強度」としては、後述するように典型的には「輝度」（カンデラ／平方メートル）を採用することができるが、これに限定されず、ＲＧＢ各色の階調を示す値の合計に基づいて設定してもよいし、現実世界にて霧を通じて視認しやすい色ほど高い値となるように色強度を定めてもよい。
【００１０】
また、前記フレーム画像生成手段は、下記の式（１）
【数１】
2013146324.tif 000003
に基づいて前記表示色を決定するように構成されていてもよい。
【００１１】
また、前記色強度として輝度を用いることとしてもよい。
【００１２】
本発明に係る画像処理装置は、上述した何れかに記載のコンピュータプログラムを記憶したプログラム記憶部と、該プログラム記憶部に記憶されたプログラムを実行するコンピュータと、を備える。
【発明の効果】
【００１３】
本発明によれば、ハードウェアの負担増を抑制しつつ、霧のかかった仮想空間を仮想カメラで撮影したときの画像のリアリティを高めることのできるコンピュータプログラム及び画像処理装置を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態に係る画像処理装置のハードウェア構成を示すブロック図である。
【図２】図１に示す画像処理装置の機能的な構成を示すブロック図である。
【図３】フレーム画像の生成処理を説明するためのフローチャートである。
【図４】フレーム画像生成での表示色の決定手順を説明するためのフローチャートである。
【図５】比較例に係るフレーム画像を示す図面である。
【図６】実施例に係るフレーム画像を示す図面である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態に係るコンピュータプログラム、及び画像処理装置について、図面を参照しつつ説明する。なお、ここではユーザが仮想ゲーム空間内のプレイヤキャラクタの動作を操作することによって進行するアクションゲームを例示するが、本発明は、仮想ゲーム空間をモニタに表示する処理であれば、如何なるものにも適用可能である。
【００１６】
［ハードウェア構成］
図１は、本発明の実施の形態に係る画像処理装置1のハードウェア構成を示すブロック図である。図１に示すように、画像処理装置1は、他の画像処理装置1及びサーバ装置3との間で、インターネット又はＬＡＮなどの通信ネットワークNWを介して互いに通信可能である。この画像処理装置1は、その動作を制御するコンピュータであるＣＰＵ10を備え、このＣＰＵ10にはバス11を介して、ディスクドライブ12、メモリカードスロット13、プログラム記憶手段を成すＨＤＤ14及びＲＯＭ15、並びにＲＡＭ16が接続されている。
【００１７】
ディスクドライブ12には、ＤＶＤ−ＲＯＭ等のディスク型記録媒体30が装填可能であり、該ディスク型記録媒体30には、本発明の実施の形態に係るゲームプログラム（コンピュータプログラム）30a、及び本ゲームに登場する各キャラクタ（プレイヤキャラクタ，味方キャラクタ，敵キャラクタ等）や、仮想ゲーム空間を形成するのに必要なオブジェクト及びテクスチャ等のゲームデータ30bも記録されている。また、メモリカードスロット13にはカード型記録媒体31が装填でき、ゲームの途中経過等のプレイ状況を示すセーブデータを、ＣＰＵ10からの指示に応じて記録可能である。
【００１８】
ＨＤＤ14は画像処理装置1が内蔵する大容量記録媒体であって、ディスク型記録媒体30から読み込んだゲームプログラム30a及びゲームデータ30b、更にはセーブデータ等を記録する。ＲＯＭ15は、マスクＲＯＭ又はＰＲＯＭなどの半導体メモリであり、画像処理装置1を起動する起動プログラムや、ディスク型記録媒体30が装填されたときの動作を制御するプログラムなどを記録している。ＲＡＭ16は、ＤＲＡＭ又はＳＲＡＭなどから成り、ＣＰＵ10が実行すべきゲームプログラム30aや、その実行の際に必要になるゲームデータ30bなどを、ゲームのプレイ状況に応じてディスク型記録媒体30又はＨＤＤ14から読み込んで一時的に記録する。
【００１９】
また、ＣＰＵ10には更に、バス11を介してグラフィック処理部17、オーディオ合成部20、無線通信制御部23、及びネットワークインタフェース25が接続されている。
【００２０】
このうちグラフィック処理部17は、ＣＰＵ10の指示に従って仮想ゲーム空間や各キャラクタ等を含むゲーム画像（フレーム画像）を描画する。また、グラフィック処理部17にはビデオ変換部18を介して外部のモニタ（出力部）19が接続されており、グラフィック処理部17にて描画されたフレーム画像はビデオ変換部18において動画形式に変換され、更にモニタ19にて表示されるようになっている。
【００２１】
オーディオ合成部20は、ＣＰＵ10の指示に従ってデジタルのゲーム音声を再生及び合成する。また、オーディオ合成部20にはオーディオ変換部21を介して外部のスピーカ22が接続されている。従って、オーディオ合成部20にて再生及び合成されたゲーム音声は、オーディオ変換部21にてアナログ形式にデコードされ、更にスピーカ22から外部へ出力されるようになっている。
【００２２】
無線通信制御部23は、2.4GHz帯の無線通信モジュールを有し、画像処理装置1に付属するコントローラ24との間で無線により接続され、データの送受信が可能となっている。ユーザは、このコントローラ24に設けられたボタン等の操作子（図示せず）を操作することにより、画像処理装置1へ信号を入力することができ、モニタ19に表示されるプレイヤキャラクタの動作を制御可能になっている。また、ネットワークインタフェース25は、インターネット又はＬＡＮなどの通信ネットワークNWに対して画像処理装置1を接続するものであり、他の画像処理装置1又はサーバ装置3との間で通信可能である。そして、画像処理装置1を、通信ネットワークNWを介して他の画像処理装置1と接続し、互いにデータを送受信することにより、同一のゲーム空間内で同期して複数のプレイヤキャラクタを表示させることができる。従って、複数人が共同してゲームを進行させるマルチプレイが可能になっている。
【００２３】
［画像処理装置の機能的構成］
図２は、上述した画像処理装置1の機能的な構成を示すブロック図である。図２に示すように画像処理装置1は、本発明のゲームプログラムを実行することで、仮想ゲーム空間生成部40、キャラクタ制御部41，ゲーム進行制御部42，フレーム画像生成部43等の機能を実現することができる。このような各機能は、ハード的には図１に示すＣＰＵ10，ＨＤＤ14，ＲＯＭ15，ＲＡＭ16，グラフィック処理部17，ビデオ変換部18，オーディオ合成部20，オーディオ変換部21，ネットワークインタフェース25等から構成されている。
【００２４】
仮想ゲーム空間生成部40は、所定の広がりを有する三次元の仮想ゲーム空間を生成する。即ち、ゲームデータ30bに含まれる、ポリゴン等を用いてモデリングされたオブジェクトやテクスチャ等のデータにより、ゲームが進行する舞台となる三次元の仮想ゲーム空間を生成する。
【００２５】
キャラクタ制御部41は、予めモデリングされたプレイヤキャラクタや敵キャラクタ等のキャラクタを、仮想ゲーム空間内に生成し、ユーザの操作やゲーム状況に応じてその動作を制御する。例えば、ユーザはコントローラ24を操作することにより、プレイヤキャラクタをゲーム空間100内で移動させたり、敵キャラクタに対して攻撃行動をさせたりすることができる。また、敵キャラクタを、予め設定された思考パターンに従って行動させる。
【００２６】
ゲーム進行制御部42は、ユーザの操作及びゲーム内時間の経過等に応じて、ゲームの進行を制御する。例えば、ユーザの操作によりプレイヤキャラクタが所定の行動を行った場合に、所定のイベントを発生させて一定期間だけ所定の動画を再生する。更に、ゲーム内時間の経過に応じて、仮想ゲーム空間の環境を変化させる。例えば、昼夜の変化に応じて周囲の明るさを変化させたり、夜になると街灯をつけたり、シチュエーションに応じて仮想ゲーム空間内にフォグを発生させたりする。
【００２７】
フレーム画像生成部43は、仮想ゲーム空間内の様子をモニタ19に表示すべく、仮想ゲーム空間を仮想カメラで撮影したときの二次元画像（フレーム画像）を生成する。このフレーム画像の生成は、例えば１秒間に３０フレーム分実行され（３０ｆｐｓ）、生成されたフレーム画像は順次モニタ19に表示される。
【００２８】
［フレーム画像生成処理の詳細］
次に、上記フレーム画像生成部43によるフレーム画像の生成処理について、特に、フォグの存在する仮想ゲーム空間を仮想カメラで撮影したときのフレーム画像を生成する処理について詳述する。図３は、１フレームごとに実行するフレーム画像の生成処理を説明するためのフローチャートである。画像処理装置1は、１フレームごとに仮想ゲーム空間を構成する各要素の設定（更新）を行い、続いて、設定済みの仮想ゲーム空間に基づいて二次元のフレーム画像を生成するためのレンダリング処理を行う。
【００２９】
具体的には、仮想ゲーム空間生成部40により、仮想ゲーム空間を構成するオブジェクトの設定（ステップS10）、光源及び仮想カメラの設定（ステップS11）、エフェクトの設定（ステップS12）などを行う。オブジェクトの設定（ステップS10）では、ポリゴン等を用いて予めモデリングされたオブジェクトについて、１フレーム経過後の位置、形状、テクスチャなどを決定する。光源の設定（ステップS11）では、１フレーム経過後の光源の位置、向き、光度などを決定し、仮想カメラの設定（ステップS11）では、１フレーム経過後の仮想カメラの位置、向き、画角などを決定する。エフェクトの設定（ステップS12）では、例えば火の粉を表現する各パーティクルの位置、色、寿命などを決定し、フォグを表現するテクスチャの色やブレンド率を決定したりする。
【００３０】
次に、上記のようにして設定した仮想ゲーム空間について、フレーム画像生成部43により、ソリッド処理（ステップS20）、抜き処理（ステップS21）、トランスペアレンシー処理（ステップS22）、エフェクト処理（ステップS23）、スクリーン処理（ステップS24）などを含むレンダリング処理を行い、ＲＡＭ16等のメモリに用意されたフレームバッファに書き込むためのフレームデータを生成する。
【００３１】
ソリッド処理（ステップS20）では、建築物や敵キャラクタ等の不透明なオブジェクトを示すフレームデータを生成し、フレームバッファに書き込む。抜き処理（ステップS21）では、フレーム画像に含まれることとなる木の葉などの平面的なオブジェクトを示すフレームデータを生成し、フレームバッファに書き込む。トランスペアレンシー処理（ステップS22）では、透明なオブジェクトを示すフレームデータを生成し、フレームバッファに書き込む。エフェクト処理（ステップS23）では、火の粉などのパーティクルを示すフレームデータを生成し、フレームバッファに書き込む。また、フォグ用のテクスチャをブレンド率に応じて他のフレームデータと合成した結果を、フレームバッファに書き込む。スクリーン処理（ステップS24）では、仮想ゲーム空間を構成するオブジェクト等に対して最も仮想カメラに近い位置に表示する二次元画像（例えば、プレイヤキャラクタの体力ゲージ、キャラクタの発言内容を示す文字列等）を示すフレームデータを生成し、フレームバッファに書き込む。
【００３２】
なお、図３に示すフローチャートは、説明の便宜上、各処理を図示した順序で実行するように記載しているが、実際には、採用するレンダリング方法に応じて異なる順序で実行したり、複数の処理を同時に実行したりする場合もある。例えば、仮想カメラによってフォグを介してオブジェクトを撮影したときの当該オブジェクトのフレームデータを生成する場合は、これに関連するソリッド処理及びエフェクト処理を同時に実行し、当該オブジェクトの表面色とフォグ色との合成色が生成される。
【００３３】
［散乱光の表現］
ところで、本実施の形態に係る画像処理装置1では、フォグを介して高輝度のオブジェクトを見た場合を示すフレーム画像は、光の散乱現象を考慮した画像になっており、輝度が高いオブジェクトほど（より一般的には、色強度が強いオブジェクトほど）視認されやすいように表現される。このような表現は、フレーム画像生成部43が、フレーム画像を構成する各画素について、フォグ適用前の画素色とフォグ色とを所定のブレンド率に基づいて混合して表示色を決定する際に、輝度が高い画素ほどフォグ色の影響度が低くなるように設定することによって実現する。
【００３４】
より具体的に説明する。オブジェクトに関するフレームデータを生成する場合、当該オブジェクトを示す形状モデルを二次元投影面（モニタ19の表示領域に対応するスクリーン）に透視投影する。また、例えば公知のＺバッファ法を用いて隠面消去処理を行うことで、仮想カメラに対してより近くに位置するオブジェクトにより隠される部分を消去する。更に、光源に関する情報に基づいてオブジェクト表面の輝度を決定するシェーディング処理や、シャドウイング処理（影付け）、及びテクスチャマッピングを行う。
【００３５】
ここで、隠面消去処理により、オブジェクトを構成する各ポリゴンにおいて表示されることとなった部分に対応する画素については、上記シェーディング処理、シャドウイング処理、及びテクスチャマッピングによって画素色が決定される。更に、Ｚバッファ法による隠面消去処理時に得られる深度値を用いて、この画素色に対してフォグ色を混合すると共に、当該画素の輝度に応じてフォグ色の影響度を変更することで、この画素の最終的な表示色を決定する。
【００３６】
この表示色の決定手順について、図４のフローチャートを参照して説明する。まず、Ｚバッファ法による隠面消去処理について概説しておく。Ｚバッファ法では、フレームバッファの全ての画素を背景色で初期化すると共に、Ｚバッファの全ての画素を最遠点（例えば、後方クリッピング面）で初期化する。次に、適宜選択したオブジェクトを構成するポリゴンを任意の順序で選択し、そのポリゴンを透視投影及び走査変換する。これによって判明するポリゴン内の部分に対応する各画素について、当該部分までの深度値（仮想カメラからの距離）を取得する。そして、この深度値がＺバッファに記憶されている対応画素の値より小さければ、Ｚバッファの対応画素の値を、取得した深度値に更新する。また、これと共に、当該画素に対応するポリゴン部分の色に基づき、以下で図４を参照して説明するようにして表示色を決定し、フレームバッファの対応画素の色をこの表示色に更新する。一方で、取得した奥行き値が、Ｚバッファに記憶されている対応画素の値より大きければ、この画素についてはＺバッファ及びフレームバッファの更新は行わない。
【００３７】
図４に示すように、各画素の表示色の決定処理では、表示対象となるオブジェクトにマッピングされるテクスチャデータから各画素の画素色を取得し（ステップS30）、予めゲームデータ30bに記憶されたフォグ色を取得する（ステップS31）。また、Ｚバッファを参照して各画素の深度値を取得する（ステップS32）。そして、この深度値に基づいて各画素に適用するフォグ混合率の決定（ステップS33）及び各画素の輝度（色強度）の決定（ステップS34）を行い、各画素に対する輝度混合率（色強度混合率）を決定する（ステップS35）。
【００３８】
ここで、「輝度」は本発明に係る色強度の一例であり、典型的には０〜１の範囲の数値データにより設定される。具体的には、輝度は、光源に関する情報に基づいてオブジェクト表面の輝度を決定する、既知のシェーディング処理により設定することができる。また、「輝度混合率」は本発明に係る色強度混合率の一例であり、各画素色に対する輝度の影響度（換言すれば、各画素に対するフォグ色の影響度）を指定するものであり、典型的には０〜１の範囲の数値データにより設定できる。この輝度混合率は、例えばシェーディング処理の結果により決定することができる。なお、フォグ混合率は、深度値が大きいほど高くなるように、これも０〜１の範囲の数値データとして予め設定されている。具体的には、仮想カメラからオブジェクトまでの距離が遠いほどフォグ色が高い割合で画素色に対して混合されるように、フォグ混合率は設定されている。また、フォグ色及びフォグ混合率は、一定値ではなく状況に応じて変化する情報として定義してもよく、そのようなフォグ色及びフォグ混合率は公知の技術によって取得（算出）することが可能である。
【００３９】
このようにして取得及び決定された画素色、フォグ色、フォグ混合率、輝度（色強度）、輝度混合率（色強度混合率）を用いて、下記の式（１）により、各画素の表示色を決定する（ステップS36）。
【数２】
2013146324.tif 000004
【００４０】
式（１）から分かるように、本実施の形態ではフォグが存在する仮想ゲーム空間の表示色を決定する際、単純に各画素に対して所定のフォグ混合率でフォグ色を混合するだけではなく、各画素の輝度（色強度）及び輝度混合率（色強度混合率）に応じた画素色を加算して表示色を決定する。例えば、輝度が十分に大きければ、「画素色」に乗算される値は「１」となるため、表示色は「画素色＋フォグ色×フォグ混合率」となり、元の画素色が強く表現される。このように、高輝度の部分は、低輝度の部分に比べてフォグの影響度が小さくなり、フォグの中でもユーザに視認されやすいように表示される。従って、光の散乱現象を擬似的に表現でき、フォグのかかった仮想ゲーム空間を仮想カメラで撮影したときのフレーム画像を、よりリアルなものとすることができる。
【００４１】
図５は、比較例を示すフレーム画像である。図５中の「フォグなし」と付記された上側の画像は、フォグがない状態の仮想ゲーム空間を表す基準フレーム画像100である。また、「フォグあり１（本発明使用前）」と付記された下側の画像は、単純に各画素に対して所定のフォグ混合率でフォグ色を混合して表示色を決定し、この表示色を用いて基準フレーム画像100と同じ情景を表現し直した、比較例に係るフレーム画像101である。
【００４２】
フォグのない基準フレーム画像100では、町中の仮想ゲーム空間50が表示されている。この仮想ゲーム空間50では、中央の奥へ続く路地があり、その左右及び突き当たりに建物が配置され、路地には奥側へ向かう人型のキャラクタが配置されている。また、突き当たりの建物の上方にある窓P1, P2から、比較的輝度の高い光が漏れでている様子が表現されている。また、その更に上方には、建物の屋根に設置されたアンテナP3が低輝度の色で表現されている。
【００４３】
これに対して比較例に係るフレーム画像101では、低輝度のアンテナP3はもとより、高輝度で表現された窓P1, P2もが、フォグに埋没して視認できない画像になっている。なお、各フレーム画像100, 101において、右下のドアP4から漏れ出ている高輝度の明かりは、フォグの影響を完全に除去すべく、本発明とは関連性のない別個の処理により表現をしたものである（図６中のフレーム画像100, 102についても同様）。
【００４４】
図６は、実施例を示すフレーム画像である。図６中の「フォグなし」と付記された上側の画像は、図５と同じフォグがない状態の基準フレーム画像100である。また、「フォグあり２（本発明使用後）」と付記された下側の画像は、各画素の輝度を考慮して式（１）を用いて決定した表示色を用い、基準フレーム画像100と同じ情景を表現し直した、本発明を適用した実施例に係るフレーム画像102である。なお、比較例に係るフレーム画像101と、実施例に係るフレーム画像102とは、フォグ色及びフォグ混合率を同一に設定している。
【００４５】
基準フレーム画像100と比較すると、実施例に係るフレーム画像102は、低輝度で表現されたアンテナP3はフォグに埋没して視認できないが、高輝度で表現された窓P1, P2は、フォグの影響が低減されることにより、ユーザが視認できる程度に表現された画像になっている。このように、本発明を適用した実施例に係るフレーム画像102では、輝度が高い画素ほどフォグ色の影響が低減されており、光の散乱現象が擬似的に表現され、フォグの存在する仮想ゲーム空間をよりリアルに表現できている。
【００４６】
なお、表示色の決定手順中のステップS36で適用する式（１）に換えて、下記の式（２）を適用して表示色を決定することとしてもよい。この場合であっても、輝度等の色強度の高い画素へのフォグの影響を低減でき、よりリアルに仮想ゲーム空間を表現することができる。
【数３】
2013146324.tif 000005
【００４７】
また、本実施の形態では隠面消去処理においてＺバッファ法を用いる場合について例示したが、これに限られず、例えばスキャンライン法など他のアルゴリズムを採用してもよい。何れの場合であっても、各画素の表示色を決定する際に、公知の手段を用いてフォグ色やフォグ混合率を取得した上で、例えば上記式（１）あるいは式（２）等を適用することにより、色強度の高い画素に対するフォグの影響度を相対的に低減して表示色を決定すればよい。
【００４８】
また、本実施の形態では「色強度」として輝度（カンデラ／平方メートル）を採用した場合を例示したが、これに限られない。例えば、ＲＧＢ各色の階調を示す値（８ビットであれば各色の０〜２５５の値）の合計に基づいて設定してもよい。要は、現実世界にて霧を通じて視認しやすい色ほど、高い値となるように色強度を定めるのが好ましい。また、上述した説明では深度値に基づいて各画素に適用するフォグ混合率を決定する例を示したが（図４のステップS33）、このように仮想カメラからの距離に応じてフォグ濃度を決定する態様に限られない。例えば、仮想ゲーム空間において仮想カメラと表示対象となるオブジェクトとの間のフォグ濃度が一様でない場合であっても、本発明を適用することが可能である。
【００４９】
また、本発明は、水中の仮想空間を表す画像、「かすみ」や「もや」がかかった仮想空間を表す画像において、ぼかしを表現する場合にも適用することができる。また、フォグの影響度を予め決定しておき、その影響度に応じて表示色を決定することも可能である。例えば、フォグの影響度が大きい領域と小さい領域とを予め設定しておけば、各領域に応じて表示色を決定することが可能である。更に、色強度に基づくフォグ色の影響度の調整は、画素単位で行う他、ポリゴン単位やオブジェクト単位で行うこととしてもよい。
【産業上の利用可能性】
【００５０】
本発明は、ハードウェアの負担増を抑制しつつ、霧のかかった仮想ゲーム空間を仮想カメラで撮影したときのフレーム画像のリアリティを高めることのできるコンピュータプログラム及び画像処理装置に適用することができる。
【符号の説明】
【００５１】
１        画像処理装置
３０ａ    ゲームプログラム
３０ｂ    ゲームデータ
４０      ゲーム空間生成部
４３      フレーム画像生成部
【図１】
2013146324.tif 000007
【図２】
2013146324.tif 000008
【図３】
2013146324.tif 000009
【図４】
2013146324.tif 000010
【図５】
2013146324.tif 000011
【図６】
2013146324.tif 000012