(57)【要約】【課題】  逆光状態である場合のオブジェクトの質感をリアルに表現することが可能なプログラム、情報記憶媒体、及び画像生成システムを提供すること。【解決手段】  オブジェクト空間を所与の視点から見た画像を生成するためのプログラムであって、前記オブジェクト空間にオブジェクトと光源を配置するオブジェクト空間設定部と、第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対して設定された属性情報に応じて合成することによって、前記オブジェクトを構成するプリミティブの描画ピクセルの色を設定する描画色設定部としてコンピュータを機能させ、前記描画色設定部が、前記視点の向きと、前記光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて前記第２テクスチャの色の合成率が大きくなるように、前記前記第１テクスチャの色と前記第２テクスチャの色とを合成することを特徴とする。【選択図】図５
2010033297.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト空間を所与の視点から見た画像を生成するためのプログラムであって、
前記オブジェクト空間にオブジェクトと光源を配置するオブジェクト空間設定部と、
第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対して設定された属性情報に応じて合成することによって、前記オブジェクトを構成するプリミティブの描画ピクセルの色を設定する描画色設定部としてコンピュータを機能させ、
前記描画色設定部が、
前記視点の向きと、前記光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて前記第２テクスチャの色の合成率が大きくなるように、前記前記第１テクスチャの色と前記第２テクスチャの色とを合成することを特徴とするプログラム。
【請求項２】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項３】
オブジェクト空間を所与の視点から見た画像を生成するための画像生成システムであって、
前記オブジェクト空間にオブジェクトと光源を配置するオブジェクト空間設定部と、
第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対して設定された属性情報に応じて合成することによって、前記オブジェクトを構成するプリミティブの描画ピクセルの色を設定する描画色設定部とを含み、
前記描画色設定部が、
前記視点の向きと、前記光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて前記第２テクスチャの色の合成率が大きくなるように、前記前記第１テクスチャの色と前記第２テクスチャの色とを合成することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体、及び画像生成システムに関する。
【背景技術】
【０００２】
従来から、複数のポリゴンが設定されるオブジェクト空間（仮想的な３次元空間）内において、仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。
【０００３】
このような画像生成システムでは、オブジェクトの法線ベクトルと視線ベクトルとに基づいて、オブジェクトの後方にある光源からの光がオブジェクトのシルエット（輪郭）を透過して見えるシルエット色を求めるものが知られている（例えば、特許文献１）。
【特許文献１】特開２００７−２２６５７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の画像生成システムでは、仮想カメラから見てオブジェクトの後方に光源がある場合（逆光状態である場合）に、オブジェクトの輪郭部分以外の部分については質感が単調になってしまうといった問題点があった。
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、
逆光状態である場合のオブジェクトの質感をリアルに表現することが可能なプログラム、情報記憶媒体、及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００６】
（１）本発明は、オブジェクト空間を所与の視点から見た画像を生成するためのプログラムであって、
前記オブジェクト空間にオブジェクトと光源を配置するオブジェクト空間設定部と、
第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対して設定された属性情報に応じて合成することによって、前記オブジェクトを構成するプリミティブの描画ピクセルの色を設定する描画色設定部としてコンピュータを機能させ、
前記描画色設定部が、
前記視点の向きと、前記光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて前記第２テクスチャの色の合成率が大きくなるように、前記前記第１テクスチャの色と前記第２テクスチャの色とを合成することを特徴とする。
【０００７】
また本発明は上記各部を含む画像生成システムに関係する。また本発明はコンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関係する。
【０００８】
本発明によれば、逆光状態である場合のオブジェクトの質感をリアルに表現することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００１０】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００１１】
操作部１６０は、プレーヤがオブジェクト（プレーヤキャラクタ、移動体）の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【００１２】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。そして、本実施形態の記憶部１７０は、ワーク領域として使用される主記憶部１７２と、最終的な表示画像等が記憶される描画バッファ１７４と、オブジェクトのモデルデータが記憶されるオブジェクトデータ記憶部１７６と、各オブジェクトに対応付けられたテクスチャが記憶されるテクスチャ記憶部１７８と、オブジェクトの画像の生成処理時にＺ値が記憶されるＺバッファ１７９とを含む。なお、これらの一部を省略する構成としてもよい。
【００１３】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）を記憶することができる。
【００１４】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００１５】
通信部１９６は外部（例えば他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００１６】
なお、サーバが有する情報記憶媒体や記憶部に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体１８０や記憶部１７０に記憶してもよい。このようにプログラムやデータを受信して画像生成システムを機能させる場合も本発明の範囲内に含む。
【００１７】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００１８】
この処理部１００は記憶部１７０内の主記憶部１７２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００１９】
処理部１００は、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００２０】
オブジェクト空間設定部１１０は、キャラクタ、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）や光源をオブジェクト空間に配置設定する処理を行う。例えば、ワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義であり、例えば、ワールド座標系でのＸ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００２１】
移動・動作処理部１１２は、オブジェクト（キャラクタ、移動体オブジェクト等）の移動・動作演算（移動・動作シミュレーション）を行う。すなわち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）、物理法則などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させたりする処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００２２】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、ワールド座標系における仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（例えば、Ｘ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を制御する処理を行う。要するに、視点位置、視線方向、画角を制御する処理を行う。例えば、仮想カメラ制御部１１４は、仮想カメラを移動体オブジェクトの移動に追従させる制御を行うようにしてもよい。すなわち、仮想カメラによりオブジェクト（例えばキャラクタ、移動体オブジェクト）を後方から撮影するために、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００２３】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００２４】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換（カメラ座標変換）、クリッピング処理、射影変換（視点を基準とした透視変換、投影変換）、ビューポート変換（スクリーン座標変換）、光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。ジオメトリ処理後のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、オブジェクトデータ記憶部１７６に保存される。
【００２５】
そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ１７４（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００２６】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００２７】
そして描画部１２０は、オブジェクトを描画する際にテクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００２８】
テクスチャマッピングは、記憶部１７０のテクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点やピクセルに設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部１７８からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００２９】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７９（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７９に格納されるＺ値を参照する。そして参照されたＺバッファ１７９のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７９のＺ値を新たなＺ値に更新する。
【００３０】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。
【００３１】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００３２】
特に本実施形態の描画部１２０は、描画色設定部１２２を含む。描画色設定部１２２は、第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対して設定された属性情報に応じて合成することによって、前記オブジェクトを構成するプリミティブの描画ピクセルの色を設定する。
【００３３】
また描画色設定部１２２は、前記視点の向きと、前記光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて前記第２テクスチャの色の合成率が大きくなるように、前記前記第１テクスチャの色と前記第２テクスチャの色とを合成する。
【００３４】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００３５】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００３６】
２．本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【００３７】
図２は、本実施形態のテクスチャの一例を示す図である。本実施形態では、第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを、第３テクスチャＴＸ３を構成するテクセル（第２テクスチャＴＸ２を構成するテクセルに対応するテクセル）に対して設定された属性情報ＡＩに応じて合成することによって、オブジェクトを構成するプリミティブの描画ピクセルの色を設定する。ここで属性情報ＡＩには０．０から１．０までの値が設定され、第２テクスチャＴＸ２の色を合成するテクセルに対しては属性情報ＡＩ＝１．０が設定され、第２テクスチャＴＸ２の色を合成しないテクセルに対しては属性情報ＡＩ＝０．０が設定されている。
【００３８】
図２に示す第３テクスチャＴＸ３では、動物の耳の血管を表す領域のテクセルに対しては属性情報ＡＩ＝０．０が設定され、それ以外の領域のテクセルに対しては属性情報ＡＩ＝１．０が設定されている。なお、属性情報ＡＩは、第２テクスチャＴＸ２を構成するテクセルのα値として設定するようにしてもよい。
【００３９】
また本実施形態では、視点の向きと、光源の向きとに基づいて、逆光状態である場合には順光状態である場合に比べて第２テクスチャの色の合成率が大きくなるように、第１テクスチャの色と第２テクスチャの色とを合成する。
【００４０】
具体的には、図３（Ａ）、図３（Ｂ）に示すように、仮想カメラＶＣの視線ベクトルＶＶ（視点の向き）と光源ＳＬの光源ベクトルＬＶ（光源の向き）との内積（ＶＶ・ＬＶ）に基づきｃｏｓθ（θは、視線ベクトルＶＶと光源ベクトルＬＶのなす角度）を求めて、求めたｃｏｓθに基づき合成パラメータＳＰを求め、求めた合成パラメータＳＰに基づき第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを合成する。
【００４１】
ここで合成パラメータＳＰは、次式により求めることができる。
【００４２】
ＳＰ＝（１−ｃｏｓθ）／２            （１）
従って、図３（Ａ）に示すような仮想カメラの背後に光源がある順光状態の場合に、合成パラメータＳＰを求めると、視線ベクトルＶＶと光源ベクトルＬＶのなす角度θが０度になるため、ｃｏｓθ＝１となり、ＳＰ＝０（最小値）となる。一方図３（Ｂ）に示すような仮想カメラから見てオブジェクトＯＢの背後に光源がある逆光状態の場合に、合成パラメータＳＰを求めると、θが１８０度になるため、ｃｏｓθ＝−１となり、ＳＰ＝１（最大値）となる。
【００４３】
そして求めた合成パラメータＳＰと、第３テクスチャＴＸ３の属性情報ＡＩとに基づき、第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを合成して描画ピクセルの色を求める。ここで描画ピクセルの色ＰＣは、第１テクスチャＴＸ１の色をＴＣ１、第２テクスチャＴＸ２の色をＴＣ２とすると、次式により求めることができる。
【００４４】
ＰＣ＝ＴＣ１＋ＳＰ×ＡＩ×ＴＣ２            （２）
従って、仮想カメラと光源との位置関係が逆光状態に近づくほど、且つ属性情報ＡＩが１．０に近い領域ほど第２テクスチャＴＸ２の色の合成率が大きくなる。また、仮想カメラと光源との位置関係が順光状態に近づくほど、或いは属性情報ＡＩが０．０に近い領域ほど第２テクスチャＴＸ２の色の合成率が小さくなる。なお、式（２）は、加算合成の例であるが、第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを補間して合成するようにしてもよいし、乗算合成を行うようにしてもよい。
【００４５】
図４（Ａ）、図４（Ｂ）は、動物の耳（オブジェクトＯＢ）の内側の部分について、合成パラメータＳＰと、図２に示す第３テクスチャＴＸ３の属性情報ＡＩとに基づき、図２に示す第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを合成して描画ピクセルの色を求める処理を行った場合の仮想カメラから見える画像の一例である。
【００４６】
図４（Ａ）に示すように、順光状態の場合には、耳の内側の描画ピクセルの色は輝度が低くなっている。すなわち順光状態ではＳＰ＝０となるためＰＣ＝ＴＣ１となり、耳の内側の描画ピクセルの色は第１テクスチャＴＸ１の色となる。
【００４７】
また図４（Ｂ）に示すように、逆光状態の場合には、耳の内側の描画ピクセルのうち血管を表す領域にある描画ピクセルの色は輝度が低く、それ以外の描画ピクセルの色は輝度が高くなっている。すなわち逆光状態ではＳＰ＝１となるためＰＣ＝ＴＣ１＋ＡＩ×ＴＣ２となる。そして、属性情報ＡＩ＝０．０である領域（動物の耳の血管を表す領域）ではＰＣ＝ＴＣ１となるため、描画ピクセルの色は順光状態の場合と同様に第１テクスチャＴＸ１の色となり、属性情報ＡＩ＝１．０である領域ではＰＣ＝ＴＣ１＋ＴＣ２となるため、描画ピクセルの色は第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色を加算した色となる。
【００４８】
図４（Ｂ）に示す例では、あたかも耳の背後にある光源からの光が、耳の血管が通っていない部分（光を透過し易い部分）を透過し、耳の血管が通っている部分において吸収されることによって、耳の内側の当該部分が順光状態の場合と比べて明るくなっているかのような表現となっている。
【００４９】
このように本実施形態によれば、第１テクスチャの色と第２テクスチャの色とを、当該第２テクスチャを構成するテクセルに対応付けて設定された属性情報に応じて合成する処理を行うとともに、視線ベクトルと光源ベクトルとの内積に基づいて、逆光状態である場合には順光状態である場合に比べて第２テクスチャの色の合成率が大きくなるようにすることで、逆光状態である場合にオブジェクトの背後にある光源からの光があたかもオブジェクトの一部の領域を透過しているかのような表現を実現することができ、逆光状態である場合のオブジェクトの質感をリアルに表現することができる。
【００５０】
３．処理
次に、本実施形態の処理の一例について図５のフローチャートを用いて説明する。
【００５１】
まず、視線ベクトルＶＶと光源ベクトルＬＶとの内積に基づき合成パラメータＳＰを求める（ステップＳ１０）。
【００５２】
次に、第２テクスチャを構成するテクセルに対応付けて設定された属性情報ＡＩ（第３テクスチャを構成するテクセルに対して設定された属性情報ＡＩ）と、合成パラメータＳＰとに基づいて、第１テクスチャのテクセルの色と第２テクスチャのテクセルの色とを合成することによって、描画ピクセルの色を設定する（ステップＳ１２）。
【００５３】
４．変形例
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【００５４】
例えば、本実施形態では、通常のテクスチャマッピングにより第２テクスチャをオブジェクトにマッピングする場合について説明したが、投影テクスチャシャドウ（或いはライトマップ）の手法を用いて第２テクスチャをオブジェクトにマッピングするようにしてもよい。
【００５５】
この場合、図６に示すように、仮想カメラＶＣからみてオブジェクトＯＢの背後からオブジェクトＯＢに対して第２テクスチャＴＸ２を平行投影してマッピングすることにより、あたかも光源ＳＬからの光によって、仮想カメラＶＣからみてオブジェクトＯＢ（障子や傘などのスクリーン状のオブジェクト）の背後にある物体の影が、オブジェクトＯＢの手前側に映り込むような表現を行うことができる。
【００５６】
図７は、投影テクスチャシャドウの手法を用いる場合のテクスチャの一例を示す図である。ここでは、第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを、第３テクスチャＴＸ３を構成するテクセル（第２テクスチャＴＸ２を構成するテクセルに対応するテクセル）に対して設定された属性情報ＡＩに応じて合成することによって、オブジェクトＯＢを構成するプリミティブの描画ピクセルの色を設定する。なお、第２テクスチャＴＸ２については、投影テクスチャシャドウによりオブジェクトＯＢにマッピングされる。すなわち、オブジェクトＯＢのローカル座標系から第２テクスチャＴＸ２のテクスチャ座標系へ変換するための変換マトリクスに基づいて、オブジェクトＯＢの頂点毎に第２テクスチャＴＸ２のテクスチャ座標を求める演算を行う。
【００５７】
図７に示す第３テクスチャＴＸ３では、樹木の影を表す領域のテクセル（第２テクスチャＴＸ２の色を減算合成するテクセル）に対しては属性情報ＡＩ＝１．０が設定され、それ以外の領域のテクセル（第２テクスチャＴＸ２の色を減算合成しないテクセル）に対しては属性情報ＡＩ＝０．０が設定されている。
【００５８】
ここでオブジェクトＯＢの描画ピクセルの色ＰＣは、第１テクスチャＴＸ１の色をＴＣ１、第２テクスチャＴＸ２の色をＴＣ２、合成パラメータをＳＰとすると、次式により求めることができる。
【００５９】
ＰＣ＝ＴＣ１−ＳＰ×ＡＩ×ＴＣ２            （３）
従って、仮想カメラと光源との位置関係が逆光状態に近づくほど、且つ属性情報ＡＩが１．０に近い領域ほど第２テクスチャＴＸ２の色の減算合成率が大きくなる。また、仮想カメラと光源との位置関係が順光状態に近づくほど、或いは属性情報ＡＩが０．０に近い領域ほど第２テクスチャＴＸ２の色の減算合成率が小さくなる。
【００６０】
図８（Ａ）、図８（Ｂ）は、合成パラメータＳＰと、図７に示す第３テクスチャＴＸ３の属性情報ＡＩとに基づき、図７に示す第１テクスチャＴＸ１の色と第２テクスチャＴＸ２の色とを合成してオブジェクトＯＢの描画ピクセルの色を求める処理を行った場合の仮想カメラから見える画像の一例である。図８（Ａ）、図８（Ｂ）に示すように、第２テクスチャＴＸ２は投影テクスチャシャドウにより、オブジェクトＯＢの一部にマッピングされている。
【００６１】
図８（Ａ）に示すように、順光状態の場合には、オブジェクトＯＢの第２テクスチャＴＸ２がマッピングされた領域の描画ピクセルの色は、第１テクスチャのみがマッピングされた領域の描画ピクセルの色と同様の輝度となっている。すなわち順光状態ではＳＰ＝０となるためＰＣ＝ＴＣ１となり、描画ピクセルの色は第１テクスチャＴＸ１の色となる。
【００６２】
また図８（Ｂ）に示すように、逆光状態の場合には、第２テクスチャＴＸ２がマッピングされた領域のうち樹木の影を表す領域にある描画ピクセルの色は輝度が低く、それ以外の描画ピクセルの色は第１テクスチャのみがマッピングされた領域の描画ピクセルの色と同様の輝度となっている。すなわち逆光状態ではＳＰ＝１となるためＰＣ＝ＴＣ１−ＡＩ×ＴＣ２となる。そして、属性情報ＡＩ＝０．０である領域（樹木の影を表す領域以外の領域）ではＰＣ＝ＴＣ１となるため、描画ピクセルの色は順光状態の場合と同様に第１テクスチャＴＸ１の色となり、属性情報ＡＩ＝１．０である領域（樹木の影を表す領域）ではＰＣ＝ＴＣ１−ＴＣ２となるため、描画ピクセルの色は第１テクスチャＴＸ１の色から第２テクスチャＴＸ２の色を減算した色となる。
【００６３】
図８に（Ｂ）示す例では、あたかもスクリーン状のオブジェクトＯＢの背後にある光源からの光が、同じくオブジェクトＯＢの背後にある樹木の影によって遮られることによって、当該樹木の影がオブジェクトＯＢの手前側の面に映り込んでいるような表現となっている。
【図面の簡単な説明】
【００６４】
【図１】本実施形態の画像生成システムの機能ブロックの一例を示す図。
【図２】本実施形態の手法について説明するための図。
【図３】本実施形態の手法について説明するための図。
【図４】本実施形態の手法について説明するための図。
【図５】本実施形態の処理の一例を示すフローチャート図。
【図６】変形例について説明するための図。
【図７】変形例について説明するための図。
【図８】変形例について説明するための図。
【符号の説明】
【００６５】
１００  処理部、１１０  オブジェクト空間設定部、１１２  移動・動作処理部、１１４  仮想カメラ制御部、１２０  描画部、１２２  描画色設定部、１６０  操作部、１７０  記憶部、１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、１９６  通信部
【図１】
2010033297.tif 000003
【図３】
2010033297.tif 000004
【図５】
2010033297.tif 000005
【図６】
2010033297.tif 000006
【図２】
2010033297.tif 000007
【図４】
2010033297.tif 000008
【図７】
2010033297.tif 000009
【図８】
2010033297.tif 000010