Thursday, July 7, 2011

Animando a Quetzalcoatl...

Tenía ganas de escribir este post desde hacía tiempo y explicar el proceso que estamos siguiendo para animar proceduralmente a nuestro jefe final. El combate contra Quetzalcoatl se realizará en la cúspide del templo y nos atacará por cualquier lado con distintos tipos de ataques.

Como es una serpiente la animación por el método tradicional, mediante softimage, iba a ser bastante tedioso y milimétrica. Tendríamos que tener en cuenta las medidas del escenario el cual todavía no estaba acabado y ajustar las animaciones. Por lo que opté por coger los huesos del rigging de la serpiente y animarlos dentro de unity mediante trasnformaciones y rotaciones.

Lo primero que necesitabamos eran caminos o trayectorias que puedieramos mover a nuestro antojo. De esta manera podríamos tener un montón de caminos que la serpiente pudiera elegir para realizar los ataques. Estos caminos para darles más espectacularidad los realizamos mediante curvas de bézier. Sin embargo, el cálculo del camino en tiempo real era MUY costoso. Por lo que optamos por realizar unos bézier paths con los puntos que definen la trayactoria. Aquí una muestra:



Luego venía el problema de mover la serpiente y que todas sus partes la siguieran. Para ello creamos un "compuesto" de huesos para ver cómo se movería.



Una vez conseguido el movimiento fluído de la serpiente, el siguiente reto era integrarlo con el rigging del modelo en 3D y que el envelope del modelo no se nos desmontara. Para ello tuvimos que crear un sistema de huesos más complejo y medido para que encajara todo. Aún así, la serpiente cuando navega tiene defectos que tendremos que mejorar. Os dejo a continuación el resultado que estamos obteniendo.



Todavía nos queda el verano para seguir perfeccionando el vuelo y los ataques, que todavía nos falta por implementar. Pero eso lo reservo para otro post.

No comments:

Post a Comment