7. The Game Kitchen
Algunos de nuestros juegos…
• Rotor’Scope
https://www.youtube.com/watch?v=_EuxqcJgY6s
• El códex del peregrino
https://www.youtube.com/watch?v=zeIvEIjaXSs
• The Last Door
https://www.youtube.com/watch?v=7gP4ZqUuww0
https://www.youtube.com/watch?v=jefmPVemUJI
9. IA en Videojuegos
• De GOFAI, a robótica, y juegos
Simbólico
GOFAI Robótica
«Fuzzy»
Videojuegos
10. IA en Videojuegos
• Concepto muy amplio
– Animación
– Lógica de juego
– Movimiento
– No necesariamente GOFAI
• Difícil de acotar
• Video descriptivo en 3, 2 ,1…
11. Ejemplos
• Oponente en juego
de mesa
• Animales
• Soldados
• Director de juego
• Tutor
• Comandante
• Compañero
• Extra
• Conductor
• Matchmaker
14. Agentes Interactivos
• El concepto de IA en videojuegos se desvirtúa
• Todo depende del dominio de aplicación
Comportamiento
de un soldado
IA
Diseño
Arte
Testing
15. Agentes Interactivos
• No usar IA cuando queremos hablar de dominio
de aplicación
• La IA de videojuegos no está muy relacionada con
la IA real
– La implementación de soldados enemigos no están
muy relacionado con IA real.
• Se trata de que IA en videojuegos sea divertida
– Se trata de que los oponentes de un juego de tablero
sean divertidos
30. Compañero
Entrada
• Posición del jugador y
su estado
• Entidades cercanas
• Estrutura del terreno
Salida
• Movimiento y
animación
• Acciones de apoyo
• Lineas de diálogo
32. Comandante
Entrada
• Estado de tu base
• Posición de las
escuadras
• Unidades y edificios
enemigos
Salida
• Ordenes de
construcción
• Asignación de
unidades
• Ordenes a las
escuadras
39. Arquitectura
• Una capa es responsable de gestionar todos
los cálculos e información para una
funcionalidad específica en el motor
– Ejemplo: Físicas
• Concuerda más con la estructura del código
• Más fáciles de ver las interdependencias
40. Arquitectura
• Más fáciles de mantener
• Se pueden añadir y quitar más fácilmente
• Mas «multithreadable»
– Y más «corrutinizable»
49. Arquitectura basada en componentes
• Los agentes son entidades «vacías» a rellenar
con componentes
– ¿Qué es un componente?
• Interfaces del agente para acceder a una
funcionalidad del motor
– «Llévame al punto [0.0, -5.0, 7.2]»
• Contienen información local del propio agente
– Ej: su posición actual
50. Arquitectura basada en componentes
Animaciones
Físicas y colisiones
Navegación
Comportamientos
Componentes Sistemas
51. Arquitectura basada en componentes
• El sistema contiene la información común a
todos los agentes
– «Este es el grafo de navegación global»
• Centraliza todos los calculos para todos los
agentes
– «Cálcula todas las peticiones de caminos que has
recibido»
52. Arquitectura basada en componentes
• Más caché friendly
• Más fácil de gestionar los cálculos
• Más difícil de implementar
– Puedes ahorrarte el sistema, y hacer componentes
más «gordos»
– En móviles y consolas es conveniente tener el
sistema centralizado
55. Recapitulando
• La IA en videojuegos no es IA al uso.
– El test de Turing es la diversión
• Agentes Interactivos
– Tareas muy dispares, no sólo es un oponente
– El flujo de información y control va y viene,
muchas interdependencias
• STA no es la manera más adecuada de
conceptualizarlos
• Arquitectura basada en componentes
Animación:
1- Posture
2- Blending/Transitions
3- Mover los huesos.
Físicas:
1- El personajese representa por una cápsula. Paredes a su alrededor
2- Que fuerzas tiene que aplicar
Navegación:
1- Grafo del escenario (conectividad)
2- Camino
3- Siguiente paso
OJO: puede no tener output explicita, puede enviársela a otras
Comportamiento:
Las X son distintos destinos
Elige el siguiente destino al que moverse
Sensing y acting el los niveles inferiores
El thinking va más en los comportamientos