Nuke VectorBlur.. añadiendo desenfoque de movimiento en post. by Mauricio Ricaldi

Una de las herramientas en Nuke es el nodo para generar el desenfoque de movimiento o MotionBlur a los elementos que tenemos rendeados desde cualquier aplicacion 3D, sea Maya, 3dsMax, etc.

 

Una de las mas comunes preguntas  es como generar ese efecto en Nuke, ya que es algo bastante simple pero puede llegar a complicarse segun lo que uno quiere obtener.

Si rendeamos nuestro personaje en 3D con el pase llamado velocity obtendremos una imagen parecida a la de color rojo y amarillo, donde cada canal RBG contiene informacion como los pixeles se desplazan (R=x, B=y).

Usando un nodo de VectorBlur de Nuke podemos crear el desenfoque de movimiento, solo conectamos nuestro nodo a la imagen

En este ejemplo he usado una imagen en EXR que contiene varios pases incluyendo el de velocidad, tambien contiene pases de luz que es parte de otro tutorial de iluminacion (Iluminacion de personajes usando Vray).

 

Debemos asignar el canal de velocidad al UV channels, en este caso VrayVelocity.

Si subimos el valor de Multiply en las propiedades del VectorBlur, aumentamos el efecto, para que el movimiento sea mas suave cambiamos el method a forward.

Pero como veremos al primer intento las cosas se veran horribles. Esto es porque necesitamos añadir el canal alpha.

 

 

Una vez q el canal alpha este asignado podemos elejir el method entre Forward o Backward, aunque la mayoria de las veces forward funciona mejor.

El problema ahora es que en algunos casos nuestra imagen se pixela en los bordes, esto es porque vectorblur empuja los pixels segun la direccion de la velocidad, si revisamos bien la lengua del geko esta pixelado de una manera rara.

Lo que podemos hacer es sacar el canal de Velocidad y copiarlo al RGB con un nodo Shuffle, sumar sus valores de R+G y sacar un valor absoluto porque en la velocidad hay negativos, para luego pasarlo al canal Alpha, asi podremos usarlo de mascara luego.

Nuestra expresion sera asi: abs(r+b) usamos esta suma para decile a Nuke que solo cuando el personaje se mueva aplique un flitro de suavidad en los bordes llamado EdgeBlur.

En el nodo  Shuffle  pasamos la velocidad a RGBA con el A en negro

En el nodo Shuffle pasamos la velocidad a RGBA con el A en negro

Añadimos una E xpresion  y asignamos al final un canal alpha donde escribimos la expresion.

Añadimos una Expresion y asignamos al final un canal alpha donde escribimos la expresion.

En el nodo  Dilate  le damos un valor: 2 para que haya un mayor rango de efecto de suavidad, esto es ajustable a gusto.

En el nodo Dilate le damos un valor: 2 para que haya un mayor rango de efecto de suavidad, esto es ajustable a gusto.

Finalmente ponemos un nodo EdgeBlur para que suavize los bordes y conectamos su mascara al Dilate asi solo afectara cuando el personaje se mueva.

vblur13.JPG

Un ajuste final es poder dirigir el movimiento en X o Y, asi darle mas efecto horizontal o verticalmente, hacemos esto añadiendo valores al Add U para X y V para Y.

Ejemplo con valores U= 2 y V= 0, el efecto de desenfoque es mayor horizontalmente.

Ejemplo con valores U= 2 y V= 0, el efecto de desenfoque es mayor horizontalmente.

Espero que este corto tutorial les ayude al trabajar con el VectorBlur. Suerte,

 

M.R.

 

 

 

 

3dsMax, Usando Vray para iluminar personajes, parte 2 (Nuke) by Mauricio Ricaldi

geko_p1.JPG

En la primera parte vemos como crear la iluminación en 3DsMax usando Vray y separar en cada luz en su respectivo canal (así se llama en Nuke los pases).

Pueden revisar la primera parte del tutorial aca.

Una vez que rendeamos nuestro personaje (en este caso la tetera),  el archivo EXR contendrá todos los pases guardados en canales, Nuke es un programa de composición que usa extensivamente canales y flujo gramas, con ello se puede generar composiciones muy complejas, por eso es el programa preferido que se usa en los efectos visuales de las grandes películas.

>Acá pueden bajarse< el script para NUKE9 del tutorial.

Para seguir este tutorial se necesita un conocimiento básico de Nuke, acá un par de tutoriales en mi blog ( Rotoscopia basica en NUKE)

Si ponemos un nodo llamado "LayerContactSheet" podremos ver todos los canales que contiene el nodo.

Lo que vamos a hacer es armar unos nodos de composición, claro que esto puede ser mas complejo con mas pases pero para que el tutorial sea sencillo de seguir lo haremos básicamente.

Mediante el nodo "Shuffle" pasamos el pase Diffuse a RGB, igual pasamos el pase Domo a RGB y combinamos ambos en un Merge usando Multiply, al medio ponemos un grade para poder cambiar la intensidad y color del canal Domo.

El canal DomeLight de 3DsMax es pasado al canal RGB

El canal DomeLight de 3DsMax es pasado al canal RGB

Hacemos lo mismo para cada canal, pero usamos en el Merge la operacion PLUS.

Debemos pasar cada canal a RGB ponerle un Grade al medio y unirlo al tronco principal mediante el Merge, asi tendremos control de cada canal por separado.

Si cambiamos el valor de GAIN de cada nodo Grade podemos cambiar la intensidad de cada canal,  ponerle diferente color, ambiente, etc. 

Diferentes variaciones del mismo render &nbsp;ajustando los valores del Gain los nodos Grade.

Diferentes variaciones del mismo render  ajustando los valores del Gain los nodos Grade.

El problema de este método es que para ajustar los valores tenemos que abrir cada nodo y tenerlos abiertos hasta que estemos contentos con la iluminación. 

Lo mejor es crear un Gizmo que tenga todos los controles en un solo nodo, así los ajustes son rápidos, y podemos crear nodos que tengan diferentes "looks" que se pueden copiar y pegar en cualquier otro personaje o escena con facilidad.

Lo que hacemos es crear una copia de nuestra composición, seleccionamos los nodos y presionamos 'CTRL-G', se creara un nodo vacio, pero dentro de el esta la estructura que seleccionamos. Si les pregunta cual es el nodo de salida (OUTPUT) elijan el DOT.

Selecionamos los nodos y luego creamos el grupo con CTRL-G

Selecionamos los nodos y luego creamos el grupo con CTRL-G

Necesitamos sacar los controles del Gain de cada pase, para eso seleccionamos el nuevo nodo, que esta vació (llamado Group1), apretamos el botón derecho sobre el panel de propiedades y nos vamos a "Manage User Knobs"

Para añadir los controles para cada canal, vamos PICK y en la lista veremos los Grades de cada canal, vamos añadiendo cada [gain] white.

Una vez que tenemos todos los canales nombrarlos es importante, así que vamos a edit de cada uno y cambiamos el Label al canal correspondiente.

Cambiamos el nombre gain a KEY y asi cada canal que añadimos.

Cambiamos el nombre gain a KEY y asi cada canal que añadimos.

Asi tendremos finalmente nuestro nuevo Gizmo.

Asi tendremos finalmente nuestro nuevo Gizmo.

Finalmente podemos hacer copias de este nuevo Gizmo, y probar en cada uno diferentes iluminaciones, también si usamos el mismo rig de luz en 3dmax este gizmo sera re utilizable.

 

Algunas cosas que podemos mejorar es añadir pases como specular, GI, reflejos, sombras, velocidad, etc.

Algunos ejemplos donde usamos esta técnica de iluminación:

King Julien, derechos reservados a sus respectivos propietarios.

King Julien, derechos reservados a sus respectivos propietarios.

Puss and Boots, derechos reservados a sus respectivos propietarios.

Puss and Boots, derechos reservados a sus respectivos propietarios.