domingo, 20 de abril de 2008

Inauguración

¡¡Buenas y bienvenid@s!!

Somos dos estudiantes de Ingeniería Informática de la Universidad de Alicante y como proyecto de fin de carrera (PFC) estamos desarrollando un simulador de educación vial realista en un entorno tridimensional con simulación física.

Los motivos principales que nos han animado a abrir este blog son para empezar, que sirva a nuestros profesores de monitorización de la actividad del proyecto y como incentivo de generación de documentación. Por otro lado, aun habiendo bastante documentación de los motores 2D/3D y físico, no hay muchos ejemplos, de modo que cualquier problema (y su solución) que encontremos al utilizar Irrlicht y Open Dynamics Engine (ODE) lo publicaremos aquí, como por ejemplo: la coordinación entre la física (ODE) y el render (Irrlicht), el sistema de ventanas 2D (Irrlicht), etc.



Breve descripción del proyecto

Simulador de Conducción

Se pretende implementar un simulador de conducción realista en un entorno tridimensional con simulación física. El propósito es servir de ayuda para el aprendizaje en la educación vial. Por ello se centrará la atención en conseguir una simulación que se ajuste a la realidad en la mayor medida posible, tanto del entorno como del vehículo.

El vehículo tiene dos enfoques importantes en su implementación. Por un lado tenemos el reto de conseguir una configuración de la simulación física que se ajuste a la realidad del mundo en el que vivimos, y dada la complejidad que muestran los motores de simulación física actuales supondrá una gran dedicación llegar a comprender todas las variables que entran en juego para un acabado lo más fiel posible. Por otro lado tenemos todas las características propias del vehículo con las que el usuario debería poder interactuar: uso del volante y cambio de marcha, indicadores del salpicadero, configuración de espejos retrovisores, uso del cinturón, activación de luces y parabrisas... Incluso sería muy interesante llegar a implementar características como la posibilidad de revisar el estado del coche (aceite, refrigerante..., dureza de los amortiguadores), pinchazos y reventones de rueda o un piloto averiado.

Respecto al entorno, se centrará la atención en la configuración de la señalización vial: carreteras, señales de tráfico, semáforos (su estado y sincronización), agentes de policía, etc. Además será necesario incorporar a la simulación elementos dinámicos y ajenos al usuario como tráfico o peatones. Y de forma ideal añadir efectos climáticos, como la posición del sol o entornos de lluvia y nieve, donde la visibilidad y comportamiento del vehículo son especialmente relevantes.


Editor de escenarios basado en mapas

Teniendo claro el propósito del simulador, cobra cierta importancia la posibilidad de realizar la simulación en entornos virtuales que representen localizaciones reales, aportando así una experiencia más cercana y familiar a la realidad. Para ello entra en juego el diseño de un editor que facilite la tarea de recrear en 3D la realidad por la que nos movemos. Un buen comienzo es partir de un mapa 2D del entorno, dado que actualmente disponemos de aplicaciones online que nos facilitan la obtención de dichas imágenes.

El editor deberá ofrecer herramientas para que a partir de dichas imágenes sea posible definir el entorno y sus límites para el simulador: definir carreteras, edificios, parques, zona montañosa... Así como la posibilidad de poder modificar el relieve del terreno. Otro tipo de herramientas del que debe estar dotado es de toda la colección de señalización vial. Ya que no parece posible la obtención de dichos elementos desde los mapas, será tarea del usuario del editor, la correcta colocación de éstos en el entorno.


Implementación


Tanto el simulador como el editor estarán basados en el motor gráfico Irrlicht, ya que éste proporciona la recreación de entornos tridimensionales, entornos 2D y entorno de Ventanas, todo ello integrable simultáneamente y de alta calidad visual. Además soporta un gran número de formatos gráficos tanto de objetos 3D como de imágenes 2D, con lo que da libertad e independencia en lo referente al diseño visual.

La física estará basada en el motor ODE, el cual nos aporta simulación física de objetos rígidos de forma bastante óptima y con buen nivel de precisión.Para el sonido, lo más práctico será echar mano del proyecto IrrKlang, el cual pertenece a los desarrolladores del motor gráfico Irrlicht, y tenemos asegurada su sencilla integración y su facilidad de uso por semejanza en estructuras de APIs.

Sigue leyendo >