Al querer hacer un videojuego multiplataforma nos encontramos con la problemática de tener que implementar el mismo código en el lenguaje y SDK de turno. Que si Objetive-C para IOS y OSX, Java para Android, C# para Windows Phone, etc.
Duplicar trabajo y esfuerzos, lo ideal sería escribir código una vez independiente de la plataforma y poder compilar una versión para cada una de ellas sin tener que tocar el código. Esa es la idea de Cocos2D-x.
Cocos2D-x surgió de la idea de Cocos2D-iphone una biblioteca para crear juegos 2D de forma sencilla para IOS. A su vez Cocos2D-iphone había surgido de Cocos2D, la biblioteca original escrita en Python sobre Pyglet. Como vemos ha surgido toda una familia relacionadas a los conceptos de Cocos2D.
A nosotros nos interesa la versión Cocos2D-x puesto que esta versión es compatible con las plataformas más populares sin tener que tocar el código del juego que estará escrito en C++, el lenguaje universal. Estas son las plataformas soportadas por Cocos2D-x.
-
"o" para las que funcionan correctamente
-
"i" para las obsoletas o des actualizadas.
-
"w" para las versiones en progreso
Platforms | C++ | Lua | Javascript | |
---|---|---|---|---|
Mobile Platforms | iOS | o | o | o |
Android | o | o | o | |
WindowsPhone8 | o | |||
Bada | i | |||
BlackBerry | o | |||
MeeGo | i | |||
Marmalade | o | |||
Desktop Platforms | win32 | o | o | o |
Linux | o | o | ||
Win8 Metro | o | |||
Mac OS X | o | o |
Para las versiones web hay que usar Cocos2D-html5 y cuenta con las siguientes versiones:
Browsers | Canvas | WebGL |
---|---|---|
Chrome | o | w |
FireFox | o | w |
IE 9 and above | o | |
Other HTML5-ready Browsers | o |
Como vemos sin duplicar esfuerzos podemos tener nuestro juego para diversos sistemas operativos y con un poco más su versión web en HTML5. Biblioteca ideal para el que quiera realizar juegos para varias plataformas sin gastar dinero en licencias ya que Cocos2D-x es software libre.
Cocos2D-x | Sitio Oficial