Condividi tramite


Formule di mapping d'urto (Direct3D 9)

Direct3D applica le formule seguenti ai componenti DU e DV in ogni pixel della mappa d'urto.

formule di trasformazioni della matrice di mapping d'urto

In queste formule, le variabili DU e DV vengono ricavate direttamente da un pixel della mappa d'urto e trasformate da una matrice 2x2 per produrre i valori differenziali di output DU' e DV'. Il sistema usa i valori di output per modificare le coordinate della trama che puntano alla mappa dell'ambiente nella fase di trama successiva. I coefficienti della matrice di trasformazione vengono impostati tramite gli stati di D3DTSS_BUMPENVMAT00, D3DTSS_BUMPENVMAT10, D3DTSS_BUMPENVMAT01 e D3DTSS_BUMPENVMAT11 fase della trama.

Oltre ai valori delta you e v, il sistema può calcolare un valore di luminanza usato per modulare il colore della mappa dell'ambiente nella fase successiva di fusione, come illustrato nella formula seguente.

formula per la luminanza di output, calcolata dal fattore di scala e dall'offset

In questa formula, L' è la dominanza di output calcolata. La variabile L è il valore di luminanza ottenuto da un pixel della mappa d'urto, moltiplicato per il fattore di ridimensionamento, S e offset per il valore nella variabile O. Gli stati D3DTSS_BUMPENVLSCALE e D3DTSS_BUMPENVLOFFSET fase trama controllano i valori per le variabili S e O nella formula. Questa formula viene applicata solo quando l'operazione di fusione delle trame per la fase che contiene la mappa d'urto è impostata su D3DTOP_BUMPENVMAPLUMINANCE. Quando si usa D3DTOP_BUMPENVMAP, il sistema usa un valore pari a 1,0 per L'.

Dopo aver calcolato i valori differenziali di output DU' e DV', il sistema li aggiunge alle coordinate della trama nella fase successiva della trama e modula il colore scelto dalla luminanza per produrre il colore applicato al poligono.

Mapping dell'urto