Prototipo de Inteligencia Artificial para enemigo humano – Unity

Introducción

En este artículo vemos un prototipo de inteligencia artificial para enemigos en Unity.

Dichos enemigos estarán en distintos estados de acuerdo a lo que ocurra durante la partida. Los estados son «Guardia», «Buscando», «Atacando», «Cubriéndose».

La idea de este prototipo surgió porque una persona me escribió en los comentarios del canal preguntando cómo se podría hacer que los enemigos te detecten, se pongan en alerta, avisen a los demás y ataquen.

Para responder a su pregunta cree un proyecto en Unity proponiendo una aproximación al problema e hice un video explicando cómo funcionaba este prototipo de inteligencia artificial para enemigos. Lo puedes ver a continuación.

Prototipo de Inteligencia Artificial para enemigo
🟢

CONSIDERA SUSCRIBIRTE!

Descargar archivos del proyecto

Puedes descargar los archivos del proyecto para importar y ver en detalle los Scripts.

IA Prototype for enemies

🎁 1000 SUBS GIVE AWAY 🎁

I BRIEFLY INTERRUPT YOUR DOWNLOAD TO INFORM THE FOLLOWING

When the channel reaches 1000 subscribers, the SOURCE CODE of the following TWO COMPLETE UNITY PROJECTS (the INVADERS prototype and MAZE prototype) will be available for download. That means all the necessary assets so you can import them into your own project and compile them.

CLICK HERE TO SUBSCRIBE!


Versión:1
Publicado:junio 19, 2019

🎁 1000 SUSCRIPTORES GIVE AWAY 🎁

☝️

CUANDO ESTE CANAL LLEGUE A 1000 SUSCRIPTORES

EL CÓDIGO FUENTE DE ESTOS PROYECTOS DE UNITY SE PODRÁ DESCARGAR AQUÍ

...

🔥 CLIC PARA SUSCRIBIRTE 🔥

En la descarga tenemos un paquete de Unity que podemos importar haciendo clic derecho en la carpeta Assets y con la opción Import Package > Custom Package.

Al importarlo tendremos todos los archivos del prototipo, en la carpeta Assets tenemos los Scripts, prefabricados y escenas que componen la solución. El enemigo inteligente es el Third Person Controller versión inteligencia artificial de Standard Assets al cual se le aplica el Script enemigo que modela su comportamiento, esto hace que sea capaz de detectar al jugador, perseguirlo, dispararle y buscarlo en caso de que lo haya perdido de vista.

¿Qué vamos a hacer con esto?

Por el momento se trata simplemente de un prototipo que hice en un fin de semana y que cumple con el problema que me plantearon. Sin embargo todo puede mejorarse, en base a este prototipo podemos crear un sistema más complejo, mejorar el código, modularizar el código de manera mas coherente, crear un mejor modelo para el arma, separar el rango de visión del Script Enemigo, mejorar en general los estados individuales.

¿Qué es la Inteligencia Artificial?

Antes de empezar a explicar cómo funciona el prototipo me gustaría hablar un poco sobre el concepto de inteligencia artificial, vamos a acotar el alcance ya que hay varias definiciones.

En informática la inteligencia artificial hace referencia a un autómata (o máquina) que es capaz de percibir su entorno y tomar decisiones apropiadas de acuerdo al comportamiento que se le haya programado.

En nuestro caso queremos crear enemigos inteligentes en Unity, así que para hacerlo debemos pensar cuáles son las características fundamentales de un enemigo, su comportamiento y su manera de percibir el entorno.

Por supuesto debemos establecer límites para el alcance de la inteligencia artificial para el enemigo, por ejemplo nuestro enemigo no será capaz de aprender de su entorno.

guest
2 Comments
Inline Feedbacks
View all comments
Secured By miniOrange