Una Descripción del Compositor Node
-por Daniel LaBarge



Sandra Gilbert y yo discutimos el hecho que a menudo es difícil manternerse al corriente de todas las características nuevas que están apareciendo en las actualizaciones de Blender. Frecuentemente, uno nunca llega a usar la herramienta en un proyecto porque se esta simplemente demasiado ocupado explorando todos los modos diferentes de uso de la nueva funcionalidad. Para ayudar a ponerse más rápido al corriente, daré una descripción rápida del sistema Compositor Node.

NOTA: La descripción de cómo trabaja cada nodo esta basada sólo en la utilidad y no en la funcionalidad matematica o gráfica real del nodo. Una descripción más exacta de cómo funciona y opera cada nodo esta más allá del alcance de este artículo y aparecerá probablemente en futuros artículos de Blender Wiki en http://mediawiki.blender.org.

Sistema Compositor Node

El Sistema Compositor Node es un editor de postproducción avanzado que permite la rápida y fácil configuración de modificadores, llamados nodos, para ser conectados juntos (usando noodles [fideos]) basandose en varias entradas y salidas. Las configuraciones son flexibles y los resultados pueden ser bastante dramaticos o muy sutiles basandose en su diseño y necesidad. La principal característica del Sistema Compositor Node (Compositor) es la habilidad de mezclar varios renderizados (combinado de valores RGBA, Z, Vector y Normal) con otras entradas para conseguir efectos avanzados. Estas características han provenido principalmente a través del desarrollo realizado por Orange Studio y recientemente por el proyecto Plumíferos. Aunque fue diseñado para animaciones e imágenes generadas por ordenador, el Compositor ha encontrado su camino en la caja de herramientas de muchos artistas gráficos que usan programas 3D y 2D para crear trabajos artísticos e ilustraciones. ¡Las posibilidades sólo están limitadas por tu imaginación y abstracción de la disposición basada en el nodo!

Input Values (Valores de Entrada) Las entradas son ajustes variables en todos los nodos de Salida (Output) y Efecto (Effect). Los nodos de entrada no contienen entradas en si mismos, usan las entradas de la Escena (Scene) actual. Una entrada puede ser o un valor de RGBA (entradas Image) o un valor de rango (entradas Factor, Size, Value). La diferencia clave entre los valores de RGBA y los valores de rango es que cada píxel representa un valor de color/alfa o un valor que representa una cantidad de entrada (0- 255). Los valores de RGBA son típicamente los píxeles que componen la imagen final mientras que los valores de rango son típicamente valores que controlan la transformación de los píxeles y son por lo general valores Z, Vector, Normal, Alpha u otros de rango.

Las entradas sólo pueden aceptar un canal de entrada y representan el cuadro entero sobre una base por píxel. Las entradas son de la escena o tomadas de la salida de otro nodo o de un valor de grupo (tales como las entradas de imagen, que pueden usar simplemente un valor de RGBA).

Una entrada de valor de RGBA es siempre amarilla y una entrada de valor de rango es siempre gris. Las entradas azules son entradas especiales que sólo trabajan con los datos de escena asociados (canales Normal y Vector). Una entrada de valor de RGBA puede tener que ser convertida para ser usada como una entrada de valor de rango. Una entrada que representa cada píxel en una imagen a menudo es relacionada como un mapa de imagen o de píxel.

Output Values (Valores de Salida) Los valores de salidas son ajustes variables sobre todos los nodos de Entrada (Input) y Efecto. Los nodos de salida no contienen salidas en si mismos, muestran las entradas. Al igual que los Valores de Entrada, los Valores de Salida son bien valores RGBA o de rango. Una salida de valor de RGBA es siempre amarilla y una salida de valor de rango es siempre gris y valores de canal especial (canales Normal y Vector) son siempre azules. Para ver valores de rango, puede tener que convertirlo a un valor RGBA o usar filtros especiales cuando visualize. Una salida que representa cada píxel en una imagen a menudo es referida como un mapa de imagen o de píxel.

Con este rápido compendio sobre las entradas y salidas y lo que puede y no puede ser usado, vamos a echar un vistazo a cómo pueden ser usadas estas entradas y salidas junto con los nodos. Por favor note que en las siguientes explicaciones, no será descrito un modelo de trabajo actual, sino más bien se indicara cómo puede ser usado cada ajuste con cada nodo y cómo cambiaran cuando son combinados con otras entradas.

Input Nodes (Nodos de Entrada) Los Nodos de Capa de Render (Render Layer Nodes) son entradas desde la Escena. Habitualmente los únicos ajustes de salida disponibles para este nodo incluyen Image (RGB), Alpha, Z (profundidad), Normal (mapeado), y Speed (vector). El Nodo de Capa de Render contiene una Previsualización de Imagen (Image Preview) y un selector para seleccionar Escenas y Capas de Render desde la Escena seleccionada. Note que las salidas de valor Normal y Speed son coloreadas de azul, ésto es porque son salidas de valor especial. Pueden ser tratadas del mismo modo para cualquier valor de rango, pero sólo trabajan para nodos relacionados.

La salida Image muestra los valores de color de RGB para cada píxel. La salida Alpha es un valor de rango blanco y negro que representa la opacidad para cada píxel con un rango desde 0 (negro/transparente) a 255 (blanco/sólido). La salida Z es un valor de rango que da información de profundidad (la distancia desde la cámara al objeto virtual) sobre una base por píxel.

Image Nodes son entradas desde un archivo de imagen. Un archivo de imagen puede ser bien un archivo de tipo de imagen valido (jpg, png, bmp, etc.) o un archivo de tipo de imagen de rango (exr, hdri, etc.) o incluso un archivo de imagen en movimiento (avi, mpeg, mov, etc.). Actualmente los únicos ajustes de salida disponibles para este nodo incluyen Image (RGB), Alpha, y Z (profundidad). Este nodo también contiene una previsualización de Image.

Cuando un archivo es cargado, se muestra un pequeño icono representado por una cinta de película. Cuando usted habilita éste, más opciones se hacen disponibles. Usted puede poner el número de fotogramas en la animación y poner el fotograma inicial y si va o no a través de los fotogramas. Éste hace que sea fácil el cargar en el compositor para postproducción usando la salida de imagen raíz desde el render de la animación, puesto que Blender nombra a cada fotograma basandose en un sistema de números.

También, Blender puede leer el nombre del archivo y conseguir el siguiente fotograma de la animación. Otro icono también se muestra y puede ser habilitado, que tomara cada fotograma desde el archivo si el archivo es una imagen en movimiento. Típicamente, sólo la salida Image (RGB) es usada, pero si un archivo de escena es creado, puede usarlo como entrada que podría entregar los valores de Alpha y Z para ser usados.

Value Node es un nodo muy simple. Ajustas un valor numérico (0.00 a 1.00) y la salida de valor lo entrega como un rango. Los programadores pueden pensar en éste como una variable predefinida.

RGB Node es básicamente lo mismo que un Value Node excepto que salen valores RGBA en lugar de valores de rango. Este nodo contiene una paleta de color que hace fácil seleccionar el color deseado.

Time Node es un nodo muy practico porque es esencialmente un Value Node variable. La diferencia es que la variación esta basada en el número de fotogramas. La salida Factor es un valor de rango que es ajustado usando una curva. Puede ajustar el fotograma Start (Principio) y End (Fin) para el cual la curva representa. Este nodo es útil para controlar los cambios que ocurren durante una animación, y a menudo es usado como una entrada para otro nodo.

Texture Node es similar al Image Node excepto que usa texturas internas desde la escena Blender como entradas. Ésto le da mucho control porque puede usar el mapeado Normal para controlar el Desplazamiento (Offset) y el Escalado (Scaling) dinamicamente y puede usar los valores de RGBA bien como una salida Value de rango o como una salida RGBA Color. Este nodo también incluye una previsualización Image que muestra la textura seleccionada desde la escena. Ésto es bueno para añadir superposiciónes de textura procesales y efectos gradiente.

De todos los Input Nodes, sólo el Texture Input realmente tiene ajustes de entrada. Éstos están limitados a la escena de Blender, sin embargo, son todavía dinamicos. Sobre todos, los Input Nodes son esenciales para el uso del Compositor puesto que sirven como la base para la cual los cambios son hechos. Ellos también tienen el control sobre los efectos aplicados a otras entradas. Los tres Input Nodes más habitualmente usados son los nodos Render Layer, Image y Time.

NOTA: En el momento en el que ésto se escribe, las versiones de CVS de Blender incluyen nuevos nodos de salida. Estos nodos no serán discutidos en este artículo puesto que aún no lo han hecho en la liberación oficial de Blender. Debería notar, sin embargo, que los nodos avanzados existen y probablemente aparecerán en futuras versiones de Blender.

Output Nodes (Nodos de Salida)

Compositor Node suena a una especie de redundancia, pero, es actualmente el único camino hacia la salida de los cambios finales al Render Buffer. Habitualmente, sólo puede haber un Compositor por escena y sólo acepta entradas Image, Alpha y Z. El nodo usa una previsualización Image para mostrar los resultados en la Node Window. El Render Buffer (F11) también mostrara la salida de nodo Compositor. Si ningún nodo Compositor es encontrado el renderizado producira un error.

Viewer Node es idéntico al nodo Compositor excepto que en vez de mostrar resultados para el Render Buffer, utiliza el UV Image Editor bajo la Viewer Image. Éste es una imagen dinámica que muestra la previsualización del nodo Viewer actualmente seleccionado. Ésto significa que usted puede tener múltiples nodos Viewer que mostraran varias salidas de otros nodos... útiles para eliminar fallos y probar diferentes atributos de la composición.

Color Nodes (Nodos de Color)

RGB Curves Node es un nodo muy potente porque puede controlar el color de la imagen variando la influencia de cada color por separado, y todos los colores juntos. Este nodo tiene una Factor Input (valor de rango) y una Input Image (valor de RGBA). La Image Output es una combinación de todas las RGB Curves que incluyen Combinada (Combined), Roja (Red), Verde (Green) y Azul (Blue). Hay símbolos “+” y “-” que acercan y alejan con el fin de que usted pueda ajustar fino la curva y alinearla más fácilmente a la rejilla.

El icono de llave (wrench) permite el control sobre la vista de la rejilla y el manejo de la curva (Auto y Vector), y ésto también le permite volver a colocar la curva a la línea por defecto. Un icono de rejilla naranja permite el recorte para controlar los valores máximos. El icono "X" borra el punto actualmente seleccionado. Los puntos son seleccionados usando el Botón Izquierdo del Ratón (LMB).

Los nuevos puntos son añadidos usando Ctrl+LMB. Éste nodo es el más comúnmente usado para el control de contraste y para el ajuste de los rangos de color. Es fácil hacer imágenes muy aburridas o interesantes usando este nodo.

Mix Node hace exactamente como suena - mezcla dos entradas Image sobre la base de un Factor y tipo de filtro y saca el resultado como un valor RGBA. Este nodo tiene dos entradas Image, pero aceptara valores de rango. Ésto lo hace bueno para mezclar un valor predeterminado con un valor Time Node para tener un valor de rango variante para nodos que no tienen entradas de rango múltiple. Entre los tipos de filtro están mix (mezclar), multiply (multiplicar), add (añadir), subtract (restar), divide (dividir), screen (proteger), overlay (recubrir), darken only (sólo obscurecer), lighten only (sólo aclarar), y muchos otros. Este nodo además esta bien para mezclar colores porque las entradas Image pueden ser ajustadas como un valor RGBA fijo en vez de un mapa de píxel.

Hue Saturation Node es perfecto para un ajuste fino de los colores RGB. Si el azul no es bastante azul, éste es el nodo que encontrara más útil. Acepta una entrada Image y una entrada de valor de rango Factor, y salidas de Image modificadas. El deslizador Hue (matiz) controla los valores Hue (similar a RGB) que esta por defecto en 0.500. El deslizador Saturation (intensidad) controla la saturación de los Hues que pueden ser usados para inundar una foto o sólo matizar ligeramente una imagen. Este nodo es muy útil y es el filtro de matizado más popularmente usado para escenas de noche donde un ligero tinte azulado es necesario.

Alpha Over Node es el preservador de vivo efecto de título. Este nodo permite que una imagen sea puesta sobre la otra y la transparencia sea usada como la "ventana" a través de la cual se ve el fondo. Este nodo tiene dos entradas Image y una entrada de valor de rango Factor. El Factor puede ser fácilmente conectado a un Time Node y entonces usted puede fundir o hacer desaparecer el efecto. Convert Premul por lo general combina mejor juntos los bordes transparentes de forma que los artefactos son eliminados. Ésto también convierte el negro RGB a Alpha, que trabaja bien para crear mapas Alpha.

Es importante guardar mentalmente una "capa" cuando se trabaja con este nodo. La entrada Image superior es la "capa" que es colocada encima de la entrada Image inferior y tiene prioridad sobre el píxel. Cualesquiera píxeles transparentes permiten entonces que se muestre el fondo. Este nodo es estupendo para recubrimientos y trabajos de título así como en composición de escenas.

Z Combine Node es un nodo muy interesante en la medida en que puede ser fácilmente confundido. Éste tiene una salida Image simple, pero acepta dos entradas Image y dos entradas de valor de rango Z. Combina los píxeles sobre la base de los valores de rango Z y pasa esta imagen combinada a la salida. El problema con éste es que el valor Z que corresponde a la Image (al menos en el guión donde este nodo es útil) es el de debajo a la entrada Image opuesta.

De este modo, los fideos que conectan los nodos pueden ser fácilmente cruzados y por consiguiente conseguir enredarlos si múltiples nodos son usados. Este nodo es el usado más comúnmente con composición de escena. En este método, la escena es renderizada en secciones y capas. Las capas son reagrupadas después de que la postproducción es completada. Por lo general el canal Z de la escena es usado para hacer ésto.

Vector Nodes (Nodos Vector)

Normal Node ha de ser uno de los mejores nodos disponibles. Sólo recientemente descubrí lo asombroso que realmente es. Basicamente, usted puede pensar en él como una luz de postproducción . Usa el canal Normal como su entrada y entonces usted puede mover una pequeña esfera alrededor para resituar la fuente de luz. Las salidas disponibles incluyen el canal Normal de retrazado de un mapa y una salida de valor de rango Dot (Punto) que representa la intensidad de luz y normal en un mapa de píxel de escala de grises. Las posibilidades para ésto incluyen el mapeado especular, la iluminación de noche, el dispersado subsuperficial, y mucho más.

Vector Curves Node es similar al nodo RGB Curves en el cual usted puede controlar los valores del canal Vector para los ejes X, Y y Z. La única entrada y salida son datos de canal Vector que deben ser cargados de un nodo Normal o de la escena en sí misma. Éste contiene el widget de curva estándar y características de control. Este nodo es el más útil para retrazar un mapa del canal Vector para conseguir afinar el aspecto borroso de movimiento, etc.

Map Value Node es otra herramienta útil para cambiar rangos de valor. Éste acepta cualquier entrada de Valor de rango y puede limitar sus valores Mínimos y Máximos, y puede además ser modificado sobre la base de valores Size y Offset. Estos deslizadores no están limitados a 0.0 y 1.0 porque este nodo no esta diseñado sólo para valores de rango de esta clase. También acepta canales Z, Normal y Vector y puede ser usado a menudo en combinación con el canal Z para retrazarle un mapa para primer plano y aspecto borroso de fondo o en combinación con un canal Vector para producir el aspecto borroso de movimiento.

Filter Nodes (Nodos Filtro)

Filter Node es el nodo más habitualmente usado en este grupo. Puede ser usado para una amplia variedad de efectos, tales como enturbiado suave, realces de borde para caricaturas, signos de neón, calcomanías y muchos más. Este nodo acepta una entrada Image que puede ser controlada usando un valor de rango Factor y modificara entonces los píxeles sobre la base de un tipo de filtro o efecto diferente. El resultado es pasado a la salida Image. El tipo de filtro suavizar aplica un aspecto borroso muy pequeño al píxel para eliminar pequeños artefactos. Sharpen procura realzar los bordes entre los píxeles para definir mejor los bordes (ésto a menudo crea artefactos). Laplace, Sobel, Prewitt y Kirsch son todos muy similares y realzan los bordes y oscurecen el resto. Shadow es una especie de grabado y aplica una autosombra en los bordes. Este nodo es frecuentemente usado para hacer imágenes que son “demasiado perfectas” pareciendo más tiesas.

Blur Node es un nodo muy simple. Toma una entrada Image y (sobre la base de un valor de rango Size que influye en la cantidad de aspecto borroso) enturbiara los píxeles sobre la base de filtros o métodos diferentes. Filtrara sobre la base de un valor X e Y, y puede incluso ser aplicado a valores corregidos Gamma. Activando Bokeh filtrando usara un filtro circular en lugar del método cuadrado simple. Entre los métodos de filtro disponibles están Flat, Quadratic, Cubic, Gaussian, CatRom, Mitch y Tent.

Cada uno filtra de forma diferente y cualquiera de ellos puede ser usado para obtener el efecto deseado. El efecto resultante es aplicado a la imagen y pasado a la salida Image. Éste es muy útil para la "Depht of Field" (Profundidad de Campo) y para el aspecto borroso de movimiento. También puede ser usado habilmente para trabajo de título interesante y recubrimientos.

Vector Blur Node es básicamente un nodo de un propósito, pero hace su trabajo muy bien. Requiere tres entradas para generar la salida deseada. Estas tres entradas son una Image, un mapa de canal Z y una entrada Vector Speed. Todas éstas pueden ser reunidas desde la escena y los Vector Nodes. Este método usa tres canales juntos para enturbiar la imagen en base a un modelo de extensión de píxel. Los trabajos internos de este método están más allá del alcance de este artículo pero la funcionalidad es un efecto de postproducción muy rápido y eficiente. Usa un valor Sample para controlar la calidad del aspecto borroso, un MinSpeed para ajustar la extensión mínima para cada píxel y un MaxSpeed para la extensión máxima para cualquier píxel. Además usa un BlurFactor que puede ser usado para un ajuste fino del aspecto borroso de fuerte a débil. El más alto las Samples y el más alto el BlurFactor, el más fuerte el aspecto borroso. Es importante ajustar las velocidades Min y Max para que incluyan bastantes valores, pero no demasiado amplio para llegar a hacer un uso de memoria intensivo. Este nodo es el usado más frecuentemente para el aspecto borroso de movimiento.

Converter Nodes (Nodos Convertidores)

ColorRamp Node es un nodo de propósito dual en el que mezcla colores y valores, y salidas tanto una salida RGB Image como una salida Alpha de valor de rango. La salida alfa puede ser usada como cualquier salida de valor, pero es usada muy frecuentemente para transparencia. La entrada Factor puede ser además un valor de rango o un control de línea de tiempo para controlar la influencia del nodo. El deslizador de rampa puede usar colores y transparencias para crear un gradiente que es útil para efectos de gradiente sobre recubrimientos y para ajuste de valor.

RGB to BW Node es el nodo más simple disponible. Toma una entrada RGBA Image y saca una salida Value de rango. Éste es una representación de escala de grises de la entrada RGBA Image y puede ser usado como tal o como una salida de valor.

Separate RGBA Node es muy versátil porque te permite modificar cada canal de color de forma independiente. Acepta una entrada RGBA Image y saca los correspondientes canales Red (Rojo), Green (Verde), Blue (Azul) y Alpha (Alfa) como valores de escala de grises. En el momento de esta escritura, la siguiente liberación oficial del Blender incluira un Combine RGBA Node que hará lo contrario de este nodo.

Separate HSVA Node es esencialmente el mismo que el nodo Separate RGBA pero separa los canales Hue (Matiz), Saturation (Saturación), Value (Valor) y Alpha (Alfa) para la imagen. Son valores de escala de grises justo como el nodo Separate RGBA. En el momento de esta escritura, la siguiente liberación oficial del Blender incluira un Combine HSVA Node que hará lo contrario de este nodo.

Set Alpha Node es bueno para trabajo de título y recubrimientos, pero tiene su propósito en otro nodo también. Acepta un RGBA Image y luego permite que un valor Alpha sea ajustado o sobreescrito por una entrada Value. El valor Alpha de 0.0 es transparente y 1.0 es opaco. Los valores RGBA combinados son pasados a la salida Image. Este nodo es frecuentemente usado con un nodo Time para controlar el coloreado o descoloreado de una escena.

Translate Node es el único nodo de animación de movimiento disponible en este momento (nodos más avanzados para la rotación, etc. están siendo desarrollados). Este nodo trasladará o moverá una entrada Image un valor de ajuste desde la parte superior izquierda del tamaño del lienzo base. Sera movido X píxeles (horizontal) por el Y píxeles (vertical). Estos valores pueden ser entradas X e Y variables lo que es útil para animaciones donde un nodo Time puede ser usado para deslizar una escena o imagen a través del lienzo. La Image resultante es la salida que puede ser colocada entonces encima de otra Image para “combinarse abajo”.

Group Nodes (Nodos de Grupo)

Los nodos Group no son nada más que nodos a medida que son hechos tomando los nodos genéricos y agrupandolos con Ctrl+tecla G. Este grupo esta disponible entonces como un duplicado del grupo corriente. Para desagrupar los nodos, puede pulsar Alt+tecla G. Para añadir un nodo de grupo puede usar bien el menú Add o pulsar Shift+tecla G para obtener una lista de nodos disponibles actualmente. El trabajo con nodos de grupo puede liberar mucho tiempo para efectos reiterativos, pero debería ser usado con precaución. Un nuevo grupo debería ser añadido, entonces desagrupado y reagrupado como un nodo de grupo diferente. Este es el problema que se obtiene alrededor de los nodos copiados en lugar de los nodos duplicados. Los nodos Group son usados más frecuentemente en el archivo Blender por defecto, lo que da lugar a que los efectos usados más comúnmente puedan ser hechos rápidamente.

Conclusión

Me gustaría animarle a explorar varios ajustes y usos para los nodos. También, le recomiendo que visite los foros de apoyo para varios es quemas de referencia que pueden ayudarle a entender la funcionalidad matematica y gráfica de cada nodo. Para propósitos practicos, el Compositor es una herramienta muy poderosa y no debería ser considerado un Sequencer (Secuenciador) pretencioso - usted puede hacer mucho más con éste de lo que usted podría hacer con el Sequencer. ¡De hecho, yo no me sorprendería ni un poco si usted nunca vuelve a usa el Sequencer de nuevo!

Ésta ha sido una breve descripción del Compositor, que es sólo la mitad de la ventana Node. Hay más para aprender, tal como el interface, los nodos Material y varias vías sobre las cuales estos nodos pueden ser usados juntos.

De nuevo, ánimo a cada usuario a practicar usando nodos y aprender "los detalles" de esta herramienta. ¡Diviértase!

www.blenderart.org

Equipo de traducción