miércoles, 5 de agosto de 2009

Humantis - auto breath

Volvio humantis. El rig lo subo en unos dias. Voy a tratar de sacar unos renders con displace y textura y demas.
En este caso necesitaba un valor que oscile entre 0 y 1 para que afecte al blend shape de respiracion. Utilice el seno,(float $breathSin = sin (time * $breathFrecuency);) que oscila de -1 y 1, para obtener el valor de 0 a 1 utilice la funcion linstep, tiene un input, un minimo y un maximo, todos los valores del input que van dentro del rango ingresado (-1,1) me los devuelve entre 0 y 1, un atributo de frecuencia del seno y otro multiplicador del resultado para variar el weight del blend shape. Bueno al final del video esta la expresion, no lo se explicar muy claramente. Esta es la expresion:

float $breathFrecuency = C_globalTransforms_ctrl.breathFrecuency;
float $breathSin = sin (time * $breathFrecuency);
float $clampValue = linstep (-1,1,$breathSin);
facial_blendShapes.C_breath_bln = $clampValue * C_globalTransforms_ctrl.breathWeight;


humantis breath from nicolas rossi on Vimeo.