Observe a maneira como a principal fonte de luz em cada imagem se reflete no chão, em função da distância entre a fonte de luz e o visualizador (?).
Este é um mapa especular (esbarrado)? O efeito é visto em todo o World of Warcraft; Lembro-me especificamente disso na neve em Dun Morogh e nas margens do lago Darrowmere. É necessário olhar diretamente para o sol. O efeito também é comum na superfície da água no RL e no CG. Especificamente, quero criar o efeito em que o reflexo é mais intenso na superfície do solo, mais próximo da fonte de luz, e cai quando se aproxima do espectador.
shaders
lighting
terrain-rendering
Engenheiro
fonte
fonte
Respostas:
Eu imagino que se eu fosse construir um sombreador há certos fenômenos com os quais começarei.
Primeiro, a luz do sol é direcional, o que significa que não tem posição nem atenuação.
Segundo, o componente difuso é simplesmente calculado usando um produto de ponto entre a direção do sol e as normais da superfície, adicionando mapeamento normal pode adicionar detalhes.
A parte complicada é modelar o componente especular direcional do sol. Então, para obter um efeito semelhante, eu o dividiria em problemas menores:
Ax, Ay
na equação de Wards a seguir.Onde:
X,Y
vetores, especialmente que o espaço tangente é tão comum em gráficos de computador que pode ser calculado em qualquer mecanismo (geralmente calculado com base em cordas de textura).Observe na imagem como a iluminação especular é direcional, ao contrário da luz especular comum de Phong. Aqui está um artigo sobre o modelo de Ward e como obter efeitos diferentes. EDIT Mais informações sobre a adequação do BRDF em termos de redução da intensidade da luz mais próxima do visualizador, podem ser encontradas aqui .
Finalmente, outros dois pontos (opcionais) que eu acho que poderiam adicionar à imagem final,
fonte
A reflexão em si é apenas a reflexão especular que você obtém como saída das funções do seu modelo de iluminação específico.
Existem muitos modelos diferentes de iluminação com níveis variados de complexidade que produzirão uma forma de reflexão semelhante a essa, mas uma aparência semelhante a essa já pode ser alcançada com um modelo simples de iluminação blinn-phong de ossos desencapados , que é (agora) provavelmente o mais modelo básico de iluminação usado por motores gráficos e, provavelmente, também usado por World of Warcraft.
Não será fisicamente correto e completamente igual às suas imagens, mas será muito parecido . O exemplo de Concept3D do modelo Ward é mais fisicamente correto e funciona para tipos de superfície mais complexos (ou seja, materiais onde as saliências microscópicas em suas superfícies não são uniformemente distribuídas, mas têm distribuições de probabilidade diferentes), mas não conheço exemplos concretos de renderizadores em tempo real que o utilizam, devido a baixos ganhos em termos de qualidade / desempenho.
Na prática, esses tipos de reflexões nas superfícies são complementadas por texturas adicionais especulares / brilhantes e normais, que modificam o brilho / aspereza de uma superfície e a direção das normais da superfície, respectivamente, que são entradas para as equações de iluminação de modelos de iluminação típicos. Isso é feito porque, no mundo real, as propriedades físicas da superfície com mais freqüência (exceto talvez algo como plástico ou espelho) não permanecem as mesmas em toda a superfície, mas podem variar muito de pixel para pixel.
fonte
Mapeamento de relevo especular (mapeamento normal) ou paralaxe.
fonte