Cross-platform development to the next level: cocos2d-iphone with JavaScript

2 comentarios

Después de alguna que otra prueba con Unity y con CoronaSDK para desarrollar juegos en modo "cross-platform", esto es, desarrolla una vez y despliega en iOS y Android, hemos decidido darle una oportunidad a una nueva tecnología que promete y mucho: cocos2d-iphone with JavaScript.

La teoría es la siguiente: utiliza javascript para desarrollar tu juego, y luego una máquina virtual de javascript interpreta tu código (SpiderMonkey) y acaba invocando el código nativo (cocos2d-iphone).

Esta interpretación y ejecución de código nativo se produce gracias a unos "proxies" o "glue code" que están incorporados en cocos2d-iphone a partir de su versión 2.1. Este código se autogenera gracias a un proyecto del creador del cocos2d, Ricardo Quesada, y que está disponible en github: JSBindings

Bonito y sencillo, ¿no? Bueno, pues no es oro todo lo que reluce. Para que puedas programar en JavaScript 100%, necesitas que todo el código nativo que vayas a utilizar tenga su correspondiente "glue code" o "proxies". Y claro, quién pueda desarrollar un juego sin crear sus propias clases para comportamientos particulares que tire la primera piedra.

La buena noticia: es posible generar tu propio "glue code" o "proxies" para tus objetos javascript.

La mala noticia: el proceso es para "machos" y la documentación es escasa.

M.