Configuración de Enemigos en Videojuegos: Animaciones y Física

Clase 20 de 60Curso Avanzado de Creación de RPGs con Unity

Resumen

Dar vida a un enemigo exige precisión: animaciones en cuatro direcciones, físicas coherentes y colisiones justas. Con un buen ajuste del collider, un Rigidbody2D sin gravedad y un Blend Tree bien configurado, el desafío se siente claro y sin injusticias. Además, con etiquetas limpias como player y enemy facilitas la programación y el control de choques.

¿Cómo preparar el enemigo con animaciones en cuatro direcciones?

Configura el conjunto visual y la lógica de animación para que el enemigo reaccione a los ejes horizontal y vertical. La clave está en partir del tile set, crear las cuatro animaciones y un Blend Tree bidimensional que transicione de forma suave.

  • Cortar el tile set del enemigo para obtener los sprites.
  • Crear animaciones de arriba, abajo, izquierda y derecha.
  • Construir el grafo de animaciones y un Blend Tree bidimensional cartesiano.
  • Definir parámetros float horizontal y vertical para dirigir la animación.
  • Usar cuatro frames por animación y un quinto repetido para el loop.
  • Verificar en ejecución que el enemigo mira y camina en las cuatro direcciones.

¿Cómo manejar el daño: contacto o ataque?

Se opta por daño por contacto: cuando el jugador toca al enemigo, recibe daño. No se añade animación de ataque. Si te interesa ampliar, puedes crear otra fase de ataque en un Blend Tree alternativo como variante del diseño.

¿Qué físicas y colisiones necesita para un contacto justo?

Para que el choque se sienta correcto, el área de impacto debe ser precisa. Un collider más pequeño que la silueta visual evita la sensación de “me ha dado sin tocarme”. Con el Rigidbody2D configurado, el enemigo se moverá de forma estable sin rotaciones inesperadas.

  • Colocar un collider circular como zona de daño y centrarlo en la cabeza del enemigo.
  • Reducir su tamaño respecto al área visible para evitar injusticias.
  • Añadir Rigidbody2D y quitar la gravedad para que no caiga hacia abajo en pantalla.
  • Congelar la rotación para impedir que gire al colisionar.
  • Recordatorio de física: si no frenas la componente del empuje, por la primera ley de Newton el objeto sigue moviéndose indefinidamente.
  • En juego: como son objetos físicos con colisiones, el empuje del jugador al enemigo puede ser el que cause daño al personaje.

¿Por qué reducir el collider del enemigo?

Porque mejora la percepción de justicia del reto. Evita momentos de “le di” o “no me rozó”, alineando el contacto real con la expectativa visual.

¿Cómo organizar el animator y cuándo crear el prefab?

Estructura primero el sistema de animaciones y físicas, y deja la creación del prefab para cuando tengas código y estadísticas listos. Esto evita rehacer vínculos y asegura consistencia.

  • El enemigo incluye animator, collider y Rigidbody2D ya ajustados.
  • Usar etiquetas: el personaje con etiqueta player y el ojo atacante con etiqueta enemy.
  • Posponer el prefab hasta tener el script y las estadísticas vinculadas.
  • Próximo paso del diseño: programar el movimiento aleatorio del enemigo por la pantalla.

¿Tú cómo ajustarías el collider o el Blend Tree para mejorar el reto sin que se sienta injusto? Comparte tu enfoque y dudas en los comentarios.