Objective-C version for iOS & OS X of Cocos2d. Cocos2d is a framework for building 2D games and graphical applications.
Cocos2D for iPhone is an objective-c framework for building 2D games and graphical applications for iOS devices and Mac OS X computers. Cocos2D for iPhone was ported from the Cocos2D Python-based framework.
"Cocos2D for iPhone" (project name: cocos2d-iphone) is a free and open source project published under an MIT License.
"Cocos2D" (project name: cocos2d) is the "grandfather" of all Cocos2D game engines. Cocos2D is written in Python and allows developers to create games and applications for Windows, Linux and Mac OS X. Cocos2D is published under a BSD License.
There are a number of other Cocos2D based game engines, the most actively updated and most widely used are:
- Cocos2D-X: written in C++ for iOS, Android and other platforms
- Cocos2D-Javascript: written in JavaScript for web browser games
- Cocos2D-Android and Cocos2D-Android-1: written in Java for Android
ShinyCocos (Ruby), CocosNet (C#) and Cocos2D for Windows (C++) haven't been updated in a long time, these Cocos2D versions are considered defunct. Cocos3D is a 3D extension to Cocos2D. See the Cocos2D Game Engines list for a complete overview.
The immense popularity of Cocos2D for iPhone has the effect that most developers use the term "Cocos2D" when referring to the Cocos2D for iPhone framework.
It is recommended to use the following tags appropriately:
- Use the cocos2d-python tag on questions referring to the Python based framework
- Use the cocos2d-iphone tag on questions referring to the Objective-C based framework
- Use the cocos2d-x tag on questions referring to the C++ based cross-platform framework
- Use the cocos2d-js tag on questions referring to the JavaScript based framework
- Use the cocos2d-x-for-xna tag on questions referring to the C#-MonoGame Framework.
- Use the cocos2d-android tag on questions referring to the Java based frameworks
- Don't use any of the above tags together in the same question, unless your question refers to more than one Cocos2D engine. For example, if you ask "How to port from cocos2d-iphone to cocos2d-x?" you should include both cocos2d-iphone and cocos2d-x tags.