martes, 26 de diciembre de 2017

Stretchable Spine - Spline IK with DQ

Hola, de nuevo al blog. En esta ocasión les mostrare la manera como yo seteo la columna del un personaje. Como todos sabrán al momento de setear la columna, lo mas común en usar el es Spline IK Handle. Esta técnica es bastante buena y los animadores parecen estar acostumbrados a ella. Sin embargo cuando nosotros queremos hacer la columna estirable, tenemos que tomar dos decisiones o trabajar con la translación del joint o con las escala. He visto que generalmente se trabaja con la escala ya que el calculo es una simple división.


En tanto con la translación habría que hacer un calculo mayor y un poco mas complejo. En el caso de la escala funciona bastante bien, aunque he escuchado que algunos dicen: Los joints no se deben escalar. Creo que lo decían por esta razón.

Como veremos el corte inferior esta moviéndose hacia abajo cuando en realidad debería moverse hacia arriba. Ahora esto puede ser un tema de skinning, sin embargo en skin no tendría que tener ningún tipo de influencia por debajo del joint. Cosa que casi imposible de hacer.


Para solucionar este problema lo que deberíamos hacer es usar la escala solo como conductor de la translación, mas no en la escala del eje principal (generalmente es el X). Para poder realizar esto tendríamos que emparentar a cada joint de la cadena IK Spline otro joint .Tenemos dos opciones:

  • Usar el parent Constrain.
  • Emparentar directamente en el joint, únicamente funcionaria si emparentamos joint con joint. 
Esto solo funciona gracias a que al momento de emparentar joint con joint esto se conectan automáticamente la escala de uno con la escala inversa del otro.
Spine_3_BON.scale --> Spine_3_JNT.inverseScale

De esta forma sólo nuestros huesos únicamente se trasladan.

No hay comentarios:

Publicar un comentario