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