He trabajado bastante con Mecanim en Unity, y creo que entiendo muy bien cómo funciona.
Como usted dice, los árboles de mezcla son casi definitivamente el camino a seguir para hacer la locomoción. Los árboles de mezcla generalmente son para cuando desea mezclar animaciones continuamente para crear la salida final. Como darle al jugador el control de qué tan rápido se está ejecutando el avatar.
Es probable que todas las acciones individuales se mantengan mejor como un estado individual, en el que puede realizar la transición. Dependiendo de cuán intenso será tu juego, incluso puedes considerar usar Any State como punto de partida para ir rápidamente a saltar, atacar, etc., sin tener que esperar a que termine otra animación.
La clave para mezclar desde un árbol de mezcla con ejecución es usar transiciones . No hay magia para hacer que esto se vea genial, solo una planificación cuidadosa y ajustes al previsualizar la transición en Unity. Gran parte del trabajo depende del animador para tener la base para transiciones exitosas.
Algo a tener en cuenta al hacer transiciones es encontrar el equilibrio entre ellas con un aspecto excelente y darle al jugador los comentarios esperados. Es posible que una transición rápida funcione mejor para la sensación del juego, mientras que una transición más lenta puede verse mejor pero hace que sus jugadores quieran tirar el controlador.
A continuación se muestra una configuración algo simple, donde las flechas indican cómo van las transiciones. Las transiciones se basan en condiciones para entrar y salir cuando finaliza la animación o se cumple una condición determinada. Esto también significa que un estado puede entrar en otros estados dependiendo de diferentes condiciones.
Lo que probablemente notará es que esto rápidamente puede convertirse en una gran pila de "espaguetis", y una forma de evitar parte de este desastre es utilizar Cualquier Estado, que también se incluye en la imagen de arriba.
los Todo Estado tiene la ventaja de ser capaz de transición en cualquier cosa, desde un momento dado. Las transiciones todavía se pueden usar para mezclar la animación, sin embargo, está trabajando un poco más en la oscuridad en cuanto a cómo se verá. Es posible obtener una vista previa de / a varios estados mientras se configura.
Algo que no mencionaste es Capas , que puede ser extremadamente útil para hacer que su personaje resulte herido o para anular la parte superior del cuerpo para llevar diferentes armas mientras usa la misma animación para las piernas para todas las armas. Las capas también se mezclan y se pueden ajustar gradualmente, por lo que un personaje podría estar más o menos herido, por ejemplo. Otro ejemplo sería levantar los brazos de un personaje en el aire (si el personaje se rindió o algo así), manteniendo todas las demás animaciones iguales.
Pero configurar un controlador de animación sólido no es un trabajo de 1 hora. Requiere algo de planificación y solo puedo alentarlo a que intente configurar una máquina de estado simple con dos ataques, un salto, una inactividad y un árbol de mezcla de caminar / correr. También puede encontrar el comportamientos introducidos en Unity 5 extremadamente útiles para controlar o interactuar con los scripts.
Estoy 99% seguro de que la IA se comportará de la misma manera que el controlador del reproductor, dado que los parámetros que se cambian a través de los scripts controlan cómo va la animación de un estado a otro.
Resumen
- Mezcla de árboles para la locomoción.
- Estados para acciones simples definidas o estados de bucle simples.
- Subestados para organizar una serie de estados, como un salto.
- Transiciones para la combinación / transición entre diferentes estados (un estado también puede ser un árbol de mezcla).
- Capas para anular o agregar a la animación base.
Así que piense en los árboles de mezcla como estados expandidos, que también actúan en función de los valores de los parámetros.
Un poco de divagación larga, pero espero que arroje algo de luz sobre el tema :)