Las expresiones de material de utilidad son nodos que pueden afectar al material de formas diferentes a las que uno podría estar acostumbrado. Por ejemplo, el nodo GIReplace reemplazará el color de rebote indirecto de un objeto con un valor de entrada determinado, mientras que el nodo de interpolación lineal ayudará a mezclar dos texturas basadas en una entrada alfa. En la página siguiente encontrarás descripciones detalladas de todas las expresiones de utilidad disponibles en el editor de materiales.
AntialiasedTextureMask
La expresión AntialiasedTextureMask permite crear un material mediante una máscara de transición suave (con antialiasing). La máscara puede utilizarse para mezclar dos propiedades de material complejo o para añadir un fundido de salida a un material mezclado con alfa (funciona bien con SoftMasked). Especifica una textura con la máscara especificada en un canal (red, green, blue o alfa), establece el canal utilizado en la expresión y especifica el valor de comparación. Suponiendo que el canal almacena un valor de la escala de grises en el rango de 0 = negro a 1 = blanco, la función de comparación define si la máscara resultante debe ser 0 o 1. Esta expresión es un parámetro que permite que la propiedad Textura se anule con MaterialInstances hijas.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Umbral | Especifica el valor utilizado como punto límite en la cobertura de píxeles. Un valor de cobertura de píxeles inferior a este se vuelve negro; el valor mayor se vuelve blanco. |
Canal | Especifica el canal de la textura que se utilizará como máscara. |
Textura | Especifica la máscara de texturas que se va a utilizar. |
| Entradas | |
UV | Toma coordenadas de textura para aplicarlas a la máscara de texturas. |
Pseudocódigo:
Result = 1
if TextureLookup < Threshold then Result = 0La implementación real es bastante más complicada, ya que intenta tener un valor de retorno entre 0 y 1 en función de la cobertura real de píxeles para evitar el aliasing.
Ejemplo (esta textura diminuta de 128 × 128, sin comprimir para obtener la mejor calidad):
Se ha utilizado como textura normal (parte superior izquierda) y se ha utilizado con la expresión de material descrita (inferior derecha):
La técnica funciona mejor con aumento y con contenido de entrada desenfocado. La compresión perjudica mucho a la calidad, así que intenta utilizar texturas de baja resolución sin comprimir.
BlackBody
La expresión BlackBody simula el efecto de la radiación de un cuerpo negro en tu material. El usuario introduce una temperatura (en Kelvin) y el color y la intensidad resultantes pueden utilizarse para controlar los valores de los colores base y emisivo para obtener un resultado físicamente exacto.
BumpOffset
BumpOffset es el término en Unreal Engine 4 para lo que comúnmente se conoce como 'mapeo por paralaje'. La expresión Bump Offset permite que un material dé la ilusión de profundidad sin necesidad de geometría adicional. El material BumpOffset utiliza un mapa de altura de escala de grises para aportar información sobre la profundidad. Cuanto más brillante sea el valor del mapa de altura, más sobresaldrá el material; estas zonas sufrirán un paralaje (desplazamiento) cuando la cámara se mueva por la superficie. Las zonas más oscuras del mapa de altura están «más alejadas» y serán las que menos se desplacen.
| Elemento | Descripción |
|---|---|
| Propiedades | |
HeightRatio | Multiplicador de la profundidad extraído del mapa de altura. Cuanto mayor sea el valor, más extrema será la profundidad. El valor típico oscila entre 0.02 y 0.1. |
ReferencePlane | Especifica la altura aproximada en el espacio de la textura para aplicar el efecto. Un valor de 0 aparecerá para distorsionar la textura completamente de la superficie, mientras que un valor de 0.5 (el valor por defecto) significa que parte de la superficie sobresaldrá mientras que algunas zonas se hundirán. |
| Entradas | |
Coordenadas | Toma las coordenadas de textura base que modificará la expresión. |
Altura | Toma la textura (o un valor) que se utilizará como mapa de altura. |
HeightRatioInput | Multiplicador de la profundidad extraído del mapa de altura. Cuanto mayor sea el valor, más extrema será la profundidad. El valor típico oscila entre 0.02 y 0.1. Si se utiliza, esta entrada sustituye a cualquier valor de la propiedad de relación de altura. |
ConstantBiasScale
La expresión ConstantBiasScale toma un valor de entrada, añade un valor de sesgo a ella y, a continuación, la multiplica por un factor de escalado, lo que devuelve el resultado. Así, por ejemplo, para convertir datos de entrada de [-1,1] a [0,1] utilizarías un sesgo de 1.0 y una escala de 0.5.
| Propiedades | Descripción |
|---|---|
Sesgo | Especifica el valor que se va a añadir a la entrada. |
Escala | Especifica el multiplicador del resultado sesgado. |
DDX
La expresión DDX expone el cálculo derivado de DDX, una función de hardware de GPU utilizada en el cálculo del sombreador de píxeles.
DDY
La expresión DDY expone el cálculo de derivadas DDY, una función de hardware de la GPU que se usa en el cálculo del sombreador de píxeles.
DepthFade
La expresión DepthFade se utiliza para ocultar las costuras antiestéticas que se producen cuando los objetos traslúcidos se cruzan con opacos.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Distancia de atenuación | Distancia en el espacio global a la que debe producirse el fundido. Se utiliza si la entrada FadeDistance no está conectada. |
| Entradas | |
Opacidad | Toma la opacidad existente del objeto antes del fundido de profundidad. |
FadeDistance | Distancia en el espacio global a la que debe producirse el fundido. |
La red de materiales para este ejemplo se muestra a continuación.
DepthOfFieldFunction
La expresión función de profundidad de campo está diseñada para dar a los artistas el control sobre lo que le ocurre a un material cuando lo desenfoca la profundidad de campo. Trabaja con un valor entre 0-1, de modo que 0 representa «enfocado» y 1 representa «completamente desenfocado». Es útil para interpolar entre versiones nítidas y desenfocadas de una textura, por ejemplo. La entrada de profundidad permite que el resultado existente de los cálculos de profundidad de campo de la escena se anule con otros cálculos.
Desaturación
La expresión desaturación desatura su entrada o convierte los colores de su entrada en tonos de gris, en función de un determinado porcentaje.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Factores de luminancia | Especifica la cantidad con la que cada canal contribuye al color desaturado. Esto es lo que controla que el verde sea más brillante que el rojo, que es más brillante que el azul cuando está desaturado. |
| Entradas | |
Fracción | Especifica la cantidad de desaturación que se va a aplicar a la entrada. El porcentaje puede variar de 0.0 (color original completo, sin desaturación) a 1.0 (totalmente desaturado). |
Programadores: Se define el color desaturado D, el color de entrada I y el factor de luminancia L. La salida será O = (1 - porcentaje)*(D.dot( I )) + porcentaje * I.
Distancia
La expresión distancia calcula la distancia (euclidiana) entre dos puntos/colores/posiciones/vectores y devuelve el valor resultante. Esto funciona con vectores de uno, dos, tres y cuatro componentes, pero ambas entradas de la expresión deben tener el mismo número de canales.
| Elemento | Descripción |
|---|---|
| Entradas | |
A | Toma un valor o vector de cualquier longitud. |
B | Toma un valor o vector de cualquier longitud. |
Observa cómo cambia el color a medida que aumenta la distancia de la cámara.
Pseudocódigo:
Result = length (A - B)Código HLSL de nivel bajo:
float Result = sqrt (dot (A-B, A-B))DistanceFieldGradient
Cuando se normaliza el nodo de expresión de material DistanceFieldGradient, muestra las direcciones X, Y, Z en las que se movería un objeto en los campos de distancia. Esto hace que el nodo de expresión de material del degradado del campo de distancia sea adecuado para materiales que deban simular el flujo de líquidos.
Generar campos con distancia de malla debe estar habilitado en Configuración del proyecto, Renderización, para que esta expresión funcione correctamente.
| Elemento | Descripción |
|---|---|
Posición | El valor por defecto es la posición actual en el mundo si no se introduce nada. |
Aquí tienes un ejemplo de cómo utilizar la expresión de material DistanceFieldGradient en los materiales. En el ejemplo siguiente, ten en cuenta que DistanceFieldGradient primero se normalizó y luego se introdujo en un nodo de canal de máscara. El motivo es que, si no se normaliza DistanceFieldGradient primero, no se pueden obtener datos direccionales. Se ha añadido el parámetro de canal de máscara para facilitar el cambio de canal RGB en la instancia de material.
Aquí se muestra un ejemplo de DistanceFieldGradient en acción. La siguiente imagen muestra qué datos utilizará DistanceFieldGradient cuando los diferentes RGB estén habilitados.
| Número | Descripción |
|---|---|
1 | Habilitar el canal R y deshabilitar el resto de canales. |
2 | Habilitar el canal G y deshabilitar el resto de canales. |
3 | Habilitar el canal B y deshabilitar el resto de canales. |
DistanceToNearestSurface
El nodo de expresión de material Distance To Nearest Surface permite que los materiales muestren cualquier punto en los niveles del campo de distancia global. Esta expresión de material funciona al sacar la distancia con signo en unidades de espacio del mundo desde el campo de distancia hasta los oclusores más cercanos de la escena.
Generar campos con distancia de malla debe estar habilitado en Configuración del proyecto, Renderización, para que esta expresión funcione correctamente.
| Elemento | Descripción |
|---|---|
Posición | El valor por defecto es la posición actual en el mundo si no se introduce nada. |
Aquí se muestra un ejemplo de la expresión de material distancia a la superficie más cercana en acción.
En este ejemplo, la expresión Distance To Nearest Surface se introdujo en la entrada de opacidad de un material, y ese material se aplicó a un plano de malla estática que se colocó justo por encima del suelo de niveles. Esta expresión le indica al material que solo coloree de rojo las zonas donde el plano de mallas estáticas empezará a cruzarse con otras mallas estáticas colocadas en la escena.
FeatureLevelSwitch
El nodo Feature Level Switch permite crear material simplificado para dispositivos de menor potencia.
Ejemplo de uso: Puede que tengas un material con 10 texturas solapadas y matemáticas complejas, pero solo una textura estática para móviles (nivel de funciones ES2).
| Entradas | Descripción |
|---|---|
Predeterminado | El nivel de funciones por defecto. |
ES2 | Nivel de funciones definido por las capacidades básicas de OpenGL ES2. |
ES3.1 | Nivel de funciones que se define según las capacidades de dispositivos de nivel metálico. |
SM4 | Nivel de funciones definido por las capacidades básicas de DX10 Shader Model 4. |
SM5 | Nivel de funciones definido por las capacidades básicas de DX11 Shader Model 5. |
Fresnel
La expresión Fresnel calcula una caída según el producto escalar de la normal de superficie y la dirección a la cámara. Cuando la normal de superficie apunta directamente a la cámara, se devuelve el valor 0. Cuando la normal de superficie es perpendicular a la cámara, se devuelve el valor 1. El resultado se ancla a [0,1] para que no tengas ningún color negativo en el centro.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Exponente | Especifica la velocidad de caída del valor devuelto. Los valores grandes indican una caída más rápida o ajustada. |
Fracción de reflejo base | Especifica la fracción de reflejo especular cuando la superficie se mira de frente. Un valor de 1 deshabilita efectivamente el efecto Fresnel. |
| Entradas | |
ExponentIn | Especifica la velocidad de caída del valor devuelto. Los valores grandes indican una caída más rápida o ajustada. Si se utiliza, el valor siempre sustituirá al valor de propiedad de exponente. |
Fracción de reflejo base | Especifica la fracción de reflejo especular cuando la superficie se mira de frente. Un valor de 1 deshabilita efectivamente el efecto Fresnel. Si se utiliza, el valor siempre sustituirá al valor de propiedad de exponente. |
Normal | Capta un valor de vector de tres canales que representa la normal de la superficie en el espacio global. Para ver los resultados de un mapa normal aplicado a la superficie del objeto de Fresnel, conecta el mapa normal a la entrada normal del material y, a continuación, conecta una expresión PixelNormalWS a esta entrada en el Fresnel. Si no se especifica ninguna normal, se utiliza la normal de tangente de la malla. |
GIReplace
GIReplace permite a los artistas especificar una cadena de expresión diferente, normalmente más sencilla, cuando el material se utiliza para la iluminación global.
Ejemplo de uso: Lo usan la iluminación global estática de Lightmass y la iluminación global dinámica de LPV.
| Entradas | Descripción |
|---|---|
Predeterminado | La iluminación global por defecto. |
StaticIndirect | Se utiliza para la iluminación indirecta con bake. |
DynamicIndirect | Se utiliza para la iluminación indirecta dinámica. |
LightmassReplace
La expresión LightmassReplace pasa por la entrada en tiempo real cuando se compila el material para un renderizado normal, y por la entrada de Lightmass cuando se exporta el material a Lightmass para la iluminación global. Esto es útil para trabajar con expresiones de material que la versión exportada no puede manejar correctamente (por ejemplo, WorldPosition).
| Entradas | Descripción |
|---|---|
Tiempo real | Toma los valores que deben pasar para el renderizado normal. |
Lightmass | Toma los valores por los que se debe pasar al exportar el material a Lightmass. |
LinearInterpolate
La expresión LinearInterpolate mezcla dos valores de entrada basados en un tercer valor de entrada que se usa como máscara. Puede considerarse como una máscara para definir transiciones entre dos texturas, como una máscara de capa en Photoshop. La intensidad de alfa de la máscara determina la proporción de color que se tomará de los dos valores de entrada. Si alfa es 0.0, se utiliza la primera entrada. Si alfa es 1.0, se utiliza la segunda entrada. Si alfa está entre 0.0 y 1.0, la salida es una mezcla entre las dos entradas. Ten en cuenta que la mezcla se produce por canal. Por lo tanto, si alfa es un color RGB, el valor del canal rojo de alfa define la mezcla entre los canales rojos de A y B independientemente del canal verde de alfa, que define la mezcla entre los canales verdes de A y B.
| Elemento | Descripción |
|---|---|
| Propiedades | |
A constante | El valor asignado a 0.0. Solo se utiliza si la entrada A no está conectada. |
B constante | El valor asignado a 1.0. Solo se utiliza si la entrada B no está conectada. |
Alfa constante | Toma el valor que se utilizará como alfa de máscara. Solo se utiliza si la entrada alfa no está conectada. |
| Entradas | |
A | Toma los valores asignados a 0.0. |
B | Toma los valores asignados a 1.0. |
Alfa | Toma el valor que se utilizará como alfa de máscara. |
Programadores: LinearInterpolate hace una interpolación lineal por canal entre A y B según el alfa del valor paramétrico.
Ruido
La expresión ruido crea un campo de ruido procedimental y te permite controlar cómo se genera.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Escala | Cambia el tamaño general de las celdas de ruido. Los números más bajos aumentan el ruido. |
Calidad | Un ajuste de aspecto/rendimiento. Los valores bajos son más rápidos, pero pueden tener peor aspecto; los valores altos son más lentos, pero pueden tener mejor aspecto. |
Función |
|
Turbulencia | Con la turbulencia activada, cada octava de ruido añadirá solo valores absolutos al resultado. Cambia las características visuales y puede crear formas grandes que se parecen a cordilleras afiladas. |
Niveles | El número de niveles de ruido a diferentes escalas que se van a combinar multiplica el coste computacional por el número de niveles. |
Salida mín. | El valor de salida más bajo según el cálculo del ruido. |
Salida máx. | El valor de salida más alto según el cálculo del ruido. |
Escala de nivel | La escala de nivel está siempre activa y determina cuánto cambia la escala para cada octava nueva. |
Teselado | Para las funciones de ruido que lo admiten, permite que el ruido cree teselas. Es más caro, pero es útil cuando se hace bake con ruido en una textura envolvente sin costuras. |
Repetir tamaño | Frecuencia con la que debe repetirse el ruido al crear teselas. |
| Entradas | |
Posición | Permite ajustar el tamaño de textura mediante un vector 3D. |
FilterWidth | Controla cuánto desenfoque se aplicará a la textura de ruido de hecho. |
Interruptor de fotograma anterior
La expresión de material interruptor de fotograma anterior ayuda a implementar animaciones de vértice complejas en el material y proporciona una forma de generar vectores de movimiento correctos que funcionan bien con AA temporal y desenfoque de movimiento.
Los materiales que son solo una función de tiempo ya funcionan sin modificación. Sin embargo, no pueden tener en cuenta otras variables, como parámetros de material, que pueden afectar a la animación en tiempo de ejecución. La expresión de material Previous Frame Switch proporciona un medio para resolver estos problemas manualmente al controlar cómo cambian estos parámetros. Por ejemplo, en los blueprints podrían proporcionar manualmente expresiones para la generación de vectores de movimiento debido a cambios en la compensación de la posición global entre fotogramas.
Las velocidades de deformación de vértices deben estar activadas en Configuración del proyecto, Renderización, para que esta expresión funcione.
La versión 4.24 y posteriores utilizan velocidades precisas de la deformación de vértices.
Las versiones 4.25 y posteriores utilizan velocidades de salida debido a la deformación de vértices.
| Elemento | Descripción |
|---|---|
Fotograma actual | Vector direccional utilizado como referencia de posición inicial. |
Cuadro anterior | Vector direccional utilizado como referencia XYZ para la cantidad de desenfoque que se debe añadir. |
Aquí se muestra un ejemplo en el que se utiliza la expresión de material interruptor de fotograma anterior en un material.
En este ejemplo, Previous Frame Switch utiliza un valor constante para controlar el desenfoque direccional a través de un nodo Multiply.
En este ejemplo, puedes ver cómo se utiliza en los propios juegos de Epic, como Fortnite, para controlar el desenfoque de movimiento con una animación de vértice que se monta en pantalla. La animación de la derecha utiliza el interruptor de fotograma para añadir algo de desenfoque de movimiento, mientras que la animación de la izquierda no.
Habilitadores de visibilidad del visor
Hay un habilitador de visibilidad en el visor del editor, en Mostrar > Visualizar > Reproyección del fotograma anterior, que puedes utilizar con la expresión interruptor de fotograma anterior para diagnosticar y corregir discrepancias en los vectores direccionales del fotograma actual y anterior.
Si se habilita, este visualizador compara el color del fotograma actual con el anterior y devuelve la diferencia entre ambos fotogramas. Si la diferencia es cero, el material aparece en gris en el visor (imagen izquierda). Si los vectores direccionales no coinciden, el material muestra una superposición de color (imagen derecha).
QualitySwitch
La expresión QualitySwitch permite usar diferentes redes de expresiones según si el motor cambia entre niveles de calidad, como el uso de una calidad más baja en dispositivos de gama baja.
| Entradas | Descripción |
|---|---|
Predeterminado | Esta entrada se utiliza en redes diseñadas para la calidad por defecto de los elementos visuales. |
Baja | Esta entrada se utiliza en redes diseñadas para elementos visuales de menor calidad. |
Alta | Esta entrada se utiliza en redes diseñadas para elementos visuales de mayor calidad. |
RotateAboutAxis
La expresión RotateAboutAxis gira una entrada vectorial de tres canales según el eje de rotación, un punto en el eje y el ángulo de rotación. Este nodo devuelve el delta a la posición girada, no a la posición totalmente girada en sí. Se trata de una forma útil y sencilla de introducir el resultado en la entrada de compensación de la posición global para rotaciones simples.
| Entradas | Descripción |
|---|---|
NormalizedRotationAxis | Toma un vector normalizado (0-1) que representa el eje sobre el que girará el objeto. |
RotationAngle | El ángulo de rotación Un valor de 1 equivale a una rotación completa de 360 grados. |
PivotPoint | Toma el vector de tres canales que representa el punto de traslación sobre el que girará el objeto. |
Posición | Toma el vector de tres canales que representa la posición del objeto. |
En el ejemplo anterior, parece que el plano de previsualización gira sobre su eje vertical.
SphereMask
La expresión SphereMask devuelve un valor de máscara que se basa en el cálculo de una distancia. Si una entrada es la posición de un punto y la otra entrada es el centro de una esfera con algún radio, el valor de la máscara es 0 por fuera y 1 por dentro con alguna zona de transición. Esto funciona con vectores de uno, dos, tres y cuatro componentes.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Radio de atenuación | Especifica el radio que se utilizará para el cálculo de la distancia. |
Porcentaje de dureza | Especifica el tamaño del área de transición. Funciona como el valor de dureza de los pinceles de Photoshop. 0 significa que la transición es dura, 100 significa que el área de transición es máxima (suave). |
| Entradas | |
A | Toma el valor que representa la posición del punto que se va a comprobar. |
B | Toma el valor que representa el centro de la esfera. |
El nodo devuelve un valor de 1 hasta que la cámara rebasa cierta distancia, tras la cual devuelve 0.
Traslúcido y fino
La expresión salida de material traslucido fino representa con precisión los materiales transparentes basados en la física en una sola pasada. Esto te permite crear material transparente teñido o coloreado auténtico que responda con precisión a la iluminación y el sombreado.
Al crear un material de cristal tintado, se necesita la luz especular blanca y el fondo tintado. Se renderizan en una sola pasada con un sombreador basado en la física que tiene en cuenta el ligero rebote desde el aire al cristal y del cristal al aire.
Para habilitar Thin Translucent Material Output, configura lo siguiente en el panel Detalles del material:
Modo de mezcla: traslúcido
Modelo de sombreado: Traslúcido fino
Modo de iluminación: ForwardShading de superficie
Ruido vectorial
La expresión del material de ruido de vectores añade varios resultados de ruido de vectores en 3D o 4D más para usar en tus materiales. Debido al gasto de tiempo de ejecución de estas funciones, se recomienda que, una vez desarrollado un aspecto con ellas, todo o parte del cálculo se haga mediante bake en una textura utilizando la función de objetivos de renderizado.
Estas expresiones de grafo de material permiten desarrollar aspectos procedimentales en el motor sobre los recursos finales, proporcionando una alternativa a la creación de texturas generadas procedimentalmente con una herramienta externa. Dentro de la expresión material de ruido de vectores, encontrarás los siguientes tipos de ruido de vector:
| Imagen | Elemento | Descripción |
|---|---|---|
Ruido de celda | Devuelve un color aleatorio para cada celda de una cuadrícula 3D (es decir, de la operación matemática base aplicada a la entrada del nodo). Los resultados siempre son coherentes para una posición determinada, por lo que puede ser una forma fiable de añadir aleatoriedad a un material. Esta función vectorial de ruido es muy económica de calcular, por lo que no es necesario hacer bake de ella en una textura para mejorar el rendimiento. | |
Ruido Perlin 3D | Devuelve un color aleatorio para cada celda de una cuadrícula 3D (es decir, de la operación matemática base aplicada a la entrada del nodo). Los resultados siempre son coherentes para una posición determinada, por lo que puede ser una forma fiable de añadir aleatoriedad a un material. Esta función vectorial de ruido es muy económica de calcular, por lo que no es necesario hacer bake de ella en una textura para mejorar el rendimiento. | |
Degradado Perlin | Calcula el degradado 3D analítico de un ruido escalar Perlin Simplex. La salida son cuatro canales. Los tres primeros (RGB) son el degradado y el cuarto (A) es el ruido escalar. Este tipo de ruido es útil para los baches de una superficie o para los mapas de flujo. | |
Rizado Perlin | Calcula el rizado 3D analítico de un ruido vectorial Perlin Simplex (también llamado ruido de rizado). La salida es un vector de rizado firmado en 3D, útil para el flujo de fluidos o partículas. | |
Voronoi | Calcula el mismo ruido Voronoi que el nodo de material Noise. El ruido escalar Voronoi dispersa los puntos semilla en el espacio 3D y devuelve la distancia al más cercano. La versión de vector de ruido devuelve la posición del punto semilla más cercano en RGB y la distancia hasta él en A. En combinación con Cellnoise, esto puede permitir cierto comportamiento aleatorio por celda Voronoi. |
A continuación, se muestra un material de base de piedra sencillo que utiliza el componente de distancia del ruido vectorial de Voronoi para modular algunos baches de la superficie y mezclar el musgo en las grietas. La posición inicial, junto con Ruido vectorial > Ruido de celda, se usa para cambiar el color y la altura del relieve de cada roca.
Las operaciones derivadas rizado Perlin y degradado Perlin se pueden sumar en octavas, al igual que el ruido Perlin normal. Para las derivadas de expresiones más complejas, es necesario calcular el degradado del resultado de la expresión. Como ayuda, añade la expresión a computar a una función de material y utilízala con los siguientes nodos auxiliares.
| Elemento | Descripción |
|---|---|
Prepare3DDeriv | Utiliza la compensación de posiciones en un patrón tetraédrico para calcular derivadas 3D. Evalúa la misma función 3D en cada posición de compensación producida por esta función y luego introduce los valores resultantes en Compute3DDeriv. |
Compute3DDeriv | Utiliza la compensación de posiciones en un patrón tetraédrico para calcular derivadas 3D. Utilízalo con Prepare3DDeriv. |
GradFrom3DDeriv | Calcula el vector de degradado en 3D a partir del resultado de Prepare3DDeriv/Compute3DDeriv. |
CurlFrom3DDeriv | Calcula el rizado de un campo vectorial 3D a partir del resultado de Prepare3DDeriv/Compute3DDeriv. |
Estas funciones de materiales auxiliares usan cuatro evaluaciones de la expresión base espaciadas en un patrón tetraédrico para aproximar estas operaciones basadas en derivadas.
A continuación, encontrarás descripciones de las distintas funciones de ruido presentes en la expresión material de ruido de vectores.
| Elemento | Descripción |
|---|---|
| Propiedades | |
Función |
|
Calidad | Un ajuste de aspecto/rendimiento. Los valores bajos son más rápidos, pero pueden tener peor aspecto; los valores altos son más lentos, pero pueden tener mejor aspecto. |
Teselado | Para las funciones de ruido que lo admiten, permite que el ruido cree teselas. Es más caro, pero es útil cuando se hace bake con ruido en una textura envolvente sin costuras. |
Tamaño de tesela | Frecuencia con la que debe repetirse el ruido al crear teselas. Para las funciones de ruido de Perlin, el tamaño de la tesela debe ser un múltiplo de tres. |
| Entradas | |
Posición | Permite ajustar el tamaño de textura mediante un vector 3D. |
Ejemplo de material de ruido de celda:
Ejemplo de material de degradado Perlin:
Ejemplo de material de Voronoi: