Cocos2D-X
Cocos2D-X is a high-performance cross platform 2D/3D game engine that supports multiple platforms such as iOS, Android, WinXP/7/8, WP8, BlackBerry, MeeGo, Marmelade, WebOS, Mac OS X. This page will focus entirely on properly configuring this package for initial usage. For other documentation, click here.
Contents
Installation
Install cocos2d-x-srcAUR from the Arch User Repository.
Configuration
PATH Environment Variable
After installation, add /opt/cocos2d-x/tools/cocos2d-console/bin
, and /opt/cocos2d-x/tools/cocos2d-console/plugins/plugin_package
to your PATH environment variable mostly to run the cocos
python2 script to create projects, and also run sdkbox
respectively. Add the following to your respective shell configuration file (~/.bashprofile, ~/.zshenv, etc):
export PATH=/opt/cocos2d-x/tools/cocos2d-console/bin:/opt/cocos2d-x/tools/cocos2d-console/plugins/plugin_package:${PATH}
Python Scripts Workaround
Since some Cocos2D-X scripts use python2
instead of python3
, like sdkbox
, simply calling python2 foo.pyc
will not suffice since other modules will be called with "env python" which could point to python3. To fix this, read here. Don't forget to add /usr/local/bin
, or whichever directory the workaround shell script is installed at, before /usr/bin
in your PATH environment variable. The following should suffice:
export PATH=/usr/local/bin:${PATH}
Here's an example shell script workaround:
/usr/local/bin/python
#!/bin/bash script=$(readlink -f -- "$1") case "$script" in (/opt/cocos2d-x/*|/path/to/project1/*|/path/to/project2/*|/path/to/project3/*) exec python2 "$@" esac exec python3 "$@"
Disable sending usage data
Sending the usage data can be disabled setting enable_stat
to false
in /opt/cocos2d-x/tools/cocos2d-console/bin/cocos2d.ini
:
# sed -e 's/enable_stat=.*/enable_stat=false/g' -i /opt/cocos2d-x/tools/cocos2d-console/bin/cocos2d.ini
Cross Compiling for Android
Install android-ndkAUR, android-sdkAUR and android-sdk-platform-toolsAUR, and also add the following to your shell configuration file:
export NDK_ROOT=/opt/android-ndk export ANDROID_SDK_ROOT=/opt/android-sdk export ANT_ROOT=/usr/bin
The android
tool should suffice to fetch the SDK platform for a certain android version, however there are also packages in the Arch User Repository such as android-platform
for downloading these SDK platforms.
Updating SDKBOX
Cocos2D-X comes with a tool called sdkbox
for integrating third party software development kits into projects easily. To update this tool, you must have read/write/execute access to /opt/cocos2d-x/tools/cocos2d-console/plugins/plugin_package
and the following files in that directory: sdkbox
, sdkbox.bat
, sdkbox.pyc
For a single-user configuration, executing the following will suffice:
# chown $USER:$USER /opt/cocos2d-x/tools/cocos2d-console/plugins/plugin_package/{,sdkbox,sdkbox.bat,sdkbox.pyc} $ sdkbox update
See also
- Official Programmers Guide
- Cocos2D-X Developer Guide
- Official API Referenece Guide
- Enabling Immersive Mode for Android - See Cookiebit's answer.
- Texture Rendering + Blur Tutorial
- Particle2DX - Cocos2D-X Particle Generator