10 dic. 2013

Uso del nodo Vector Blur en Blender 2.69

Este breve tutorial tratará de cómo usar el nodo Vector Blur para dar realismo a objetos que se mueven a velocidad variable en nuestra escena. Todo, por supuesto, en Blender. En esta entrada mencionaba una de las opciones para dar este mencionado realismo al renderizado de objetos en movimiento (principalmente en movimiento rápido). En aquella época no conocía esta otra opción que voy a plasmar en este tutorial, la cual aprendí en las prácticas en grupo de esta excelente comunidad de Google +. Y es que usando el nodo Vector Blur tenemos la gran ventaja de que se puede modificar el efecto cuantas veces queramos antes de hacer el renderizado final. Con el Samples Motion Blur, además de consumir muchos más recursos, queda el resultado plasmado en el render (quemado, como dicen los entendidos) y ya no se puede modificar desde el editor de nodos.

Nodo Vector Blur en acción. Objeto a velocidad baja.
Y es que cuando se filma o se toma una instantánea de un objeto en movimiento (o no), el obturador de la cámara se abrirá el tiempo requerido por la iluminación. Si el objeto se mueve lo suficientemente rápido como para dejar una estela en el sensor de la cámara (o en la película fotosensible) en vez de una imagen estática, el resultado de la película será mucho más fluido que si las imágenes de ese objeto son nítidas, como ocurriría con un renderizado común.

Claro, siempre que no se cuente con una cámara de alta velocidad, que filme 60, 100 o más cuadros por segundo. Si es una cámara común, el objeto dejará su huella borrosa en cada fotograma. Si queremos ser perfeccionistas, tendremos que hacer los cálculos de cuánto se desplaza el objeto que viaja a velocidad v en la impresión de la imagen. Esto dependerá de la velocidad del obturador, que generalmente puede ser muy variada, desde quizás 1/60 o 1/125 de segundo a 1/1000 de segundo. Pero para no enredarse en cálculos de funciones trigonométricas y movimiento rectilíneos, usaremos la querida intuición, y listo.
Y es que con sólo ver el fotograma nos daremos cuenta, sabiendo la velocidad del objeto, cuanto Blur requerirá.

Con mucho Blur, lo que correspondería con un objeto a alta velocidad
Para usar este nodo, primero activaremos el vector desde la Render Layer que corresponda, en el sector de Passes

Activando la opción Vector
Luego de hecho esto, en el editor de nodos quedará disponible y activado en la Render Layer el conector Speed. Entonces agregaremos el nodo Vector Blur que está en Filter y lo conectaremos como se ve en la imagen siguiente. El Image con Image, el Z con el Z y el Speed con su homólogo (ja), dejando libre el Alpha de la Render Layer. Y eso es todo:


Variando los Samples (número de imágenes superpuestas) y el Blur, lograremos un efecto visual de gran calidad con un tiempo de renderizado muy inferior al del uso de Motion Blur.
En los siguientes dos videos se puede apreciar el resultado de usar este nodo Vector Blur para objetos semovientes.



En el anterior, el paso de muchos objetos le da a este nodo una particular importancia dado que se ahorra mucho tiempo entre cada render.



Cualquier pregunta o sugerencia como siempre serán bienvenidas

2 comentarios:

José GDF dijo...

Hola, Mariano. Es la primera vez que utilizo este nodo. En estos momentos estoy renderizando una prueba para ver cómo queda (en realidad es un test de muchas cosas que quería probar en una sola animación). Y aquí estoy, siguiendo tus pasos y recomendaciones.

Creo tener una explicación a por qué este sistema es mucho más rápido que el motion blur nativo de Blender. Éste último necesita hacer tantos renders del mismo fotograma como número de samples tengas configurado. Por tanto renderizará esas mismas veces cada fotograma. Sin embargo, con el nodo vector blur (o desenfoque vectorial, en la versión en español del programa), realiza el cálculo del desenfoque una sola vez cada fotograma, con lo que el tiempo se reduce considerablemente.

Saludos y gracias por compartir tus descubrimientos y progresos. Volveré... ;)

Mariano Miguel dijo...

¡Muchas gracias por el aporte, José! Seguramente es como dices. Suerte con las pruebas y seguimos en contacto.