Animación
Animation Clips (Clips de Animación)

Visión general del Sistema de Animación

Unity tiene un sistema de animación excelente y sofisticado llamado Mecanim. Mecanim proporciona:

  • Un flujo de trabajo y configuraciones de animaciones fácil para todos los elementos de Unity incluyendo objetos, personajes, y propiedades.
  • Soporta para animation clips importados y animaciones creadas dentro de Unity
  • Animación humanoide retargeting - habilidad para aplicar animaciones del modelo de un personaje a otro.
  • Un flujo de trabajo simplificado para alinear clips de animación.
  • Una pre-visualización conveniente de clips de animación, transiciones e interacciones entre estos. Esto le permite a los animadores funcionar de manera más independiente a los programados, dar prototipos y pre-visualizar sus animaciones antes de que el código del juego es conectado.
  • El manejo de interacciones complejas entre animaciones con una herramienta visual de programación.
  • Animar diferentes partes del cuerpo con diferente lógica.
  • Características de capas (layering) y de masking
Una vista típica de un Animation State Machine en la ventana Animator
Una vista típica de un Animation State Machine en la ventana Animator

Flujo de trabajo de la Animación

El sistema de animación de Unity está basado en el concepto de Animation Clips, los cuales contienen información acerca cómo ciertos objetos deberían cambiar su posición, rotación, u otras propiedades en el tiempo. Cada clip puede ser pensado como una sola grabación lineal. Los Animation clips de fuentes externas son creadas por artistas o animadores con herramientas de terceros como lo es Max o Maya, o proceden de estudios de captura de movimiento u otras fuentes.

Los Animation Clips ( Clips de animación) luego son organizados a un sistema con una estructura similar a la del diagrama de flujo llamado Animator Controller. El Animator Controller funciona como un “State Machine” que mantiene un seguimiento de qué clip debería actualmente estar reproduciéndose, y cuando las animaciones deberían cambiar o mezclarse juntas.

Un simple Animator Controller podría solamente contener uno o dos clips, por ejemplo para controlar un powerup de girar y rebotar, o para animar una puerta que se abre y se cierra en el tiempo correcto. Un más avanzado Animator Controller puede contener docenas de animaciones humanoides para todas las acciones de los personajes principales, y pueden mezclarse entre múltiples clips al mismo tiempo para proporcionar un movimiento fluido a medida que el jugador se mueve alrededor de la escena.

El sistema de animación de Unity también tiene un número de características especiales para manejar personajes humanoides los cuales le da a usted la habilidad de retarget una animación humanoide de cualquier fuente (Eg. captura de movimiento, el asset store, o alguna librería de animación de terceros) para su propio modelo del personaje, al igual que ajustar las definiciones musculares. Estas características especiales están activadas por el sistema de Avatar de Unity, dónde los personajes humanoide son mapeados a un formato interno común.

Cada una de estas piezas - los Animation Clips, el Animator Controller, y el Avatar, son traídos juntos a un GameObject vía el Animator Component. Este componente tiene una referencia a un Animator Controller, y (si es requerido) el Avatar para este modelo. El Animator Controller, al contrario, contiene referencias a los Animation Clips que utilizan.

Un Diagrama mostrando cómo las varies partes del sistema de animación se conectan entre sí
Un Diagrama mostrando cómo las varies partes del sistema de animación se conectan entre sí

El diagrama de arriba muestra lo siguiente:

  1. Los animation clips ( clips de animación) son importados de una fuente externa o creadas dentro de Unity. En este ejemplo, estas son de un movimiento capturado de animaciones humanoides.
  2. Los clips de animación son colocados y arreglados en un Animator Controller. Esto muestra una vista de un Animator Controller en la ventana Animator. Los Estados ( los cuales pueden representar animaciones o sub-estados de maquinas anidadas) aparecen como nodos conectados por lineas. Este Animator Controller existe como un asset en la ventana del Proyecto.
  3. El modelo del personaje rigged (en este caso, el astronauta “Astrella”) tiene una configuración especifica de huecos los cuales son mapeados en el formato Avatar común de Unity. Este mapeo es almacenado como un asset Avatar como parte del modelo del personaje importado, y también aparece en la ventana del Proyecto como es mostrado.
  4. Cuando se anima un modelo del personaje, éste tiene un componente Animator adjunto. En la vista del Inspector mostrada arriba, usted puede ver el Animator Component que tiene ambos el Animator Controller y el Avatar asignados. El animator utiliza estos en conjunto para animar el modelo. La referencia del Avatar es solamente necesaria cuando se anime un personaje humanoide. Para otros tipos de animación, solamente un Animator Controller es requerido.

El sistema de animación de Unity (conocido como “Mecanim”) viene con muchos conceptos y terminología. Si en cualquier punto, usted necesita encontrar lo que algo significa vaya a nuestro Animation Glossary.

Sistema de animación Legacy (anterior-heredaro)

Mientras Mecanim es recomendado para uso en la mayoría de situaciones, Unity ha mantenido su sistema de animación anterior que existía antes de Unity 4. Usted pueda necesitarlo cuando trabaje con contenido viejo creado antes de Unity 4. Para información acerca del sistema de animación anterior, ver esta sección

Unity tiene la intención de eliminar el sistema de animación anterior en el tiempo para todos los caso, al fusionar los flujos de trabajo a Mecanim.

Animación
Animation Clips (Clips de Animación)