SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
Inteligencia Artificial
para Videojuegos
Percepción y movimiento
Percepción
● Para que un agente pueda moverse bien,
debe abrirse al mundo y percibir la realidad
Percepción 2
Motivación
“Poca observación y mucho razonamiento llevan al error.
Mucha observación y poco razonamiento llevan a la verdad” - Alexis Carrel
● Según Millington, la percepción (conexión
entre el agente y el mundo
de juego) es lo que más
esfuerzo cuesta desarrollar y
depurar en IA para videojuegos
○ Sobre todo si construimos un sistema
de simulación de sentidos físicos
Percepción 3
Motivación
● En los videojuegos más primitivos
apenas había “percepción” como tal
○ Ej. En los clones de Pong con oponentes
controlados por ordenador, la raqueta “sabe”
donde está la pelota y se mueve en consecuencia
● En los 90 aparecen los primeros sistemas de
simulación de sentidos físicos
○ En Goldeneye 007, los enemigos
podían “ver” a sus compañeros
muertos y se alarmaban por ello
Percepción 4
Hitos históricos “Antes de simular… intenta falsear”
● Muchos personajes de videojuego en
realidad son omniscientes
○ Ej. Siempre “saben” donde está el jugador
○ El comportamiento, eso sí, se diseña para simular
la ilusión de que no saben nada y necesitan ver
○ Aunque el personaje pueda verte, sólo te
perseguirá si te acercas lo suficiente… fingiendo
que realmente no “te ha visto” hasta entonces
○ Esto está entre el Diseño y la IA, porque los
personajes no tienen sentidos, pero fingen tenerlos
Percepción 5
Hitos históricos
● En títulos como Splinter Cell, Thief: The
Dark Project, y Metal Gear Solid, todo se
basa en el sigilo
○ Que los agentes inteligentes vean únicamente
objetos bien iluminados es la base de estos juegos
● Cada vez está más presente en los juegos…
○ Pronto veremos percepción
sensorial integrada también
en géneros como estrategia,
rol y plataformas (acción)
Percepción 6
Hitos históricos
● Para simular los sentidos de un NPC
extendemos el
clásico mecanismo
de paso de mensajes
○ Ej. Un gestor de eventos simple puede notificar que
hay ruido a los NPCs que estén en una habitación
○ Para escalar y centralizar esto, surge la necesidad
de desarrollar un gestor sensorial
● Revisaremos técnicas para cada sentido
○ Vista
○ Oído
○ Tacto, olfato y otros Percepción 7
Gestión sensorial
SENSE MANAGEMENT
● La solución obvia es la proyección de rayos
de toda la ida: ver si hay línea de visión
○ La vista no dobla esquinas, funciona recibiendo
fotones en línea recta y eso es muy característico
○ Habitualmente se ignora el hecho de que la luz
puede rebotar, que existen los espejos, etc.
● El problema de los rayos es que no escalan
muy bien y se vuelven casi intratables
● Además, si nos preocupa la precisión,
conviene implementar nosotros mismos los
detalles de nuestro gestor sensorial
Percepción 8
Vista
RAY CASTING
● Debe ser sofisticado: el jugador se dará
cuenta si la vista del NPC sólo es “fingida”
○ Se utilizan conos de visión (220º en horizontal, 60º
para simular la atención; y 120º en vertical), así
como líneas de visión y distancias máximas de
visión (en relación al tamaño del objeto a detectar)
○ Es instantánea, pero no llega al infinito para que no
parezca tenga “demasiada
buena vista”; al igual que
ciertos juegos nos permiten
camuflarnos o escondernos
en zonas oscuras del entorno
■ Ej. Ghost Recon Percepción 9
Vista
● No hace falta simular cómo rebotan las
ondas sonoras, se atenúan, se desplazan a
distinta velocidad según el medio, y llegan
a nuestros oídos...
○ Ej. Barrito de elefante vs. Chillido de murciélago
● A menudo simplemente
se avisa a todos los
personajes que
comparten localización
con aquello que produce el ruido
Percepción 10
Oído
● Partimos de que un videojuego normal no
requiere estos sentidos ni en el jugador
● El tacto podría verse como ¿una colisión?
○ Un sistema de colisiones que “avise” al agente
● El olfato ‘virtual’ se ha
explorado
poco (Ej. Caza)
● Se podría probar a diseñar
para el gusto ‘virtual’ o sentidos ficticios
○ Ej. “Sentido arácnido” de Spider-Man Percepción 11
Tacto, olfato y otros
● Ejemplo
Percepción 12
Modelo de gestión sensorial regional
* Un gestor sensorial basado en
regiones esféricas de influencia La modalidad hace referencia
a cada sentido (vista, oído, etc.)
Percepción 13
Ejemplo
* La
intensidad es
la fuerza
original de la
señal por la
atenuación
(valor < 1.0)
elevada a la
distancia que
hay entre esta
y el sensor
Percepción 14
Ejemplo
* sendSignals se
ejecuta en todos los
ticks, para
asegurarse de enviar
todas las
notificaciones que
debían recibirse en
este instante (o en
instantes
ligeramente
anteriores) * De instante anterior a
instante posterior
● Interfaz y clases para modalidades concretas
○ Ej. La vista
Percepción 15
Ejemplo
* Recordad que es una interfaz, ¡ojo!
* Clase que implementará la interfaz Modality
● Más interfaces para sensores y señales
○ Y estructura auxiliar para la cola de notificaciones
Percepción 16
Ejemplo
● Es necesario trabajar con API de bajo nivel
● Raycast, que usa RaycastHit
○ Proyección de rayos de la simulación física
● Collider, que
usa Collision
○ Detección
de colisiones
entre
cuerpos
rígidos (o si
sólo es un
trigger, solapamiento entre objetos)
Percepción 17
Ejemplo en Unity
● ¿Cómo funciona la vista en Splinter Cell?
A. Los agentes ven lo que esté en línea de visión
B. Los agentes sólo ven cosas que estén iluminadas
C. Los agentes ven gracias a un sistema de colisiones
D. Los agentes sólo ven los fotones simulados
● Desarrolla tu respuesta (en texto libre)
Percepción 18
Participación
* Excepto el contenido multimedia de terceros autores
Federico Peinado (2019-2023)
www.federicopeinado.es
Críticas, dudas, sugerencias...

Weitere ähnliche Inhalte

Mehr von Federico Peinado

Comunicación en lenguaje natural
Comunicación en lenguaje naturalComunicación en lenguaje natural
Comunicación en lenguaje naturalFederico Peinado
 
Búsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasBúsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasFederico Peinado
 
Representación del entorno
Representación del entornoRepresentación del entorno
Representación del entornoFederico Peinado
 
Resolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosResolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosFederico Peinado
 
Comportamiento de dirección
Comportamiento de direcciónComportamiento de dirección
Comportamiento de direcciónFederico Peinado
 
Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Federico Peinado
 
Aplicación según tipología del juego
Aplicación según tipología del juegoAplicación según tipología del juego
Aplicación según tipología del juegoFederico Peinado
 
Inteligencia Artificial para Videojuegos
Inteligencia Artificial para VideojuegosInteligencia Artificial para Videojuegos
Inteligencia Artificial para VideojuegosFederico Peinado
 
Resolutor automático y agente inteligente
Resolutor automático y agente inteligenteResolutor automático y agente inteligente
Resolutor automático y agente inteligenteFederico Peinado
 

Mehr von Federico Peinado (20)

Herramientas de autoría
Herramientas de autoríaHerramientas de autoría
Herramientas de autoría
 
Gestión de la ejecución
Gestión de la ejecuciónGestión de la ejecución
Gestión de la ejecución
 
Acción coordinada
Acción coordinadaAcción coordinada
Acción coordinada
 
Comunicación en lenguaje natural
Comunicación en lenguaje naturalComunicación en lenguaje natural
Comunicación en lenguaje natural
 
Puntos de ruta tácticos
Puntos de ruta tácticosPuntos de ruta tácticos
Puntos de ruta tácticos
 
Análisis táctico
Análisis tácticoAnálisis táctico
Análisis táctico
 
Probabilidad y utilidad
Probabilidad y utilidadProbabilidad y utilidad
Probabilidad y utilidad
 
Árbol de comportamiento
Árbol de comportamientoÁrbol de comportamiento
Árbol de comportamiento
 
Reglas y planificación
Reglas y planificaciónReglas y planificación
Reglas y planificación
 
Máquina de estados
Máquina de estadosMáquina de estados
Máquina de estados
 
Búsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasBúsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadas
 
Representación del entorno
Representación del entornoRepresentación del entorno
Representación del entorno
 
Resolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosResolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estados
 
Desplazamiento en grupo
Desplazamiento en grupoDesplazamiento en grupo
Desplazamiento en grupo
 
Comportamiento de dirección
Comportamiento de direcciónComportamiento de dirección
Comportamiento de dirección
 
Física y animación
Física y animaciónFísica y animación
Física y animación
 
Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)
 
Aplicación según tipología del juego
Aplicación según tipología del juegoAplicación según tipología del juego
Aplicación según tipología del juego
 
Inteligencia Artificial para Videojuegos
Inteligencia Artificial para VideojuegosInteligencia Artificial para Videojuegos
Inteligencia Artificial para Videojuegos
 
Resolutor automático y agente inteligente
Resolutor automático y agente inteligenteResolutor automático y agente inteligente
Resolutor automático y agente inteligente
 

Percepción

  • 2. ● Para que un agente pueda moverse bien, debe abrirse al mundo y percibir la realidad Percepción 2 Motivación “Poca observación y mucho razonamiento llevan al error. Mucha observación y poco razonamiento llevan a la verdad” - Alexis Carrel
  • 3. ● Según Millington, la percepción (conexión entre el agente y el mundo de juego) es lo que más esfuerzo cuesta desarrollar y depurar en IA para videojuegos ○ Sobre todo si construimos un sistema de simulación de sentidos físicos Percepción 3 Motivación
  • 4. ● En los videojuegos más primitivos apenas había “percepción” como tal ○ Ej. En los clones de Pong con oponentes controlados por ordenador, la raqueta “sabe” donde está la pelota y se mueve en consecuencia ● En los 90 aparecen los primeros sistemas de simulación de sentidos físicos ○ En Goldeneye 007, los enemigos podían “ver” a sus compañeros muertos y se alarmaban por ello Percepción 4 Hitos históricos “Antes de simular… intenta falsear”
  • 5. ● Muchos personajes de videojuego en realidad son omniscientes ○ Ej. Siempre “saben” donde está el jugador ○ El comportamiento, eso sí, se diseña para simular la ilusión de que no saben nada y necesitan ver ○ Aunque el personaje pueda verte, sólo te perseguirá si te acercas lo suficiente… fingiendo que realmente no “te ha visto” hasta entonces ○ Esto está entre el Diseño y la IA, porque los personajes no tienen sentidos, pero fingen tenerlos Percepción 5 Hitos históricos
  • 6. ● En títulos como Splinter Cell, Thief: The Dark Project, y Metal Gear Solid, todo se basa en el sigilo ○ Que los agentes inteligentes vean únicamente objetos bien iluminados es la base de estos juegos ● Cada vez está más presente en los juegos… ○ Pronto veremos percepción sensorial integrada también en géneros como estrategia, rol y plataformas (acción) Percepción 6 Hitos históricos
  • 7. ● Para simular los sentidos de un NPC extendemos el clásico mecanismo de paso de mensajes ○ Ej. Un gestor de eventos simple puede notificar que hay ruido a los NPCs que estén en una habitación ○ Para escalar y centralizar esto, surge la necesidad de desarrollar un gestor sensorial ● Revisaremos técnicas para cada sentido ○ Vista ○ Oído ○ Tacto, olfato y otros Percepción 7 Gestión sensorial SENSE MANAGEMENT
  • 8. ● La solución obvia es la proyección de rayos de toda la ida: ver si hay línea de visión ○ La vista no dobla esquinas, funciona recibiendo fotones en línea recta y eso es muy característico ○ Habitualmente se ignora el hecho de que la luz puede rebotar, que existen los espejos, etc. ● El problema de los rayos es que no escalan muy bien y se vuelven casi intratables ● Además, si nos preocupa la precisión, conviene implementar nosotros mismos los detalles de nuestro gestor sensorial Percepción 8 Vista RAY CASTING
  • 9. ● Debe ser sofisticado: el jugador se dará cuenta si la vista del NPC sólo es “fingida” ○ Se utilizan conos de visión (220º en horizontal, 60º para simular la atención; y 120º en vertical), así como líneas de visión y distancias máximas de visión (en relación al tamaño del objeto a detectar) ○ Es instantánea, pero no llega al infinito para que no parezca tenga “demasiada buena vista”; al igual que ciertos juegos nos permiten camuflarnos o escondernos en zonas oscuras del entorno ■ Ej. Ghost Recon Percepción 9 Vista
  • 10. ● No hace falta simular cómo rebotan las ondas sonoras, se atenúan, se desplazan a distinta velocidad según el medio, y llegan a nuestros oídos... ○ Ej. Barrito de elefante vs. Chillido de murciélago ● A menudo simplemente se avisa a todos los personajes que comparten localización con aquello que produce el ruido Percepción 10 Oído
  • 11. ● Partimos de que un videojuego normal no requiere estos sentidos ni en el jugador ● El tacto podría verse como ¿una colisión? ○ Un sistema de colisiones que “avise” al agente ● El olfato ‘virtual’ se ha explorado poco (Ej. Caza) ● Se podría probar a diseñar para el gusto ‘virtual’ o sentidos ficticios ○ Ej. “Sentido arácnido” de Spider-Man Percepción 11 Tacto, olfato y otros
  • 12. ● Ejemplo Percepción 12 Modelo de gestión sensorial regional * Un gestor sensorial basado en regiones esféricas de influencia La modalidad hace referencia a cada sentido (vista, oído, etc.)
  • 13. Percepción 13 Ejemplo * La intensidad es la fuerza original de la señal por la atenuación (valor < 1.0) elevada a la distancia que hay entre esta y el sensor
  • 14. Percepción 14 Ejemplo * sendSignals se ejecuta en todos los ticks, para asegurarse de enviar todas las notificaciones que debían recibirse en este instante (o en instantes ligeramente anteriores) * De instante anterior a instante posterior
  • 15. ● Interfaz y clases para modalidades concretas ○ Ej. La vista Percepción 15 Ejemplo * Recordad que es una interfaz, ¡ojo! * Clase que implementará la interfaz Modality
  • 16. ● Más interfaces para sensores y señales ○ Y estructura auxiliar para la cola de notificaciones Percepción 16 Ejemplo
  • 17. ● Es necesario trabajar con API de bajo nivel ● Raycast, que usa RaycastHit ○ Proyección de rayos de la simulación física ● Collider, que usa Collision ○ Detección de colisiones entre cuerpos rígidos (o si sólo es un trigger, solapamiento entre objetos) Percepción 17 Ejemplo en Unity
  • 18. ● ¿Cómo funciona la vista en Splinter Cell? A. Los agentes ven lo que esté en línea de visión B. Los agentes sólo ven cosas que estén iluminadas C. Los agentes ven gracias a un sistema de colisiones D. Los agentes sólo ven los fotones simulados ● Desarrolla tu respuesta (en texto libre) Percepción 18 Participación
  • 19. * Excepto el contenido multimedia de terceros autores Federico Peinado (2019-2023) www.federicopeinado.es Críticas, dudas, sugerencias...