Catálogo de nodos
Un grafo de shader se compone de 92 tipos de nodo (y 137 entradas en la barra lateral de la vista Shader, porque muchos nodos vienen en varias variantes: Sumar, Multiplicar y Step son todos el nodo Math). Este catálogo describe cada uno: para qué sirve en palabras sencillas, sus puertos y ajustes, y un ejemplo en Python.
15Entradas, parámetros y constantesLos nodos de los que parte todo shader: dónde está el píxel, el tiempo, el ratón, tus variables y valores fijos.7MatemáticasAritmética, funciones de un valor (sin, fract, abs...), mix, clamp, smoothstep y remap: el pegamento de todo grafo.19Vectores y UVCrea y separa vectores, mide distancias y ángulos, y mueve, repite, gira, retuerce o curva las coordenadas.12Ruido y patronesAleatoriedad orgánica (Perlin, simplex, fractal, Voronoi) y patrones regulares (damero, rayas, cuadrícula, puntos, degradados, ondas).10FormasCírculos, cajas, anillos, líneas, polígonos y estrellas como distancias con signo, combinadas y dibujadas con relleno, trazo y brillo.19Color, efectos y texturasDegradados, paletas, tono, saturación, modos de fusión y capas, efectos de pantalla (viñeta, líneas de barrido, grano) e imágenes.10Lógica, variables y utilidadesComparaciones y si/si no, valores con nombre, desvíos, tu propio WGSL, otros shaders como funciones, comentarios y el nodo Salida.
Cómo leer un nodo
Sección titulada «Cómo leer un nodo»flowchart LR
in1["entradas (izquierda)"] --> node["Nodo<br/>ajustes dentro"] --> out1["salidas (derecha)"]
- Las entradas están a la izquierda de un nodo y las salidas a la derecha. Un cable va de una salida a una entrada.
- Una entrada sin cable usa su valor por defecto: un número, un vector, un color o un valor de contexto como UV (la posición del píxel) o Tiempo. Puedes escribir otro valor directamente en el nodo.
- Los ajustes no son puertos: una operación, un tipo de ruido, un modo de fusión, las paradas de un degradado. Se cambian en el panel Propiedades (o como argumentos con nombre en Python).
| Tipo | Qué guarda | Ejemplo |
|---|---|---|
float |
Un número | 0.5, un brillo, un tiempo |
int |
Un número entero | 5 octavas |
bool |
Verdadero o falso | ¿está el ratón sobre el shader? |
vec2 |
Dos números | una posición (x, y), un tamaño |
vec3 |
Tres números | un color (r, g, b) de 0 a 1 |
vec4 |
Cuatro números | un color con alfa (r, g, b, a) |
texture |
Una imagen | una variable texture |
T |
Cualquiera de los tipos numéricos | nodos de matemáticas: el tipo más ancho que se les conecta |
Los valores se convierten por el camino: un float rellena todos los componentes de un vector (0.5 pasa a ser
(0.5, 0.5, 0.5)) y un vec3 se vuelve un color con alfa 1. Un cable que nunca puede funcionar, como una textura
hacia un número, se rechaza.