jueves, 20 de agosto de 2009

Bind skin y Weight painting.

Una vez tengamos nuestro rig listo, el siguiente paso es el weight painting. Para esto seleccionamos los joints del bind de los brazo y piernas, la pelvis y las claviculas y la geometria. Usamos la opcion de Skin -> Bind Skin -> Con las opciones de selected joints y closest distance. Procedemos a pintar los pesos con Edit Skin -> Paint weight Tools.

Twist, Cabeza, Conectar todo y Roll Solver

Para corregir el twist de la Columna, debemos usar una expresion. La cual es:

--ikHandle9.twist = nurbsCircle23.rotateY + nurbsCircle28.rotateX + nurbsCircle27.rotateX + nurbsCircle26.rotateX--

Obviamente cambiando la informacion a los nombres que hayamos usado. (Los nurbs circle serian los controles de la columna )

Ahora creamos los joints de la cabeza, los conectamos a la columna y creamos un control al cual le hacemos un parent constraint.

Para conectar todo:

Seleccionas el joint de la pelvis y hacemos parent constraint con el control de abajo de la columna. Conectamos con un parent constraint los grupos de los controles de las claviculas con el el joint de la columna que este mas cercano. El ultimo paso es crear dos controles maestros a los cuales emparentaremos todos los sistemas que creamos anteriormente, esto nos permitira posicionar nuestro modelo en la escena.

Roll solver:

Creamos un locator, lo nombramos como rollSolver, lo colocamos detras de nuestro modelo. Ahora vamos a los atributos de nuestro IK spline : IK Solver -> Enable twist controls -> World up type -> Object up -> En world up object escribimos rollSolver.

Columna

Como primer paso, empezamos nuevamente colocando unos 7 o 8 joints (depende de nuestro modelo) de manera natural en la posicion de la columna. Los orientamos y nombramos. Hacemos un IK SPLINE que va de la base de la columna, hasta el ultimo ( donde comienza el cuello ) .

Vamos al Hypergraph, y selecionamos el nodo de la curva que se crea. Seleccionamos cada vertice y creamos un Deformer -> Cluster en cada uno. Creamos dos controles ( uno abajo y otro arriba ). Emparentamos los dos cluster de arriba con el control de arriba, y los dos cluster de abajo con el de abajo. Para el cluster sobrante del medio, hacemos un parent constraint con ambos controles.

Sistema FK brazo y Bind

Duplicamos los joints, y creamos un control para cada joint al igual que se hizo con la pierna. No olvidarse de agrupar los grupos y jerarquizarlos. Tambien debemos hacer un orient constraint en el eje X entre el control de la muñeca y el joint del antebrazo. Creamos un control en el que tendremos el Switch. Como ultimo paso duplicamos los joints nuevamente y creamos el Switch y hacemos los contraints de la misma manera como se hicieron con la pierna.

Sistema IK brazo

Para el Ik del brazo, empezamos de la misma manera, creamos los joints en el hombro, codo y muñeca. Los orientamos y renombramos. Una vez creados estos joints, duplicamos el codo y lo movemos al antebrazo ( esto para mantener la misma orientacion ). Borramos el joint de la muñeca sobrante y ordenamos la jerarquia. Lo siguiente es crear un IK handle entre el Hombro y el antebrazo.

Pero necesitamos que el pivot de este Ik handle y el efector este posicionados en la muñenca. Para esto primero vamos a Modify -> Evaluate Nodes -> Ignore all. Luego vamos al hypergraph, seleccionamos estos nodos y con la tecla de insert cambiamos los pivots. Cambiamos nuevamente a evaluate all.

Ya con esto podemos crear un control para el Ik handle.

El codo necesita un Pole vector.Para esto creamos una curva y la colocamos cerca del codo. Escogemos el IK handle, y en la opcion de Constraints, escogemos el pole vector.

SISTEMA FK Y BIND DE PIERNA

Primero duplicamos los joints anteriores, y borramos los efectors que se duplican junto con los joints. Creamos unas curvas y las colocamos en el lugar de cada joint. Acordarse de meter en un grupo cada curva. Seleccionamos el control, luego el joint y hacemos un Orient Constraint. Procedemos a jerarquizar los grupos de manera que el primer control mueva a los controles y joints que le siguen.


BIND:

Duplicamos nuevamente los joints. El proximo paso es tomar el joint del thigh del IK y del Fk y los emparentamos cada uno con el joint del thigh del Bind. Hacemos esto con todos los joints ( Ankle, Ball, Tip, etc...)

SWITCH:


Lo proximo que necesitamos es un atributo "Switch", que nos ayudara a cambiar al sistema que necesitemos. Para estos usamos la opcion de Set Driven Key. En el control del Ik creamos este atributo. Selecionamos el control y en Set Driven Key le damos Load Selected as Driver
y cuando aparece a la izquiera lo selecionamos, y a la derecha escogemos el atributo Switch. Selecionamos los contraints anteriores y elegimos ahora Load as Driven, a la izquierda escogemos las dos ultimas opciones. Ahora:

-Click en control, switch en 0


-Click en constraint, IK en 1 y FK en 0.

-Click en control, click en KEY. Lo cambiamos a 10.

- Click en constraint, IK en 0 y FK en 1.

-Click en control, click en KEY.

Repetimos esto con todos los constraint.


miércoles, 19 de agosto de 2009

Sistema IK pierna:

Como primer paso, se empieza con el sistema IK de las piernas ( depende de cada quien ), creamos unos joints y los posicionamos de esta manera: Thigh, Knee, Ankle, Ball y Tip.



Una vez creados los joints, les cambiamos el nombre y elegimos la opcion de Orient joints. Tambien si se desea se puede hacer un Mirror joint.



IK HANDLES:

Cuando tenemos los joints posicionados, usamos la herramienta de IK Handle. Nos aseguramos que las opciones esten en : Sticky y IkRPSolver. Con el IK handle conectamos el joint del Thigh al Ankle. Ahora, nuevamente usamos el IK Handle pero esta vez con la opcion SCsolver y conectamos el ball al ankle, y el tip al ankle.




CONTROL PARA EL IK:

El siguiente paso es crear el Control para el IK, para esto creamos una curva y la agrupamos. La movemos de manera que quede debajo del pie ( moviendo el grupo, no la curva ).




CREAR ATRIBUTOS DE MOVIMIENTO:

Para darle movimientos especiales a nuestra pierna, debemos primero agrupar las IK Handles que se crearon anteriormente de esta manera:

Heel Lift: El IK principal en un grupo y cambiamos el pivot del grupo al Ball.

Toe Curl: Las otras dos IK handles agrupadas en un grupo y el pivot en el Ball.

Stand Tip y Toe Pivot: Agrupamos los dos grupos creados anteriormente con el pivot en el Tip.

Heel Pivot: Agrupamos los grupos anteriores y cambiamos el pivot al Ankle.


El ultimo paso es agarrar lo que acabamos de crear y lo emparentamos con el control.



Lo siguiente es tomar el control y crearle nuevos atributos en su menu:


Ahora, vamos al Hypergraph, escogemos el Control, right click, selecionamos alguno de los atributos nuevos que le creamos y lo conectamos con la rotacion del grupo correspondiente.

Debemos crear tambien un atributo en el control para la rodilla (Knee) y Offset. Este atributo sera controlado por una utilidad que se llama "-+Average", que se encuentra en el Hypershade. Agarramos el IK handle principal, nuestro control y la utilidad, y en el hypershade hacemos click en Input y Output. Hacemos click derecho en el control, selecionamos su atributo de Knee y Offset y conectamos sus inputs con el 1 de cada uno.