Expressões de Materiais de Utilitário são nós que podem afetar o material de várias formas diferentes das que alguém pode estar acostumado. Por exemplo, o nó GIReplace substituirá a cor de reflexo indireto de um objeto por um determinado valor que você definir, enquanto o nó "Linear Interpolate" ajudará a mesclar entre duas texturas com base em uma entrada alfa. Na página a seguir, você encontrará descrições detalhadas de todas as expressões de utilitário disponíveis no Editor de Material.
AntialiasedTextureMask
A expressão AntialiasedTextureMask permite criar um material usando uma máscara de transição suave (anti-serrilhada). A máscara pode ser usada para mesclar duas propriedades de material complexas ou para o fade-out de um material alfa mesclado (funciona bem com "SoftMasked"). Especifique uma textura com a máscara especificada em um canal (vermelho, verde, azul ou alfa), defina o canal usado na expressão e especifique o valor de comparação. Presumindo que o canal armazena um valor de escala de cinza no intervalo de "0 = preto" a "1 = branco", a função de comparação define se a máscara resultante deve ser 0 ou 1. Essa expressão é um parâmetro, permitindo que a propriedade Textura seja substituída por MaterialInstances filhas.
| Item | Descrição |
|---|---|
| Propriedades | |
Limite | Especifica o valor usado como ponto de corte na cobertura de pixels. Valores de cobertura de pixels menor que este valor tornam-se preto; valores maiores, tornam-se branco. |
Canal | Especifica o canal da textura a ser usado como máscara. |
Textura | Especifica a textura de máscara a ser usada. |
| Entradas | |
UV | Aceita as coordenadas de textura para aplicar à máscara de textura. |
Pseudo-código:
Result = 1
if TextureLookup < Threshold then Result = 0A implementação em si é um pouco mais complicada, pois tenta retornar valores entre 0 e 1, dependendo da cobertura real de pixel, para evitar serrilhado.
Exemplo (esta pequena textura de 128x128, descompactada para apresentar a melhor qualidade):
Foi usada como uma textura normal (superior esquerda) e usada com a expressão de material descrita (canto inferior direito):
A técnica funciona melhor em ampliações e com conteúdo de entrada desfocado. A compressão afeta muito a qualidade, então tente usar texturas não compactadas de baixa resolução.
BlackBody
A expressão BlackBody simula os efeitos da radiação de corpo negro dentro do seu Material. O usuário define uma temperatura (em Kelvin) e a cor e a intensidade resultantes podem ser usadas para orientar a cor de base e o valor emissivo para obter um resultado fisicamente preciso.
BumpOffset
BumpOffset é o termo da Unreal Engine 4 para o que é comumente conhecido como 'Parallax Mapping'. A expressão "Bump Offset" permite que um material dê a ilusão de profundidade sem a necessidade de geometria adicional. Os materiais de BumpOffset usam um mapa de altura em escala de cinza para fornecer informações de profundidade. Quanto mais brilhante o valor no mapa de alturas, mais "estouro" o material terá; essas áreas apresentarão paralaxe (deslocamento) conforme a câmera se mover pela superfície. Áreas mais escuras no mapa de altura estão "mais distantes" e mudarão menos.
| Item | Descrição |
|---|---|
| Propriedades | |
HeightRatio | Multiplicador para a profundidade obtida do mapa de altura. Quanto maior o valor, mais extrema será a profundidade. Faixa de valores típica varia de 0.02 a 0.1. |
ReferencePlane | Especifica a altura aproximada no espaço da textura para aplicar o efeito. Um valor de 0 parecerá distorcer completamente a textura da superfície, enquanto um valor de 0.5 (padrão) significa que parte da superfície se destacará, enquanto algumas áreas ficarão afundadas. |
| Entradas | |
Coordinate | Aceita coordenadas de textura de base para serem modificadas pela expressão. |
Height | Recebe a textura (ou um valor) que será usada como o mapa de altura. |
HeightRatioInput | Multiplicador para a profundidade obtida do mapa de altura. Quanto maior o valor, mais extrema será a profundidade. Faixa de valores típica varia de 0.02 a 0.1. Se usado, essa entrada substitui qualquer valor na propriedade "Height Ratio" (Proporção de altura). |
ConstantBiasScale
A expressão ConstantBiasScale usa um valor de entrada, adiciona um valor de tendência a ele e, em seguida, o multiplica por um fator de dimensionamento gerando o resultado. Então, por exemplo, para converter os dados de entrada de [-1.1] para [0.1] você usaria uma tendência de 1.0 e uma escala de 0.5.
| Propriedades | Descrição |
|---|---|
Bias | Especifica o valor a ser adicionado à entrada. |
Escala | Especifica o multiplicador para o resultado com tendência. |
DDX
A expressão DDX expõe o cálculo da derivada de DDX, uma funcionalidade de hardware de GPU usada no cálculo do shader de pixels.
DDY
A expressão DDY exporta o cálculo da derivada de DDY, uma funcionalidade de hardware de GPU usada no cálculo do shader de pixels.
DepthFade
A expressão DepthFade é usada para ocultar costuras disformes que ocorrem quando objetos translúcidos se cruzam com objetos opacos.
| Item | Descrição |
|---|---|
| Propriedades | |
Distância de Esmaecimento | Distância do espaço do mundo sobre a qual o esmaecimento deve ocorrer. Usada se a entrada "FadeDistance" estiver desconectada. |
| Entradas | |
Opacity | Aceita a opacidade existente do objeto antes do esmaecimento de profundidade. |
FadeDistance | Distância do espaço do mundo sobre a qual o esmaecimento deve ocorrer. |
A rede de materiais para este exemplo é mostrada abaixo.
DepthOfFieldFunction
A expressão DepthOfFieldFunction foi criada para dar controle aos artistas sobre o que acontece com um Material quando ele está sendo desfocado pela Profundidade de Campo. Ela gera um valor entre 0 e 1, de forma que 0 representa "em foco" e 1, "completamente desfocado". É útil para interpolar entre as versões nítida e desfocada de uma textura, por exemplo. A entrada "Depth" (Profundidade) permite que o resultado existente dos cálculos da profundidade de campo da cena seja substituído por outros cálculos.
Dessaturação
A expressão Desaturation dessatura sua entrada ou converte as cores de sua entrada em tons de cinza, de acordo com uma determinada porcentagem.
| Item | Descrição |
|---|---|
| Propriedades | |
Fatores de luminância | Especifica o valor que cada canal contribui para a cor dessaturada. É isso que controla que o verde é mais claro que o vermelho, que é mais claro que o azul quando dessaturado. |
| Entradas | |
Fração | Especifica a quantidade de dessaturação a ser aplicada à entrada. A porcentagem pode variar de 0.0 (cor original completa, sem dessaturação) a 1.0 (totalmente dessaturado). |
Programadores: defina a cor dessaturada D, a cor de entrada I e o fator de luminância L. O resultado será O = (1 - Percent)*( D.dot( I )) + Percent * I.
Distância
A expressão Distance calcula a distância euclidiana entre dois pontos, duas cores, duas posições ou dois vetores e gera o valor resultante. Isso funciona em um, dois, três e quatro vetores de componente, mas ambas as entradas para a expressão devem ter o mesmo número de canais.
| Item | Descrição |
|---|---|
| Entradas | |
A | Recebe um valor ou vetor de qualquer comprimento. |
B | Recebe um valor ou vetor de qualquer comprimento. |
Observe como a cor muda conforme a distância da câmera aumenta.
Pseudo-código:
Result = length (A - B)Código HLSL de baixo nível:
float Result = sqrt (dot (A-B, A-B))DistanceFieldGradient
O nó de expressão de material DistanceFieldGradient, quando normalizado, gera a direção X,Y,Z com a qual um objeto se moveria no campo de distância. Tornando o nó de expressão de material "DistanceFieldGradient" adequada para materiais que precisam simular o fluxo de líquidos.
A opção Gerar Campos de Distância de Malha deve estar habilitada nas Configurações do Projeto, em Renderização, para que essa expressão funcione corretamente.
| Item | Descrição |
|---|---|
Posição | O padrão é a posição atual no mundo se nada for incluído. |
Aqui está um exemplo de como usar a Expressão de Material DistanceFieldGradient nos seus Materiais. No exemplo abaixo, certifique-se de observar que "DistanceFieldGradient" foi primeiro normalizado e depois incluído em um nó "Mask Channel". O motivo para isso é que sem normalizar o "DistanceFieldGradient" primeiro, você não poderá obter dados direcionais. "Mask Channel Parameter" foi adicionado permitindo uma alternância de canais RGB mais fácil na instância de material.
Aqui está um exemplo de "DistanceFieldGradient" em ação. A imagem abaixo mostra quais dados o "DistanceFieldGradient" usará quando os vários RGB estiverem habilitados.
| Number | Descrição |
|---|---|
1 | Habilitar o canal R e desabilitar todos os outros canais. |
2 | Habilitar o canal G e desabilitar todos os outros canais. |
3 | Habilitar o canal B e desabilitar todos os outros canais. |
DistanceToNearestSurface
O nó de expressão de material DistanceToNearestSurface permite que os materiais obtenham amostras de qualquer ponto nos níveis do Campo de Distância Global. Este material de expressão funciona gerando a distância assinada em unidades de espaço do mundo, do campo de distância até os oclusores mais próximos na cena.
A opção Gerar Campos de Distância de Malha deve estar habilitada nas Configurações do Projeto, em Renderização, para que essa expressão funcione corretamente.
| Item | Descrição |
|---|---|
Posição | O padrão é a posição atual no mundo se nada for incluído. |
Aqui está um exemplo da Expressão de Material DistanceToNearestSurface em ação.
Neste exemplo, "Distance To Nearest Surface" foi incluído na entrada "Opacity" (Opacidade) em um material, e esse material foi aplicado a um plano a uma malha estática que foi colocado logo acima do piso do nível. O que Distance To Nearest Surface faz é dizer ao material para colorir apenas as áreas vermelhas onde o plano da malha estática começará a se interseccionar com outra malhas estáticas colocadas na cena.
FeatureLevelSwitch
O nó FeatureLevelSwitch permite que você crie materiais simplificados para dispositivos de menor potência.
Exemplo de uso: você pode ter um material com 10 texturas sobrepostas e matemática complexa, mas apenas uma única textura estática para dispositivos móveis (nível de funcionalidade ES2).
| Entradas | Descrição |
|---|---|
Padrão | O nível de funcionalidade padrão. |
ES2 | O nível de funcionalidade definido pelas capacidades principais do OpenGL ES2. |
ES3.1 | O nível de funcionalidade definido pelas capacidades dos dispositivos de nível Metal. |
SM4 | O nível de funcionalidade padrão pelas capacidades principais do modelo 4 do Shader DX10. |
SM5 | O nível de funcionalidade padrão pelas capacidades principais do modelo 5 do Shader DX11. |
Fresnel
A expressão Fresnel calcula um enfraquecimento com base no produto escalar da superfície da normal e da direção para a câmera. Quando a superfície da normal aponta diretamente para a câmera, um valor de 0 é o resultado. Quando a superfície da normal é perpendicular à câmera, um valor de 1 é o resultado. O resultado é fixado em [0,1] para que você não tenha nenhuma cor negativa no centro.
| Item | Descrição |
|---|---|
| Propriedades | |
Expoente | Especifica a rapidez com que o valor de saída diminui. Valores maiores significam enfraquecimento mais firme ou mais rápido. |
Fração de Reflexão de Base | Especifica a fração do reflexo especular na qual a superfície é visualizada de frente. Um valor de 1 desabilita efetivamente o efeito "Fresnel". |
| Entradas | |
ExponentIn | Especifica a rapidez com que o valor de saída diminui. Valores maiores significam enfraquecimento mais firme ou mais rápido. Se usado, o valor sempre substituirá o valor da propriedade "Exponent" (Expoente). |
Fração de Reflexão de Base | Especifica a fração do reflexo especular na qual a superfície é visualizada de frente. Um valor de 1 desabilita efetivamente o efeito "Fresnel". Se usado, o valor sempre substituirá o valor da propriedade "Exponent" (Expoente). |
Normal | Aceita um valor vetorial de três canais que representa a normal da superfície, no espaço do mundo. Para ver os resultados de um mapa de normais aplicado à superfície do objeto Fresnel, conecte o mapa de normais à entrada da normal do material e, em seguida, conecte uma expressão PixelNormalWS a esta entrada no Fresnel. Se nenhuma normal for especificada, a normal da tangente da malha será usada. |
GIReplace
A GIReplace permite que artistas especifiquem uma cadeia de expressão diferente, geralmente mais simples, quando o material estiver sendo usado para IG.
Exemplo de uso: IG estático de Lightmass e IG dinâmico de LPV a usam.
| Entradas | Descrição |
|---|---|
Padrão | A IG padrão. |
StaticIndirect | Usado para iluminação indireta incorporada. |
DynamicIndirect | Usado para iluminação indireta dinâmica. |
LightmassReplace
A expressão LightmassReplace simplesmente passa pela entrada Realtime ao compilar o material para fins de renderização de normal e passa pela entrada Lightmass ao exportar o material para o Lightmass para obter iluminação global. Isso é útil para solução alternativa de expressões de material que a versão exportada não pode gerenciar corretamente, por exemplo, "WorldPosition".
| Entradas | Descrição |
|---|---|
Tempo real | Aceita os valores para passar para a renderização de normal. |
Lightmass | Aceita os valores pelos quais passar ao exportar o material para o Lightmass. |
LinearInterpolate
A expressão LinearInterpolate mescla entre dois valores de entrada com base em um terceiro valor de entrada usado como uma máscara. Pode ser considerada uma máscara para definir transições entre duas texturas, como uma máscara de camada no Photoshop. A intensidade do alfa de máscara determina a proporção de cor a ser obtida dos dois valores de entrada. Se o alfa for 0.0, a primeira entrada será usada. Se o alfa for 1.0, a segunda entrada será usada. Se o alfa estiver entre 0.0 e 1.0, o resultado é uma mesclagem entre as duas entradas. Lembre-se de que a mesclagem acontece por canal. Então, se o alfa for uma cor RGB, o valor do canal vermelho do alfa definirá a mesclagem entre os canais vermelho de A e B independentemente do canal verde do alfa, o que definirá a mesclagem entre os canais verdes de A e B.
| Item | Descrição |
|---|---|
| Propriedades | |
A constante | O valor mapeado para 0,0. Usado apenas se a entrada A estiver desconectada. |
B constante | O valor mapeado para 1,0. Usado apenas se a entrada B estiver desconectada. |
Alfa constante | Recebe o valor a ser usado como o alfa da máscara. Usado apenas se a entrada do alfa estiver desconectada. |
| Entradas | |
A | Recebe os valores mapeados para 0,0. |
B | Recebe os valores mapeados para 1,0. |
Alfa | Recebe o valor a ser usado como o alfa da máscara. |
Programadores: LinearInterpolate faz uma lerp por canal entre A e B com base no valor paramétrico do alfa.
Ruído
A expressão Noise cria um campo de ruído procedural, dando a você controles sobre como ele é gerado.
| Item | Descrição |
|---|---|
| Propriedades | |
Escala | Altera o tamanho geral das células de ruído. Números mais baixos tornam o ruído maior. |
Qualidade | Uma configuração de aparência/desempenho. Valores mais baixos deixa mais rápido, mas pode ter uma aparência pior, valores mais alto deixa mais lento, mas pode ter uma aparência melhor. |
Função |
|
Turbulência | Com a opção Turbulência ativada, cada oitava de ruído adicionará apenas valores absolutos ao resultado. Altera as características visuais do elemento e pode obter ótimas formas semelhantes a cumes de montanhas agudos |
Níveis | Quantos níveis diferentes de ruído em diferentes escalas combinar, multiplica o custo computacional pelo número de níveis. |
Saída Mínima | A saída de menor valor pelo cálculo de ruído. |
Saída Máxima | O valor mais alto produzido pelo cálculo de ruído. |
Escala de Nível | A escala de nível está sempre ativa e determina o quanto a escala muda para cada nova oitava. |
Ladrilhos | Para a função de ruído que o suporta, permite que o ruído seja incluído em ladrilhos. Mais custoso, mas útil ao incorporar ruído em uma textura de agrupamento sem interrupções. |
Repetir Tamanho | Durante o ladrilhamento, com que frequência o ruído deve se repetir. |
| Entradas | |
Posição | Permite que o tamanho da textura seja ajustado por meio de um vetor 3D. |
FilterWidth | No efeito, controla quanto desfoque será aplicado à textura do ruído. |
Previous Frame Switch
A Expressão de Material Previous Frame Switch auxilia na implementação de animações de vértice complexas em Materiais, fornecendo uma forma de gerar vetores de movimento corretos que funcionam corretamente com Antisserrilhamento Temporal e Desfoque de Movimento.
Os materiais que são apenas uma função de tempo já funcionam sem modificação; porém, não podem levar em conta outras variáveis, como parâmetros de materiais, que podem afetar a animação no tempo de execução. A expressão de material Previous Frame Switch fornece um meio de resolver esses problemas manualmente rastreando como esses parâmetros mudam. Por exemplo, em Blueprints, pode fornecer manualmente expressões para a geração de vetores de movimento, causada por alterações no deslocamento de posição no mundo entre quadros.
As velocidades da deformação do vértice devem ser habilitadas em Configurações do Projeto, em Renderização, para que essa expressão funcione.
A versão 4.24 e posteriores usam Velocidades precisas a partir da deformação do vértice
A versão 4.25 e futuras usam Velocidades de saída devido à deformação do vértice
| Item | Descrição |
|---|---|
Quadro Atual | Vetor direcional usado como referência da posição inicial. |
Quadro anterior | Vetor direcional usado como referência XYZ para a quantidade de desfoque a adicionar. |
Aqui está um exemplo usando a Expressão de Material Previous Frame Switch em um Material.
Neste exemplo, Previous Frame Switch está usando um valor constante para controlar o desfoque direcional por meio de um nó Multiply.
Neste exemplo, você pode ver como isso está sendo usado nos próprios jogos da Epic, como o Fortnite, para controlar o desfoque de movimento com uma animação de vértice que é montada na tela. A animação à direita está usando o Previous Frame Switch para adicionar um pouco de foco de movimento, enquanto a animação à esquerda não está.
Sinalizador de exibição da janela de visualização
Há um sinalizador de exibição na janela de visualização do Editor em Mostrar > Visualizar > Reprojeção do Quadro Anterior que você pode usar com o Previous Frame Switch para diagnosticar e corrigir discrepâncias nos vetores direcionais dos quadros atual e anterior.
Quando habilitado, este visualizador compara a cor do quadro atual com a do anterior e retorna a diferença entre os dois quadros. Quando a diferença é zero, o material aparece cinza na janela de visualização (imagem à esquerda). Quando os vetores direcionais não correspondem, o material exibe uma sobreposição colorida (imagem à direita).
QualitySwitch
A expressão QualitySwitch permite o uso de diferentes redes de expressões com base na engine que é alternada entre os níveis de qualidade, como usar uma qualidade mais baixa em um dispositivo de baixo custo.
| Entradas | Descrição |
|---|---|
Padrão | Essa entrada é usada para redes projetadas para qualidade visual padrão. |
Baixo | Essa entrada é usada para redes projetadas para qualidade visual mais baixa. |
Alto | Essa entrada é usada para redes projetadas para maior qualidade visual. |
RotateAboutAxis
A expressão RotateAboutAxis gira uma entrada de vetor de três canais dado o eixo de rotação, um ponto no eixo e o ângulo a ser girado. Este nó gera o delta para a posição girada, não a posição totalmente girada propriamente dita. Sendo essa uma maneira útil e fácil de incluir o resultado na entrada do deslocamento de posição no mundo para rotação simples.
| Entradas | Descrição |
|---|---|
NormalizedRotationAxis | Recebe um vetor normalizado (0-1) que representa o eixo em torno do qual o objeto girará. |
RotationAngle | O ângulo de rotação. Um valor de 1 equivale a uma rotação de 360 graus. |
PivotPoint | Recebe o vetor de três canais que representa o ponto de pivô em torno do qual o objeto girará. |
Posição | Recebe o vetor de três canais que representa a posição do objeto. |
No exemplo acima, o plano de pré-visualização parece girar em seu eixo vertical.
SphereMask
A expressão SphereMask gera um valor de máscara com base em um cálculo de distância. Se uma entrada for a posição de um ponto e a outra entrada for o centro de uma esfera com algum raio, o valor da máscara será 0 fora e 1 dentro com alguma área de transição. Funciona em vetores de um, dois, três e quatro componentes.
| Item | Descrição |
|---|---|
| Propriedades | |
Raio de Atenuação | Especifica o raio a ser usado para o cálculo da distância. |
Porcentagem de Dureza | Especifica o tamanho da área de transição. Funciona como o valor de dureza do pincel do Photoshop. Um valor de 0 significa que a transição é dura, 100 significa que a área de transição é máxima (suave). |
| Entradas | |
A | Aceita o valor que representa a posição do ponto a ser verificado. |
B | Recebe o valor que representa o centro da esfera. |
O nó gera um valor de 1 até que a câmera passe além de uma certa distância, após a qual ele gera 0.
ThinTranslucent
A expressão Saída de Material Fino e Translúcido representa com precisão os materiais transparentes baseados em física em uma única passagem. Isso permite que você crie materiais transparentes coloridos reais que respondem precisamente à iluminação e ao sombreamento.
Ao criar um material de vidro colorido, são necessários um reflexo especular branco e um plano de fundo colorido. Esse material é renderizado em uma única passagem com um shader baseado em física que considera o reflexo da luz do ar para o vidro e do vidro para o ar.
Habilite a saída de material "ThinTranslucent" configurando o seguinte no painel Detalhes do material:
Modo de Mesclagem: Translúcido
Modelo de Sombreamento: Translúcido Fino
Modo de Iluminação: Sombreamento Progressivo de Superfície
Ruído Vetorial
A expressão de material "Vector Noise" adiciona mais vários resultados de ruído vetorial 3D ou 4D para usar nos materiais. Devido ao consumo de tempo de execução dessas funções, recomenda-se que, após desenvolver um visual com elas, todo ou parte do cálculo seja incorporado em uma textura usando a funcionalidade de alvos de renderização.
Essas expressões de gráfico de material permitem o desenvolvimento de visuais procedurais na engine nos ativos finais, fornecendo uma alternativa à criação de texturas geradas de modo procedural com uma ferramenta externa. Na expressão de material "Vector Noise", você encontrará os seguintes tipos de ruído vetorial.
| Imagem | Item | Descrição |
|---|---|---|
Cellnoise | Retorna uma cor aleatória para cada célula em uma grade 3D (ou seja, da operação matemática de piso aplicada à entrada do nó). Os resultados são sempre consistentes para uma determinada posição, o que pode fornecer uma maneira confiável de adicionar aleatoriedade a um material. O cálculo dessa função de ruído de vetor é extremamente barato. Por isso, não é necessário incorporar a uma textura para melhorar o desempenho. | |
Ruído de Perlin 3D | Retorna uma cor aleatória para cada célula em uma grade 3D (ou seja, da operação matemática de piso aplicada à entrada do nó). Os resultados são sempre consistentes para uma determinada posição, o que pode fornecer uma maneira confiável de adicionar aleatoriedade a um material. O cálculo dessa função de ruído de vetor é extremamente barato. Por isso, não é necessário incorporar a uma textura para melhorar o desempenho. | |
Gradiente de Perlin | Calcula o gradiente 3D analítico de um ruído de Perlin Simplex escalar. A saída tem quatro canais. Os três primeiros (RGB) são o gradiente e o quarto (A) é o ruído escalar. Esse tipo de ruído é útil para ressaltos em uma superfície ou mapas de fluxo. | |
Ondulação de Perlin | Calcula a ondulação 3D analítica de um ruído de Perlin Simplex vetorial (também conhecido como "ruído de ondulação"). A saída é um vetor de rotação sinalizado 3D útil para fluxo de fluidos ou partícula. | |
Voronoi | Calcula o mesmo ruído de Voronoi que o nó de material de ruído escalar. O ruído escalar de Voronoi espalha pontos de propagação no espaço 3D e retorna a distância para o mais próximo. A versão de ruído de vetor retorna a posição do ponto de propagação mais próximo em RGB e a distância até ele em A. Em especial quando associada ao "Cellnoise", essa opção pode permitir um comportamento aleatório por célula de Voronoi. |
Veja abaixo um Material de base de pedra simples que usa o componente de distância do ruído de vetor de Voronoi para modular algumas saliências da superfície e mesclar musgo com as rachaduras. A posição inicial, junto com Ruído de vetor > Cellnoise, é usada para alterar a cor e a altura de colisão por rocha.
As operações baseadas em derivadas Ondulação de Perlin e Gradiente de Perlin podem ser adicionadas em oitavas, assim como o ruído de Perlin normal. Para derivadas de expressões mais complexas, é necessário calcular o gradiente do resultado da expressão. Para ajudar com isso, coloque a expressão a ser computada em uma função de material e use-a com os nós auxiliares a seguir.
| Item | Descrição |
|---|---|
Prepare3DDeriv | Usa deslocamento de posições em um padrão tetraédrico para calcular derivadas 3D. Avalie a mesma função 3D em cada posição de deslocamento gerada por essa função e alimente os valores resultantes em Compute3DDeriv. |
Compute3DDeriv | Usa deslocamento de posições em um padrão tetraédrico para calcular derivadas 3D. Use com Prepare3DDeriv. |
GradFrom3DDeriv | Calcula o vetor de gradiente 3D a partir do resultado de Prepare3DDeriv/Compute3DDeriv. |
CurlFrom3DDeriv | Calcula a ondulação de um campo de vetor 3D a partir do resultado de Prepare3DDeriv/Compute3DDeriv. |
Essas funções de Material auxiliares usam quatro avaliações da expressão de base espaçadas em um padrão tetraédrico para simular essas operações baseadas em derivadas.
Abaixo, você encontra descrições das diversas funções de ruído disponíveis na expressão de material de ruído de vetor.
| Item | Descrição |
|---|---|
| Propriedades | |
Função |
|
Qualidade | Uma configuração de aparência/desempenho. Valores mais baixos deixa mais rápido, mas pode ter uma aparência pior, valores mais alto deixa mais lento, mas pode ter uma aparência melhor. |
Ladrilhamento | Para funções de ruído que o suportam, isso permite que o ruído seja incluído em ladrilhos. Mais custoso, mas útil ao incorporar ruído em uma textura de agrupamento sem interrupções. |
Tamanho do ladrilho | Durante o ladrilhamento, com que frequência o ruído deve se repetir. Para variantes de ruído de Perlin, o tamanho do ladrilho deve ser um múltiplo de três. |
| Entradas | |
Posição | Permite que o tamanho da textura seja ajustado por meio de um vetor 3D. |
Exemplo de Material de ruído de célula:
Exemplo de Material de gradiente de Perlin:
Exemplo de Material de Voronoi: