Ler em inglês

Partilhar via


Fórmulas de mapeamento de colisão (Direct3D 9)

O Direct3D aplica as seguintes fórmulas aos componentes DU e DV em cada pixel de mapa de relevo.

fórmulas de transformações de matriz de mapeamento de colisão

Nestas fórmulas, as variáveis DU e DV são retiradas diretamente de um pixel de mapa de colisão e transformadas por uma matriz 2x2 para produzir os valores delta de saída DU' e DV'. O sistema usa os valores de saída para modificar as coordenadas de textura que abordam o mapa de ambiente no próximo estágio de textura. Os coeficientes da matriz de transformação são definidos através dos estados de estágio de textura D3DTSS_BUMPENVMAT00, D3DTSS_BUMPENVMAT10, D3DTSS_BUMPENVMAT01 e D3DTSS_BUMPENVMAT11.

Além dos valores delta u e v, o sistema pode calcular um valor de luminância que usa para modular a cor do mapa do ambiente no próximo estágio de mistura, conforme mostrado na fórmula a seguir.

fórmula para a luminância de saída, calculada a partir do fator de escala e do deslocamento

Nesta fórmula, L' é a luminância de saída que está a ser calculada. A variável L é o valor de luminância retirado de um pixel do mapa de relevo, que é multiplicado pelo fator de escala, S, e ajustado pelo valor na variável O. Os estados de estágio de textura D3DTSS_BUMPENVLSCALE e D3DTSS_BUMPENVLOFFSET controlam os valores das variáveis S e O na fórmula. Esta fórmula só é aplicada quando a operação de mistura de textura para o estágio que contém o mapa de relevo está definida como D3DTOP_BUMPENVMAPLUMINANCE. Ao usar D3DTOP_BUMPENVMAP, o sistema usa um valor de 1,0 para L'.

Depois de calcular os valores delta de saída DU' e DV', o sistema adiciona-os às coordenadas de textura no próximo estágio de textura e modula a cor escolhida pela luminância para produzir a cor aplicada ao polígono.

Mapeamento de Relevo