Cocos2d-x is a suite of open-source, cross-platform, game-development tools used by millions of developers all over the world.
cocos2d-x is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications. It is based on cocos2d-iphone, but instead of using Objective-C, it uses C++. It works on iOS, Android, macOS, Windows and Linux.
Cocos2d-x Framework Architecture:
- Easy to use
- Community supported
Git user attention
Clone the repo from GitHub.
$ git clone https://github.com/cocos2d/cocos2d-x.git
After cloning the repo, please execute
download-deps.pyto download and install dependencies.
$ cd cocos2d-x cocos2d-x $ python download-deps.py
cocos2d-x $ git submodule update --init
Download stable versions
Documentations and samples
- All Docs in a single place!
- Online API Reference Note that Cocos2d-x and Cocos Creator have different API set
- Programmers Guide
- Latest Release Note
- Scene management (workflow)
- Transitions between scenes
- Sprites and Sprite Sheets
- Effects: Lens, Ripple, Waves, Liquid, etc.
- Actions (behaviours):
- Transformation Actions: Move, Rotate, Scale, Fade, Tint, etc.
- Composable actions: Sequence, Spawn, Repeat, Reverse
- Ease Actions: Exp, Sin, Cubic, Elastic, etc.
- Misc actions: CallFunc, OrbitCamera, Follow, Tween
- Basic menus and buttons
- Integrated with physics engines: Box2d and Chipmunk
- Particle system
- Skeleton Animations: Spine and Armature support
- Fast font rendering using Fixed and Variable width fonts
- Support for .ttf fonts
- Tile Map support: Orthogonal, Isometric and Hexagonal
- Parallax scrolling
- Motion Streak
- Render To Texture
- Touch/Accelerometer on mobile devices
- Touch/Mouse/Keyboard on desktop
- Sound Engine support
- Integrated Slow motion/Fast forward
- Fast and compressed textures: PVR compressed and uncompressed textures, ETC1 compressed textures, and more
- Resolution Independent
- Open Source Commercial Friendly(MIT): Compatible with open and closed source projects
- OpenGL ES 2.0 (mobile) / OpenGL 2.1 (desktop) / metal(macos and iOS) based
- Mac OS X 10.7+, Xcode 8+
- or Ubuntu 14.04+, CMake 3.1+
- or Windows 7+, VS 2015
- Python 2.7.5+(NOT Python 3)
- NDK r16+ is required to build Android games
- Android Studio 3.0.0+ to build Android games(tested with 3.0.0)
- JRE or JDK 1.6+ is required for web publishing
- iOS 8.0+ for iPhone / iPad games
- Android 3.0.0+ for Android
- OS X v10.9+ for Mac games
- Windows 7+ for Win games
Should set up environment before starting a new game or running tests
$ cd cocos2d-x $ ./setup.py $ source FILE_TO_SAVE_SYSTEM_VARIABLE
Should invoke this script if using linux system
$ cd cocos2d-x $ ./install-linux-deps.sh
$ cd cocos2d-x $ mkdir build $ cd build $ cocos run --proj-dir .. -p [mac|win32|android|linux|ios]
How to start a new game
$ cd cocos2d-x $ ./setup.py $ source FILE_TO_SAVE_SYSTEM_VARIABLE $ cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR $ cd NEW_PROJECTS_DIR/MyGame $ mkdir build $ cd build $ cocos run --proj-dir .. -p [mac|win32|android|linux|ios]
If need to debug program, then it is more convinent to use IDE to run and debug it. All platforms other than Android can use CMake to generate corresponding project file. Can refer to Detail CMake Guide for detail information.
For Android, the Android Studio project file lies in
PROJECT_DIR/proj.android. Can just use Android Studio to import the exsting project file.
Spreading the word!
You can help us spread the word about cocos2d-x! We would surely appreciate it!
- Talk about us on Facebook! Our Facebook Page
- Tweet, Tweet! Our Twitter
- Read our Blog and promote it on your social media.
Where to get help
- English Forums
- Bug Tracker
- API Reference.
- Latest Release Note
- Discord Channel
cpp-testsproject. This project is our basis for testing. Use this project to learn how we implement the functionality of the engine. This project is located in cocos2d-x_root/build.
Contributing to the Project
Cocos2d-x is licensed under the MIT License. We welcome participation!
Did you find a bug? Do you have feature request? Do you want to merge a feature?
- Forum: http://discuss.cocos2d-x.org
- Twitter: http://www.twitter.com/cocos2dx
- Weibo: http://t.sina.com.cn/cocos2dx
Want an awesome editor?