¡Implementa una IA enemiga con Behavioral Trees en Unreal Engine 5 y ataca al jugador!
Tabla de contenidos
- Introducción
- Paso 1: Configuración del AI Enemy y Behavioral Trees
- 2.1 Creación del AI Enemy
- 2.2 Configuración de las Behavioral Trees
- Paso 2: Implementación del ataque del AI Enemy
- 3.1 Creación de una nueva tarea
- 3.2 Configuración del ataque al jugador
- Paso 3: Detectar al jugador
- 4.1 Implementación de la detección del jugador
- 4.2 Configuración del rango de detección
- Paso 4: Reproducción de la animación de ataque
- 5.1 Importación de la animación de ataque
- 5.2 Configuración de la animación en el Blueprint
- Paso 5: Aplicación de daño al jugador
- 6.1 Implementación de la aplicación de daño
- 6.2 Configuración del daño y la salud del jugador
- Conclusiones
- Recursos adicionales
Implementación de IA en Unreal Engine 5: Tutorial de Behavioral Trees y Ataque al Jugador
¡Hola a todos! ¡Bienvenidos a nuestro nuevo Tutorial de Unreal Engine 5! En este tutorial, continuaremos con la implementación de la IA del enemigo utilizando Behavioral Trees. Será una implementación sencilla y elegante, así que empecemos. Pero antes, revisa el enlace en la descripción para obtener algunos cursos de Unreal Engine.
Como recordarán del episodio anterior, hicimos que la IA seleccionara un punto aleatorio en la escena y nos persiguiera cuando nos detectara dentro de un cierto rango de visión. Ahora, lo que queremos hacer es que comience a atacarnos cuando se acerque a una cierta distancia. Por ejemplo, cuando esté muy cerca, comenzará a atacarnos con una animación y nos infligirá daño. Para lograr esto, abrimos el Behavioral Tree.
Paso 1: Configuración del AI Enemy y Behavioral Trees
En este primer paso, configuraremos el AI Enemigo y las Behavioral Trees.
2.1 Creación del AI Enemy
Lo primero que debemos hacer es crear nuestro AI Enemy. Para Ello, seguimos estos pasos:
- Abrimos el Editor de Proyectos de Unreal Engine 5.
- Creamos un nuevo Actor → AI → AIController.
- Configuramos el AIController según nuestras necesidades y lo asignamos al AI Enemy.
- Creamos un nuevo Blueprint → Character para nuestro AI Enemy.
- Configuramos el Blueprint del AI Enemy según nuestras necesidades.
- Asignamos el Controlador AI al AI Enemy.
2.2 Configuración de las Behavioral Trees
Una vez que hemos creado el AI Enemy, procedemos a configurar las Behavioral Trees. Estos son los pasos a seguir:
- Abrimos el Editor de Proyectos de Unreal Engine 5.
- Vamos a la carpeta AI/BehaviorTrees.
- Creamos un nuevo BehaviorTree.
- Configuramos el BehaviorTree según nuestras necesidades.
- Establecemos el AI Controller como el Controlador Principal del BehaviorTree.
Paso 2: Implementación del ataque del AI Enemy
En este segundo paso, implementaremos el ataque del AI Enemy.
3.1 Creación de una nueva tarea
Para comenzar, creamos una nueva tarea en el BehaviorTree. Estos son los pasos a seguir:
- Abrimos el BehaviorTree en el Editor de Proyectos de Unreal Engine 5.
- Vamos a la pestaña Tasks y seleccionamos "BTT Attack Player" Blueprint.
- Abrimos el Blueprint "BTT Attack Player".
3.2 Configuración del ataque al jugador
En el Blueprint "BTT Attack Player", configuramos el ataque al jugador. Estos son los pasos a seguir:
- Añadimos un evento "Receive Execute AI" para gestionar la ejecución de la tarea.
- Añadimos un nodo "Finish Execute" para finalizar la tarea.
- Implementamos la lógica para detectar al jugador y realizar el ataque.
- Llamamos al evento de ataque creado anteriormente en el Blueprint del AI Enemy.
- Finalizamos la tarea.
Paso 3: Detectar al jugador
En este tercer paso, implementamos la detección del jugador por parte del AI Enemy.
4.1 Implementación de la detección del jugador
Para detectar al jugador, utilizamos el nodo "Sphere Trace for Objects" en el Blueprint del AI Enemy. Estos son los pasos a seguir:
- Obtenemos la ubicación actual del AI Enemy.
- Calculamos el vector frontal del AI Enemy para determinar en qué dirección está mirando.
- Realizamos una traza en forma de esfera desde la ubicación actual del AI Enemy en la dirección frontal.
- Configuramos un radio y detectamos si el jugador se encuentra dentro del radio de detección.
- Si se detecta al jugador, pasamos al siguiente paso.
4.2 Configuración del rango de detección
Para configurar el rango de detección, ajustamos los parámetros del nodo "Sphere Trace for Objects". Estos son los pasos a seguir:
- Configuramos la distancia máxima de detección.
- Ajustamos el radio de la esfera de detección.
- Configuramos los tipos de objetos a detectar, en este caso, pawns.
- Comprobamos si se detecta al jugador y realizamos las acciones correspondientes.
Paso 4: Reproducción de la animación de ataque
En este cuarto paso, reproduciendo la animación de ataque del AI Enemy.
5.1 Importación de la animación de ataque
Para importar la animación de ataque, seguimos los siguientes pasos:
- Descargamos la animación de ataque adecuada para nuestro AI Enemy.
- Importamos la animación en Unreal Engine 5.
- Configuramos la animación en el Blueprint del AI Enemy.
5.2 Configuración de la animación en el Blueprint
En el Blueprint del AI Enemy, configuramos la animación de ataque. Estos son los pasos a seguir:
- Añadimos un nodo "Play Montage" para reproducir la animación de ataque.
- Configuramos la animación de ataque en el nodo "Play Montage".
- Añadimos una transición entre las animaciones de movimiento y ataque para conseguir una transición suave.
- Guardamos y compilamos el Blueprint del AI Enemy.
Paso 5: Aplicación de daño al jugador
En este quinto paso, aplicamos el daño al jugador cuando es atacado por el AI Enemy.
6.1 Implementación de la aplicación de daño
Para aplicar el daño al jugador, utilizamos el nodo "Apply Damage" en el Blueprint del AI Enemy. Estos son los pasos a seguir:
- Configuramos los parámetros del nodo "Apply Damage", como el actor afectado y el daño base.
- Implementamos la lógica para aplicar el daño al jugador.
- Guardamos y compilamos el Blueprint del AI Enemy.
6.2 Configuración del daño y la salud del jugador
Para configurar el daño y la salud del jugador, utilizamos el Blueprint del jugador. Estos son los pasos a seguir:
- Abre el Blueprint del jugador en el Editor de Proyectos de Unreal Engine 5.
- Añade nodos y lógica para gestionar el daño y la salud del jugador.
- Configura los valores iniciales de daño y salud del jugador.
- Guarda y compila el Blueprint del jugador.
Conclusiones
En este tutorial, hemos aprendido a implementar la IA del enemigo utilizando Behavioral Trees en Unreal Engine 5. Hemos configurado las Behavioral Trees para que el AI Enemy pueda detectar al jugador y atacarlo. También hemos añadido animaciones de ataque y aplicado daño al jugador. Espero que este tutorial te haya sido de ayuda y que puedas aplicar estos conceptos a tus propios proyectos de Unreal Engine 5.
Recuerda revisar los recursos adicionales que se encuentran al final de este artículo para obtener más información sobre Behavioral Trees y juegos en Unreal Engine 5.
¡Gracias por tu atención y nos vemos en el próximo tutorial!
Recursos adicionales: