Qual é a diferença entre as coordenadas de textura “Gerada” e “Normal”?
Não consigo entender a partir da documentação a diferença no nó Coordenada de Textura (no Shader) entre Gerado e Normal , e até mesmo a finalidade do próprio nó Coordenada de Textura , que tenho como o primeiro nó.
Respostas
Pode ajudar visualizá-lo desta forma:
Quando renderizamos uma cena, para cada pixel da câmera projetamos um raio, e se fizermos contato com a superfície de um objeto, perguntamos "Qual é a cor que deve ser informada para este pixel dadas as propriedades do material, iluminação, oclusão etc? "
Isso é bastante simples quando o material é de cor sólida, mas e os materiais que variam?
Um material procedimental pode ser pensado como um "campo" no sentido físico, ele existe e tem valor em cada posição em sua cena. Quando você mapeia esta textura para um objeto e olha para ela na janela de exibição, você está exibindo a seção transversal deste campo que coincide com a superfície do seu objeto.
O nó Coordenadas de textura apenas define o espaço de coordenadas X, Y, Z usado para mapear a textura. As coordenadas do objeto, por exemplo, usam a configuração de escala do Blender e definem a origem do objeto como 0,0,0. As coordenadas geradas usam a caixa delimitadora do objeto como o espaço de coordenadas em um intervalo de 0,0,0 a 1,1,1.
As coordenadas normais são um pouco estranhas. Meu entendimento atual é que eles se baseiam menos na posição e mais na rotação de cada face individual (mais especificamente na direção normal). Talvez alguém expanda como isso pode ser útil para você, meu conhecimento é limitado neste caso.
Apenas para expandir um pouco a excelente resposta de Allen Simpson :
As coordenadas geradas retornam a localização do ponto de sombreamento atualmente avaliado, digamos, P , calculado no espaço de textura 'Gerado', que, qualquer que seja o tamanho do objeto sombreado, mede 0-1 ao longo dos lados de sua caixa delimitadora, com seu origem no mínimo. A caixa delimitadora é paralela aos eixos locais do objeto (que podem estar inclinados para a malha, se você girar a malha no Modo de Edição).
(Este é um padrão; o espaço 'Gerado' na verdade pode ser escalado e deslocado no painel Texture Space da guia Data do objeto .. mas eu acho que isso é um pouco legado?)
Duas das saídas do nó Coordenadas de textura , Normal e Reflexão , não retornam a localização de P ; eles retornam direções de P : locais na unidade esfera centrada em P .
Normal no nó Coordenadas de textura retorna o vetor de P , na direção da normal interpolada (após suavização) da superfície, até a ponta da seta amarela, com 1 unidade do Blender de comprimento. É medido no espaço do objeto: seus componentes X, Y e Z são paralelos aos componentes X, Y e Z do objeto.
Normal no nó Geometria retorna a mesma coisa, mas no Espaço Mundial. Os Reflected retornos de saída na direcção do raio de entrada actualmente avaliadas, para a frente, depois de reflexão a partir da superfície em P . Também é medido ao longo de eixos alinhados com o Mundo.