Toon shading en Blender: shaders estilizados y líneas con Freestyle
Diego Cortés
Autor
El look de cómic o anime sin plugins: el toon shading en Blender se consigue con dos piezas nativas, un shader que corta la luz en bandas y un motor de líneas llamado Freestyle. Casi todos los tutoriales cubren solo una mitad; este une ambas para que termines un render estilizado completo.
Qué es el render no fotorrealista (NPR) en Blender
El render fotorrealista busca imitar la realidad; el render no fotorrealista (NPR) busca, deliberadamente, no hacerlo. En Blender, Freestyle es el motor de render no fotorrealista basado en líneas: en lugar de calcular el color de cada píxel como un render normal, analiza los datos de la malla y la información de profundidad (Z-depth) para dibujar trazos sobre los tipos de arista que tú selecciones.
La fuerza de Freestyle está en que el trazo no tiene por qué ser uniforme. Los line styles permiten looks artísticos como "hand drawn" o "painted", con un trazo irregular que imita tinta o lápiz, o técnicos como la línea dura de un plano. El mismo modelo puede leerse como ilustración o como blueprint: solo cambia la configuración del trazo, no la geometría. La referencia completa del motor está en la introducción a Freestyle del manual de Blender.
Cel shading: el color por bandas
El cel shading (o toon shading) es la primera mitad del look: la luz deja de degradarse de forma continua y se cuantiza en bandas de color planas. Un objeto iluminado pasa de un gradiente suave a dos o tres tonos nítidos, como en un dibujo animado.
Shader to RGB (EEVEE)
En EEVEE, el nodo Shader to RGB convierte el shading, es decir, la información de luz ya calculada, en información de color que puedes manipular. Al pasarla por un ColorRamp cuantizas esa luz en bandas: dos o tres paradas de color que definen sombra, luz media y brillo. Es el montaje clásico del cel shading en tiempo real.
Un aviso importante: el nodo Shader to RGB solo existe en EEVEE. En Cycles no está disponible, así que si tu render final va por el trazado de rayos, necesitas las alternativas del siguiente apartado.
Alternativas en Cycles
Para Cycles hay dos caminos habituales. El primero es el Toon BSDF, un shader de sombreado por pasos que aproxima el mismo efecto de bandas sin depender del nodo que no existe en ese motor. El segundo es la técnica del inverted hull para el contorno: una copia del objeto con la escala ligeramente aumentada y las normales invertidas, que se renderiza en negro detrás del original para simular la línea de silueta.
Montaje típico
El montaje más habitual en EEVEE es una cadena corta: un Diffuse BSDF alimenta un nodo Shader to RGB; la salida entra en un ColorRamp configurado con dos o tres paradas; y el resultado se mezcla con el color base del objeto antes de llegar al Principled BSDF. El ColorRamp es el control creativo principal: mover las paradas cambia dónde empieza la sombra, y usar interpolación constante (Constant) garantiza bandas duras en lugar de degradados.
Freestyle: activar el motor de líneas
Con el color en bandas, falta la segunda mitad: las líneas. Freestyle se activa en las propiedades del view layer (o del render) y, a partir de ese momento, el motor genera líneas según los edge types que configures en tus line sets. No tienes que marcar nada en la malla: el motor decide qué aristas dibujar según los criterios que le des.
Line Sets y edge types
Un line set es una colección de aristas que se renderizan juntas con un mismo line style. Dentro de cada line set eliges qué tipos de arista participan en el cálculo.
Tipos de arista
Cada tipo de arista se identifica con un color en el viewport: la Silhouette en verde, Crease en negro, Border en azul y Edge Marks en rojo. También puedes usar Contour, Suggestive Contour (contornos casi silueta, útiles para looks más sueltos) o Material Boundary, entre otros. Cada tipo puede incluirse o excluirse del cálculo; si uno ensucia el dibujo, lo quitas con la X que aparece junto a él, como explica el manual en su página de line sets.
Crease Angle
El Crease Angle es el umbral que decide qué cuenta como arista de pliegue: si dos caras adyacentes forman un ángulo menor que el valor definido, la arista entre ellas se renderiza cuando el tipo Crease está activo. El mismo valor afecta también a la selección de Silhouette, así que es el primer control que tocar cuando el dibujo sale demasiado sucio o demasiado limpio.
Culling y organización
La opción Culling ignora las aristas que quedan fuera de vista, lo que acelera el cálculo. Y como un view map puede contener varios line sets, cada uno vinculado a su propio line style, puedes separar la silueta exterior de las aristas interiores y darles tratamientos distintos.
Line Styles: grosor, color y modificadores
El line style define cómo se dibuja el trazo. Se organiza en secciones de color, alpha, grosor y geometría, y cada sección admite modificadores para variar el trazo: presión, ruido, ondulación o crestas que rompen la uniformidad de la línea y le dan carácter de dibujo hecho a mano.
Un consejo de rendimiento: cuantos menos edge types tengas activos, más rápido se calcula el render de líneas. Para una prueba rápida, deja solo Silhouette y añade Crease cuando el look lo pida.
Consejos para un look limpio
Itera en EEVEE: la vista previa es casi instantánea y el resultado final del cel shading apenas difiere. Ajusta el Crease Angle para no ensuciar el dibujo: un valor demasiado bajo deja aristas de más en superficies curvas. Combina el color de las líneas con las bandas de sombra: las líneas no tienen por qué ser negras, un azul oscuro o un marrón suavizan el look. Y si vas a animar, fija la misma semilla de ruido en los modificadores del line style para que el trazo no baile entre frames.
Conclusión
El look estilizado completo se compone de dos mitades que Blender trae de serie: el color por bandas con Shader to RGB (o Toon BSDF en Cycles) y las líneas con Freestyle. Ninguna de las dos requiere plugins y ambas se controlan desde el viewport. Si quieres ver el flujo aplicado en proyectos reales, los tutoriales en vídeo curados en CGI Academy Hub son un buen siguiente paso.