Ahora que estamos a punto de sacar al mercado nuestro producto Rita la lagartija, merece la pena echar la vista atrás y repasar lo que ha sido el proceso de desarrollo de esta historia interactiva para niños (aká, "cuento infantil").
Y es que cuando uno se embarca en la construcción de un proyecto de estas características, lo primero que le viene a la mente es: "¿Qué voy utilizar que me facilite la vida?". Comienza pues el proceso, bien llamado "googlear", en el que básicamente pasan por delante de tus ojos decenas de webs, blogs, referencias, preguntas, respuestas, etc etc etc. Idealmente, la solución a la pregunta pasa por el siguiente timeline:
- Anotar referencias de herramientas y frameworks
- Descargar dichas referencias y frameworks
- Evaluarlas
- Decidir con quién te casas...
Puesto que nunca se tiene tiempo infinito, al final has de hacer una apuesta y arriesgarte con algo sin estar completamente seguro (a no ser que ya tengas experiencia en el uso de varias de ellas). Para ello uno se hace básicamente tres preguntas: ¿Para qué mercado lo voy a publicar (AppStore, GooglePlay, etc)? ¿Para qué terminales lo quiero desarrollar (Smartphone, Tablet, etc)? ¿Qué tipo de tecnología necesito?
En nuestro caso las respuestas son: 1. iOS, 2. iPad, 3. OpenGL. El punto 1 y 2 lo dominamos sin problemas, pero el punto 3 es donde estamos más flojos. Basado en estas premisas, nuestra decisión ha sido la de utilizar Cocos2D como framework de desarrollo de nuestro cuento. Sin duda, una gran experiencia teniendo en cuenta nuestras carencias y el resultado.
Cocos2D es un framework de desarrollo basado en OpenGL mediante el cual se pueden implementar la mayoría de juegos y aplicaciones 2D sin ningún tipo de problemas. Incorpora soporte para el motor de físicas Box2D que es perfecto si lo necesitas. La curva de aprendizaje es baja y te permite implementar bastantes de las interactividades que este tipo de proyectos necesitan, además de ser fácilmente extensible, ya sea en funcionalidad o complejidad gráfica (OpenGL).
Pero claro, Cocos2D no deja de ser un framework de desarrollo, pero una vez revisado el material gráfico para el proyecto, te das cuenta que necesitas alguna herramienta para construir las diferentes escenas (en nuestro caso, del cuento interactivo). Con la experiencia de LevelSVG y CocosBuilder, hemos decidido utilizar LevelHelper y SpriteHelper.
Estas dos herramientas te permiten definir visualmente el aspecto que van a tener tus escenas. Es como reconstruir el archivo PSD de Photoshop original pero orientado a Cocos2D. Digo el archivo PSD de Photoshop porque normalmente los diseñadores e ilustradores utilizan esta herramienta para construir y transmitir su material.
Ambas herramientas son de pago, aunque su precio es pequeño en comparación con lo que aportan. El autor da un soporte muy valioso, respondiendo al e-mail casi al momento en caso de duda. LevelHelper te permite definir las escenas y las características de los elementos que forman parte ellas (físicos o no), además de incorporar características comunes en este tipo de juegos/aplicaciones (animaciones y parallaxes). Aunque tiene algunas carencias, como el soporte para UI's, la herramienta evoluciona muy rápidamente en el tiempo. SpriteHelper te permite generar los atlas de imágenes (Sprite Sheets) tan valiosos para un buen rendimiento de tu juego/aplicación (es una herramienta similar a TexturePacker o Zwoptex, menos potente, pero imprescindible para usar LevelHelper).
Para acabar, que nadie se piense que mediante el uso de Cocos2D,LevelHelper y SpriteHelper las cosas se mueven o interactúan sólas. ¡La lógica del juego/aplicación la construyes tú!
M.