Domina las transiciones de animación en Unity 2D con el Animator: configura parámetros booleanos, define condiciones claras y optimiza el grafo para un gameplay fluido. Verás cómo pasar de correr a saltar o morir con un par de clics, desactivar Has Exit Time para fundidos naturales y preparar el proyecto con tags útiles como player, coin y enemy.
¿Cómo configurar transiciones y condiciones en el Animator de Unity 2D?
La clave es gobernar el grafo con parámetros y condiciones simples. Trabajarás con tres estados: run, jump y die, y dos variables que reflejan el estado del personaje.
- Crea parámetros en Parameters: booleanos. Usa dos: is on the ground y is alive. Aplica convención camel case para legibilidad.
- Ordena los nodos del grafo en triángulo para claridad visual.
- Crea transiciones: de run → jump, run → die, jump → run y jump → die. El estado die no debe tener salidas.
- Define condiciones:
- run → jump cuando is on the ground = false.
- jump → run cuando is on the ground = true.
- run → die y jump → die cuando is alive = false.
- Desactiva Has Exit Time en las cuatro flechas para permitir transiciones en cualquier momento. Verás el icono de ojo que indica cambio inmediato.
- Ajusta si lo necesitas en el panel lateral: tiempos de salida, fundidos y opciones como espejo o normalizar.
Con este esquema, el flujo es claro: falso → salto, verdadero → correr; y si el personaje no está vivo, pasa a morir desde cualquier estado.
¿Cómo probar y ajustar las animaciones en tiempo real?
Prueba en modo Play visualizando el grafo y editando las variables en Parameters para verificar el comportamiento de las transiciones.
- Inicia con is alive = true para evitar que entre directo a die.
- Si is on the ground = false, el estado activo será jump.
- Cambia is on the ground = true y verás la transición a run.
- Observa un breve fundido donde conviven ambas animaciones, creando un resultado más natural.
- Mantén Has Exit Time desactivado si quieres transiciones inmediatas sin esperar a que termine la animación.
Consejo de organización: coloca bien los nodos, selecciona cada flecha y revisa las condiciones. Así evitas transiciones lentas, bucles indeseados y estados sin salida.
¿Para qué sirven las tags y cómo preparar el proyecto para programar?
Las tags facilitan localizar objetos por grupo desde código, sin depender de la posición en escena ni de nombres exactos.
- Selecciona el GameObject del personaje y asigna la tag player.
- Crea nuevas etiquetas como coin y enemy para monedas y enemigos.
- Úsalas después en scripts para identificar familias de objetos de forma rápida.
- Fíjate en el asterisco en la escena: indica que hay cambios sin guardar.
- Guarda con el atajo: Command S en Mac o Control S en Windows.
- Deja preparado el estado inicial: is alive = true y, si lo necesitas, is on the ground = false para que el personaje empiece en el aire antes de aplicar la gravedad.
Como siguiente paso, ten listas las animaciones del personaje, la moneda y el enemigo para añadir gravedad y movimiento 2D.
¿Tienes dudas sobre las condiciones, el uso de tags o el flujo del Animator? Cuéntame en comentarios qué transición te costó más y lo vemos juntos.