Publication:
Acceso manual e interfaz gráfica para el juego AI-LIVE

Research Projects
Organizational Units
Journal Issue
Abstract
Este Proyecto de Fin de Carrera (Acceso manual e interfaz gráfica para el juego AI-LIVE) consiste en la creación de un cliente GUI (Graphic User Interface – Interfaz Gráfica de Usuario) que implemente una interfaz gráfica utilizando un motor gráfico 3D. Esta interfaz gráfica debe permitir al usuario observar cómo interactúan los personajes con su entorno en el juego AI-LIVE, desarrollado anteriormente como Proyecto de Fin de Carrera por otros alumnos de la Universidad Carlos III de Madrid. El juego sigue el modelo cliente-servidor, de manera que el servidor es el encargado de asignar los turnos a los clientes. También éste se encarga de actualizar el estado de las entidades y los actores según las acciones solicitadas y enviárselo a los clientes para que puedan desarrollar su labor. Además, el servidor consta de un motor emocional, encargado de controlar las emociones, los gustos y las relaciones de cada actor cuando establece una comunicación verbal con otro actor dentro del escenario. Hasta el momento existen cuatro tipos de clientes: el cliente CLIPS decide qué acción quiere realizar utilizando un sistema de IA (Inteligencia Artificial) basado en reglas, el cliente Prodigy trata de solucionar un problema mediante un planificador de tareas, el cliente manual está basado en el cliente CLIPS y en él es el usuario el encargado de elegir la acción que desea realizar, y el cliente GUI es el encargado de mostrar la interfaz gráfica 2D que representa los estados del juego. Inicialmente AI-LIVE tenía desarrollado un cliente GUI con una interfaz gráfica en 2D implementada en lenguaje C. El propósito de este Proyecto de Fin de Carrera es desarrollar un cliente GUI que implemente una interfaz gráfica en 3D, que introduzca mejoras en la visualización respecto a la interfaz gráfica 2D anterior, permitiendo representar el comportamiento de los actores en el juego bajo una perspectiva más similar a la realidad. Para la implementación de la interfaz gráfica se ha utilizado una herramienta de software libre para el desarrollo de aplicaciones de visualización 3D en tiempo real. Concretamente, esta herramienta es el motor gráfico OGRE3D, que utiliza una interfaz de programación en lenguaje C++ para la codificación de aplicaciones, siendo de gran utilidad en el desarrollo de este tipo de programas gráficos, al tratarse de un lenguaje orientado a objetos. La función principal de la interfaz gráfica es, una vez que el cliente GUI ha recibido el estado del juego enviado por el servidor en el turno de cada cliente, generar las entidades en caso de que sean nuevas, actualizarlas si han sido modificadas o eliminarlas si ya no existen. Este proceso requiere una sincronización perfecta entre el servidor y el cliente GUI, ya que si no existiera tal sincronización, se producirían errores en la representación gráfica.
Description
Keywords
Interfaces gráficas de usuario, Videojuegos, Inteligencia artificial
Bibliographic citation