Iluminação especular
A iluminação especular identifica os realces especulares brilhantes que ocorrem quando a luz atinge a superfície de um objeto e reflete de volta para a câmera. A iluminação especular é mais intensa do que a luz difusa e cai mais rapidamente na superfície do objeto. Leva mais tempo para calcular a iluminação especular do que a iluminação difusa, no entanto, a vantagem de usá-la é que ela adiciona detalhes significativos a uma superfície.
A modelagem da reflexão especular requer que o sistema saiba em que direção a luz está viajando e a direção do olho do espectador. O sistema usa uma versão simplificada do modelo de reflexão especular de Phong, que emprega um vetor intermediário para aproximar a intensidade da reflexão especular.
O estado de iluminação padrão não calcula realces especulares.
Equação de iluminação especular
A iluminação especular é descrita pela seguinte equação.
Iluminação especular = Cs * sum[Ls * (N · H)P * Atten * Spot]
As variáveis, seus tipos e seus intervalos são os seguintes:
Parâmetro | Valor padrão | Type | Descrição |
---|---|---|---|
Cs | (0,0,0,0) | Transparência vermelha, verde, azul e alfa (valores de ponto flutuante) | Cor especular. |
Sum | N/D | N/D | Soma do componente especular de cada luz. |
N | N/D | Vetor 3D (valores de ponto flutuante x, y e z) | Vértice normal. |
H | N/D | Vetor 3D (valores de ponto flutuante x, y e z) | Vetor intermediário. Veja a seção sobre o vetor intermediário. |
P | 0,0 | Ponto flutuante | Poder de reflexão especular. O intervalo é de 0 a +infinito |
É | (0,0,0,0) | Transparência vermelha, verde, azul e alfa (valores de ponto flutuante) | Cor especular clara. |
Atenção | N/D | Ponto flutuante | Valor de atenuação da luz. Consulte Atenuação e fator de holofote. |
Spot | N/D | Ponto flutuante | Fator de destaque. Consulte Atenuação e fator de holofote. |
O valor de Cs é:
- cor do vértice 1, se a origem do material especular for a cor difusa do vértice e a primeira cor do vértice for fornecida na declaração do vértice.
- cor do vértice 2, se a origem do material especular for a cor do vértice especular e a segunda cor do vértice for fornecida na declaração do vértice.
- cor especular material
Observação Se uma das opções de origem de material especular for usada e a cor do vértice não for fornecida, a cor especular do material será usada.
Os componentes especulares são fixados de 0 a 255, depois que todas as luzes são processadas e interpoladas separadamente.
O vetor intermediário
O vetor intermediário (H) existe a meio caminho entre dois vetores: o vetor de um vértice de objeto para a fonte de luz e o vetor de um vértice de objeto para a posição da câmera. O Direct3D fornece duas maneiras de calcular o vetor intermediário. Quando os realces especulares relativos à câmera estão ativados (em vez de realces especulares ortogonais), o sistema calcula o vetor intermediário usando a posição da câmera e a posição do vértice, juntamente com o vetor de direção da luz. A fórmula a seguir ilustra isso.
H = norma(norma(Cp - Vp) + Ldir)
Parâmetro | Valor padrão | Type | Descrição |
---|---|---|---|
Cp | N/D | Vetor 3D (valores de ponto flutuante x, y e z) | Posição da câmera. |
Vp | N/D | Vetor 3D (valores de ponto flutuante x, y e z) | Posição do vértice. |
Ldir | N/D | Vetor 3D (valores de ponto flutuante x, y e z) | Vetor de direção da posição do vértice para a posição da luz. |
Determinar o vetor intermediário dessa maneira pode ser computacionalmente intensivo. Como alternativa, o uso de realces especulares ortogonais (em vez de realces especulares relativos à câmera) instrui o sistema a agir como se o ponto de vista estivesse infinitamente distante no eixo z. Isso se reflete na fórmula a seguir.
H = norma((0,0,1) + Ldir)
Essa configuração é menos intensiva computacionalmente, mas muito menos precisa, portanto, é melhor usada por aplicativos que usam projeção ortogonal.
Exemplo
Neste exemplo, o objeto é colorido usando a cor clara especular da cena e uma cor especular de material.
De acordo com a equação, a cor resultante para os vértices do objeto é uma combinação da cor do material e da cor clara.
As duas ilustrações a seguir mostram a cor do material especular, que é cinza, e a cor da luz especular, que é branca.
O realce especular resultante é mostrado na ilustração a seguir.
A combinação do realce especular com a iluminação ambiente e difusa produz a ilustração a seguir. Com todos os três tipos de iluminação aplicados, isso se assemelha mais claramente a um objeto realista.
A iluminação especular é mais intensiva para calcular do que a iluminação difusa. É normalmente usado para fornecer pistas visuais sobre o material da superfície. O realce especular varia em tamanho e cor com o material da superfície.
Tópicos relacionados