Aprende a crear juegos en HTML5 Canvas

jueves, 16 de julio de 2015

Experiencias y colaboraciones

El fin de semana pasado estuve trabajando con mi equipo en el port de un juego de plataformas en JavaScript a móviles, y nuestra emoción se convirtió en terror al ver los cuadros por segundo caer en picada al empezar el juego. Después de un rato de investigación, descubrimos que el origen del problema venía de la forma en que se manejaban las colisiones con el mapa en mundos grandes. Aun no estamos seguros si se trata de un problema de recursos limitados en estos dispositivos, o de la forma en que este código era compilado por el procesador que usamos, pero lo cierto era que se trataba de un problema crítico a ser corregido. Al final logramos optimizar las colisiones con el mapa, y el juego regresó a un flujo óptimo.

¿Por qué les cuento esta historia? Descubrí que el método que les he enseñado aquí anteriormente "funciona bien", pero si los mapas se hacen muy grandes, pueden impactar el rendimiento del juego, además que no es la forma más óptima de procesar las colisiones con el mapa. Pero no deben preocuparse, ya que agregaré un apéndice sobre la forma de revisar estas colisiones de la forma optimizada que descubrí, para que sus juegos futuros no sufran dichos problemas. Lo cierto es que, además, tuve que reescribir parte del código para que funcionara de forma óptima (Una vez más, por no seguir ciertos estándares).

Y hablando de estándares, si últimamente me han visto poco activo por acá, es debido a que estoy reestructurando todos los códigos del sitio, precisamente para acoplarme a los correctos estándares y dejar de tener problemas como este. Lo se, realizar una tarea de tal magnitud toma mucho tiempo y se ve poco reflejado, y lo que realmente todos desean es aprender nuevos temas, pero confíen en mi, esto es lo mejor por el bien de todos ustedes, y las futuras generaciones. Esperen próximamente saber más de todas estas mejoras.

Finalmente, aprovecho este acercamiento con ustedes, para promocionar un proyecto que fue liberado hace poco en el cual yo colaboré en el lado de la programación. Su nombre es "Flippy Turtles", disponible para iOS y Android, surgido el concepto en un Jam hace poco más de un año. Basado en la idea del entonces popular "Flappy Bird", tomamos de referencia los gráficos de un juego antiguo y creamos con ellos un juego que se podría considerar como "difícil de amaestrar", pero divertido y adictivo, si logramos conseguir nuestro objetivo. Los invito a que lo juzguen por ustedes mismos descargándole en los siguientes enlaces:


Espero sus comentarios. Seguiré trabajando en las mejoras para el blog. ¡Felices códigos!

4 comentarios:

  1. Wow, muero por saber la manera de optimizar dichos procesos ya que portar un juego HTML5 a un dispositivo móvil es esencial para la mayoría y así tomar mayor terreno, espero que luego de ello nos des algunas recomendaciones para poder hacer un apk con el proyecto.

    Felicidades y muchas ganas, progresivamente estaré revisando nuevamente los temas de tu web. Gracias :)

    A probar Floppy Turtles :p

    ResponderEliminar
  2. Como migraron a móvil, usaron phonegap o cocoonjs ?

    ResponderEliminar
    Respuestas
    1. CocoonJS, ya que está optimizado para Canvas.

      Eliminar