Desarrolla juegos HTML5 en Firefox OS

Desarrolla juegos HTML5 en Firefox OS

Las aplicaciones para Firefox OS están compuestas de una colección de HTML5/CSS/JS que pueden ser hosteadas en tu propio servidor o empaquetadas. Para entender un poco más sobre lo básico del desarrollo de apps para Firefox OS, puedes ingresar a los siguientes links:

Si eliges crear un juego hosteado vale la pena aprender más sobre appcache para hacerlo disponible como juego offline.

Para validar tu app manifest utilice el validador de este link.
Probando tu juego
Utilice primero el simulador disponible en los complementos de Firefox aquí. Este complemento debe ser instalado en una versión actual de Firefox.
Para probar en los teléfonos, puedes ver donde conseguir uno aquí.
Libro sobre creación de aplicaciones para Firefox OS
Para saber más sobre programación para Firefox OS, usted puede bajar la Guía Rápida para Desarrollo en Firefox OS [en].
APIs interesantes para juegos
Al contrario de las apps comunes, los juegos poseen necesidades bien específicas en términos de APIs.
Canvas
Para Firefox OS cuando se trata de la construcción de juegos con gráficos 2D, recomendamos la utilización del API canvas.
Entrada de datos
Además de mostrar cosas en la pantalla del dispositivo, es necesario trabajar con la entrada de datos. La manera más común es utilizando los touch events que están documentados en Touch Events en el MDN. Otras posibilidades son juegos controlados vía acelerómetro cuya API esta en este artículo en el MDN. Aviso, no prueben esa API en el Firefox OS ¡no!.
localStorage
Para guardar datos tales como high score, achievements usted puede utilizar localStorage siendo que localStorage es una API blocking, su juego va a parar de procesar en cuanto los datos son escritos o leidos del storage. Para una mejor performance, utilice una API asíncrona como el IndexedDB.
Existe una biblioteca para Firefox OS que es una versión de API similar a localStorage por eso es asíncrona y construida encima de IndexedDB, esa lib esta disponible aquí en Github.
Bibliotecas
Para juegos sencillos, usted no necesita de nada además de las APIs que ya están disponibles en el Firefox OS. Para proyectos más ambiciosos vale la pena utilizar una biblioteca para evitar quedar reinventando la rueda. Claro que si usted es una empresa produciendo varios juegos con un equipo especializado usted va a preferir construir su propia biblioteca específica para sus necesidades pero para las otras personas que están interesadas en conocer las bibliotecas más famosas para la creación de juegos con HTML5, voy a colocar una lista abajo.
La utilización de las bibliotecas es a criterio de cada persona, pues no lo he probado, sólo hice la lista.
  • Phaser es el framework del momento. Es open source, posee mucha gente contribuyendo y muchos juegos hechos en ella. Esta es una recomendación y funciona bien.
  • CreateJS es una colección de bibliotecas muy completa, compuesta por libs independientes. El demo de EaselJS se ejecuta en Firefox OS.
  • Impact JS es una biblioteca de pago, existe un libro de la editorial O’Reilly sobre lo mismo que es súper bueno.
  • Cocos2d-x es un framework, basado en (Pyglet), escrito en Python para crear juegos en 2d, y presentaciones gráficas. Para crear juegos HTML5 con Cocos2d, recomiendo Cocos2d-JS.
  • Crafty JS
  • Pixi JS
Herramientas
Existen herramientas muy buenas para creación de juegos.
  • Texture Packer es una herramienta óptima para la creación de spritesheets/texture atlas.
  • bfxr es una herramienta para la creación de efectos sonoros para los juegos.
Agradecimiento a Andre Garzia de Brasil por permitirme compartir este artículo con todos ustedes en nuestro idioma español: http://andregarzia.com

2 Comments

Oscar Valenzuela

27 Abril, 2014 at 3:40 pm

Esta genial el post, y me encantaría republicarlo, pero en los feeds aparece solo una parte :S

Reply

Edmo Jeova

29 Abril, 2014 at 11:20 am

Lulu Castillo gran post! ¡Felicitaciones!

Reply

Deja un comentario