色付きのライト マップを使用する場合、通常、アプリケーションは 3D シーンをより現実的にレンダリングします。 色付きのライト マップでは、ライト マップ内の RGB データを使用して照明情報を取得します。
次の C++ コード例は、RGB カラー データを使用したライト マッピングを示しています。
// This example assumes that d3dDevice is a valid pointer to an
// IDirect3DDevice9 interface and that lptexLightMap is a valid
// pointer to a texture that contains RGB light map data.
// Set the light map texture as the first texture.
d3dDevice->SetTexture(0, lptexLightMap);
d3dDevice->SetTextureStageState( 0,D3DTSS_COLOROP, D3DTOP_MODULATE );
d3dDevice->SetTextureStageState( 0,D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0,D3DTSS_COLORARG2, D3DTA_DIFFUSE );
次の使用例は、ライト マップを最初のテクスチャとして設定します。 次に、最初のブレンド ステージの状態を設定して、受信テクスチャ データを調整します。 モジュレート操作の引数として、プリミティブの最初のテクスチャと現在の色が使用されます。
関連トピック
-
テクスチャ を使用したライト マッピングの