Para poder trabajar en una wiki sobre el engine de renderizado Ogre3D he tenido que aprender a utilizar la biblioteca en algún sitio. Estos conocimientos también son indispensables para el desarrollo de Sion Tower. Lo cierto es que debería poner un disclaimer como una casa advirtiendo mi escasa experiencia porque aún estoy aprendiendo. En cualquier caso, en este artículo enumero las fuentes que he utilizado acompañadas de las razones por las que me han sido útiles. ¿Quién sabe? Puede que alguien conozca una fuente nueva.
Por supuesto, todo el contenido (texto, diagramas, ejemplos) de IberOgre es original y libre, no está copiado de ningún sitio. No obstante, es lógico que haya aprendido de otras publicaciones. ¿Cómo si no?
Wiki oficial de Ogre3D
La fuente más evidente de todas, su amplísimo catálogo de artículos, tutoriales y referencias le otorgan un valor indiscutible. Lógicamente, es la web que más consulto para escribir IberOgre y desarrollar Sion Tower. No sólo se puede aprender a manejar el engine de renderizado sino que entre sus páginas se encuentran las claves para componer un flujo de trabajo decente.
No obstante, hay que reconocer que no es oro todo lo que reluce, la wiki tiene ciertos puntos negros que no me acaban de agradar. Para empezar, se le da demasiado soporte al desarrollo en Windows con IDEs como Microsoft Visual Studio. Se echa de menos soporte para herramientas y Sistemas Operativos libres, cosa que trato de suplir en IberOgre. El hecho de querer entrar en materia hace que explique las bases de Ogre más tarde de lo que debiera. Siempre se hereda de BaseApplication, clase encargada de inicializar las bibliotecas pero no se nos explica su funcionamiento hasta el sexto tutorial.
A continuación, enumero las zonas de la wiki que me han sido de mayor utilidad:
Por supuesto, no se me podían olvidar ni el foro (con sabios usuarios dispuestos a ayudar) ni la documentación online.
Pro OGRE 3D Programming
Pro OGRE 3D Programming era el único libro sobre Ogre hasta hace muy poco. No es precisamente barato (~$45) pero nos ayuda a comprender el funcionamiento del motor bastante bien. Cubre prácticamente la totalidad de los apartados con nivel de detalle aceptable. El mayor problema con el que me he topado a la hora de trabajar con Ogre es el gran número de formas de abordar un mismo problema. No sabía qué ventajas e inconvenientes conllevaba cada alternativa y este libro me ha ayudado a aclararme las ideas.
Diría que es un buen complemento a la ligereza de los tutoriales de la wiki oficial. No obstante, la escasez de ejemplos es importante. No hay mejor manera de entender conceptos complejos que con una sesión práctica. No sólo escasean los ejemplos sino que éstos son de juguete. A pesar de todo sigo diciendo que es una buena referencia complementaria.
OGRE 3D 1.7 Beginner's Guide
Recientemente se ha puesto a la venta el segundo libro de nuestro motor favorito, OGRE 3D 1.7 Beginner's Guide. Es una obra más económica (35€) que se aproxima al estilo de trabajo de la wiki oficial (BaseApplication). Su principal ventaja es la gran cantidad de ejemplos que incluye, siempre muy visuales. Tiene un flujo de trabajo muy atractivo: enunciado del problema, exposición de la técnica con un caso práctico, muestra de resultados y explicación sobre lo que se acaba de hacer.
Sufre del problema de dejar el fundamento de Ogre para los últimos compases pero es una buena guía de iniciación para la siempre dolorosa toma de contacto. Ayuda a ver las cosas con más cercanía y puede proporcionar la confianza necesaria para seguir.
Game Engine Architecture
Game Engine Architecture es un libro de los que hacen daño al transportarlo en la mochila pero me tiene completamente fascinado. Es un viaje por todos los subsistemas que componen un motor para un videojuego más o menos genérico. Abarca desde el más bajo de los niveles hasta el más alto y considera todas las plataformas (PC y consolas). Temas como la gestión de memoria, el subsistema de colisiones, el renderizado o la animación tienen apartados dedicados. Su elevado precio (~$60) hace que nos lo pensemos dos veces pero merece la pena.
Es tan complejo como extenso y no lo recomiendo para alguien que esté empezando. La ventaja es que no se anda con memeces y directamente pone ejemplos de código perteneciente a videojuegos triple A como Quake o Uncharted. Admito que no ofrece demasiados detalles dentro de cada apartado pero es suficiente para comprender las distintas técnicas a la hora de resolver un problema.
Vuelta a trabajar
Aprovecho para comentar que he abierto una cuenta de Delicious para compartir principalmente enlaces sobre desarrollo de videojuegos que vaya encontrando por la red.
Bueno, dejemos la charla para volver al desarrollo de Sion Tower y la composición de IberOgre. Espero que si buscabas fuentes de información sobre Ogre o el desarrollo de videojuegos 3D en general hayas encontrado lo deseado.