Thursday 10 January 2013

The advantages of Cocos2d


When developing an iPhone game it is advisable, especially as a beginner, to not spend the time and effort needed in order to develop your own game engine. Unless the game needs a very advanced feature, the engines currently available on the market (both open source and commercial) are up to the task.


Tank Rampage uses the open source framework Cocos2d. Cocos2d for iPhone has a few major advantages over the alternatives:

  • It’s free & open source: unlike other alternatives such as Corona or Unity, Cocos2d is free of charge. Moreover, because all code is freely available, it’s very easy to extend Cocos2d’s functionality and add a feature it might not support out of the box;

  • It supports OpenGL ES 2.0. Which means it’s fast and that shaders are supported, what allows for all kinds of visual effects;

  • It’s has a very large and supportive community. Over 3800 games have been made using Cocos2d, meaning that there is a wide array of documentation, tutorials and programs that work with Cocos2d, as well as active forums;

  • Its API is easy to understand, yet it has a wide variety of features (of which we’ll take more about later);

  • Its easy API is part of a larger family of Cocos2d products: Cococs2d-HTML5 and Cocos2d-x. Cocos2d-x is a C++ adaptation of Cocos2d for iPhone, and is therefore suitable for cross platform games –as both iOS and Android are able to run Cocos2d-x. This also means that when planning to make a cross platform game, it’s better to start development in Cococ2d-x. Since Tank Rampage started out as an iPhone only project, we have to change all Cocos2d code to Cocos2d-x code when porting our game (More on this subject later).

  • It has integrated physics support. Cocos2d comes with both the Chipmunk and Box2d engines. Tank Rampage uses Box2d;


1 comment:

  1. A very good and informative article indeed. It helps me a lot to enhance my knowledge, I really like the way the writer presented his views.
    cocos2d game development

    ReplyDelete