Este es un tutorial básico sobre Compositing en Blender, hecho con la versión 4.1, para principiantes y enfocado en aplicar Ambient Occlusion a tus renderizaciones.
Transcripción del video
¡Hola a todos! Este es un tutorial básico sobre Compositing en Blender, hecho con la versión 4.1, para principiantes y enfocado en aplicar Ambient Occlusion a tus renderizaciones.
Ambient Occlusion es una técnica que, dependiendo de cómo se implemente, calcula o simula las áreas oscuras de los objetos que ocurren porque la luz ambiental no logra alcanzarlas. Esto sucede en esquinas, grietas, cavidades, rincones, áreas ocultas y otras situaciones similares.
También ocurre cuando dos objetos están en contacto entre sí, como los objetos que descansan sobre un escritorio en la escena que estoy usando para este tutorial. De hecho, si no se implementa Ambient Occlusion, la renderización parece menos realista porque los objetos no parecen estar realmente tocándose entre sí.
Cuando se implementa Ambient Occlusion, ayuda a definir mejor las formas de los objetos y agrega una sensación de profundidad, contribuyendo a que las imágenes sean más convincentes y realistas.
En este tutorial, veremos cómo recuperar la información de Ambient Occlusion, cómo ajustar el tamaño de las áreas de ambient occlusion, y cómo hacer que el efecto sea más o menos pronunciado.
Pero espera, ¡hay más! Al final del tutorial, también discutiré qué hacer cuando, en la escena renderizada, también está el universo virtual como fondo, ¡así que quédate hasta el final!

En Blender, es posible implementar Ambient Occlusion a nivel de Material (es decir, configurándolo específicamente para cada Material disponible en la escena) y a nivel de Renderizado, utilizando la información de Blender sobre la posición y las formas de los objetos dentro de la escena. En este tutorial, examinaremos específicamente el Ambient Occlusion a nivel de Renderizado, en Post-Producción.
Para este tutorial, estoy usando Cycles como motor de renderizado, pero el flujo de trabajo también es válido con Eevee.
Por defecto, al renderizar una escena en Blender, Blender no proporciona información de Ambient Occlusion en el nodo Render Layers. Por lo tanto, lo primero que hay que hacer es activar el Ambient Occlusion Render Pass en la sección Light Passes de la pestaña View Layer en el editor de Propiedades.
Una vez hecho esto, inicia el renderizado y cambia a un editor Compositor, donde podemos observar los cambios en el fondo activando la función Backdrop e insertando un nodo Viewer.
En mi caso, estoy insertando un nodo Reroute, que estoy conectando tanto al nodo Composite como al nodo Viewer. De esta manera, la información enviada al nodo Reroute se enviará tanto al renderizado que se está guardando en el disco como al que estamos viendo como fondo en el editor Compositor.
Para redimensionar la vista previa del compositing en el fondo del editor, presiona V o ALT V. Para mover esa vista previa, usa ALT y el botón central del ratón.

Primero, conectemos la salida de Ambient Occlusion del nodo Render Layers al nodo Reroute, para observarla.

Blender nos proporciona información de oclusión de objetos directamente desde las geometrías disponibles en la escena, por lo que notamos oclusiones entre diferentes objetos, como las que hay entre la taza y el escritorio, así como dentro de objetos individuales, como en el caso de las flores.
También notamos que esta información es muy granular o, mejor dicho, ruidosa... afortunadamente, tenemos un nodo específicamente diseñado para reducir el ruido, así que añadamos un nodo Denoise del grupo Filter justo entre la salida de Ambient Occlusion y el nodo Reroute.
Los efectos son inmediatamente visibles, incluso con los ajustes predeterminados del nodo Denoise.

Para añadir esta información al renderizado original, insertamos un nodo Mix Color del grupo Color Mix en la configuración, configurándolo en modo Multiply con un valor de 1 para el parámetro Factor.
A continuación, conectamos la salida de Image del nodo Render Layer a la primera entrada de Image del nodo Multiply.
Luego, conectamos la salida del nodo Denoise a la segunda entrada de Image del nodo Multiply y observamos el resultado, que es visible al conectar la salida de Multiply al nodo Reroute.

Multiplicar un color por un valor en escala de grises tiene el efecto de oscurecer ese color porque básicamente significa multiplicar números que van de 0 a 1. Por lo tanto, el resultado final será un valor menor que los dos números originales, resultando en un color más oscuro.
La renderización inmediatamente parece mucho más convincente que la original. Podemos evaluar los efectos del pase de Ambient Occlusion activando y desactivando el nodo Multiply, lo cual podemos hacer seleccionando este nodo y presionando la tecla M (que es el atajo para la operación de Mute) en el nodo seleccionado varias veces...
...sin embargo, aún no hemos terminado, porque podemos ampliar, reducir o hacer que la información en el canal de Ambient Occlusion sea más oscura o más clara antes de aplicarla a la imagen.
Para examinar mejor los efectos de las operaciones que estoy a punto de realizar en la salida del nodo Denoise, conecto este nodo a Reroute.

Para expandir o reducir las áreas generadas por Ambient Occlusion, podemos usar un nodo Dilate/Erode del grupo Filter. Este nodo implementa operaciones morfológicas, actuando sobre las formas de las áreas oscuras. Al configurar un valor positivo en el campo Distance, reducimos las áreas oscuras, mientras que al configurar un valor negativo podemos ampliarlas.


Para oscurecer o aclarar la información de Ambient Occlusion, podemos usar un nodo Gamma, que nos permite oscurecer o aclarar la imagen sin convertir los píxeles grises en completamente negros o blancos.
Si lo prefieres, puedes lograr un efecto similar con un nodo RGB Curve modificando la curva C para reproducir la curva Gamma. Esta operación es muy diferente a sumar o restar valores de los píxeles originales y es más adecuada para este tipo de corrección.


Ahora que conocemos los efectos de los nodos Dilate/Erode y Gamma, conectemos la salida de Gamma a la segunda entrada de Multiply. Luego, conectamos la salida de Multiply al nodo Reroute.
De esta manera, podemos modificar los valores de los nodos y observar los efectos, esta vez en la renderización original.

Finalmente, recuerda que el nodo Multiply también te proporciona un parámetro, denominado Factor, para ajustar la intensidad del efecto aplicado a la renderización original. Establecer este valor en 0 resultará en obtener solo la renderización original, mientras que establecerlo en 1 resultará en la aplicación completa del efecto, con valores intermedios que corresponden, por supuesto, a aplicaciones proporcionales.

Antes de concluir el tutorial, una última nota. La escena que he utilizado hasta ahora se estableció dentro de una habitación, y el fondo del universo virtual no causó ningún problema porque estaba "filtrado", por así decirlo, por el material Glass de la ventana.
Sin embargo, en escenas al aire libre, el fondo del universo virtual aparece negro en el canal de Ambient Occlusion. Multiplicar esta información con la imagen original resultaría en que el fondo se vea completamente negro.


Para solucionar este problema, antes de renderizar una escena de este tipo, activa también el Environment Render Pass, que aísla el fondo del universo virtual, representándolo en color.

En este canal, todos los demás objetos se representarán en negro.

Ahora añade un nodo Mix Color, cambia su modo a Exclusion, con un valor de 1 para el campo Factor, y luego conecta el Environment Render Pass a la segunda entrada de Image de este nodo.
Luego, conecta la salida del nodo Multiply que usamos para aplicar Ambient Occlusion a la renderización original a la primera entrada de Image del nodo Exclusion.

Recuerda: en esta configuración, el nodo Exclusion funcionará correctamente solo si la primera entrada de imagen es el producto de Image por Ambient Occlusion; por lo tanto, no conectes Image directamente a Exclude.
¡Bueno, eso es todo por este tutorial! ¡Espero que haya sido útil! ¡Nos vemos pronto!