Condividi tramite


Mappe delle luci dei colori (Direct3D 9)

L'applicazione esegue in genere il rendering delle scene 3D in modo più realistico se usa mappe chiare colorate. Una mappa chiara colorata usa i dati RGB nella mappa della luce per le informazioni sull'illuminazione.

L'esempio di codice C++ seguente illustra il mapping della luce con i dati dei colori 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 );

In questo esempio la mappa della luce viene impostata come prima trama. Imposta quindi lo stato della prima fase di fusione per modulare i dati della trama in ingresso. Usa la prima trama e il colore corrente della primitiva come argomenti per l'operazione di modulare.

Mapping delle luci con trame