Microsoft DirectX 8.0 (Visual Basic)

カラー ライティング マップ

一般に、カラー ライティング マップを使用すれば、3D シーンをよりリアルにレンダリングできる。カラー ライティング マップは、ライティング情報としてライト マップのRGB データを使用する。

次の Microsoft® Visual Basic® コードは、RGB カラー データを使用したライト マッピングを示している。

' この例では、D3DDevice は Direct3DDevice8 オブジェクトへの有効な参照であり、
' texLightMap は RGB ライト マップ データを含む 3DBaseTexture8 オブジェクトへの
' 有効な参照であると仮定している。
 
' ライト マップ テクスチャを最初のテクスチャとして設定する。
D3DDevice.SetTexture 0, texLightMap

D3DDevice.SetTextureStageState 0, D3DTSS_COLOROP, D3DTOP_MODULATE
D3DDevice.SetTextureStageState 0, D3DTSS_COLORARG1, D3DTA_TEXTURE
D3DDevice.SetTextureStageState 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE

この例では、ライト マップを最初のテクスチャとして設定している。その次に、最初のブレンディング ステージのステートを設定して、入力テクスチャ データを乗算している。また、最初のテクスチャとプリミティブのカレント カラーを乗算処理用の引数として使用している。