When comparing Cocos2d-x and Cocos Creator vs Orx, the Slant community recommends Orx for most people. In the question“What are the best 2D game engines?” Orx is ranked 5th while Cocos2d-x and Cocos Creator is ranked 10th. The most important reason people chose Orx is:
Powerful config system that makes orx data-driven and provides an easy to use load/save system.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro A proven engine for mobile development
25% of iPhone games are made using Cocos2d-x.
This means you will not be alone in development, and will have access to a large community. You'll know you are developing for an engine that works.
Pro Good documentation
Documentation includes a programming guide, API reference, video tutorials and massive reference test code project showing all functions and giving working code to the user.
Pro Supports 3D models with skeleton animation
A new feature since Cocos2d-x v3.1 is support for 3D models (in your 2D game), not only this but support for skeleton animations is included too! This awesome feature allows for impressive characters in your game along with easier, more fluid and realistic animations.
Pro Great script language support
It supports Lua and Javascript with full feature support.
Especially with Cocos2d-JS you can develop games cross web and native, and the native solution have great performance with JS Bindings, much better than hybrid solution.
Pro Highly active community for questions and support
Cocos2d-x forums are active.
Pro OpenGL hardware acceleration
Pro Future-proof
Cocos2d-x is not only open source but also supported by Chukong Technologies of China and USA.
Regularly updated and adding support for the latest technologies. 2014 has already seen the release of Version 3, a new Cocos Studio development toolkit (optional) and support for new technologies like skeleton animation systems Spine and Adobe DragonBone.
Pro Greater performance than high level APIs
Cocos2d-x is C++ based engine and it has CPU advantages for most platforms because of that. It uses polygonal mesh methods for sprite rendering for using GPU advantages. (You also use quad methods for benefit CPU).
Pro No external dependencies
Because it is based on Pyglet.
Pro One code for all platforms
On top of supporting pretty much all existing platforms (except consoles), Cocos Creator (Cocos's IDE) allows you to write 1 code that runs on Android, iOS, Windows, MacOS and HTML5 (not Linux though).
Pro Easy integration of 3rd party plugins
Through the use of SDKBox you can easily integrate 3rd party SDKs and plugins for each version of Cocos2D (Lua, C++ or JavaScript), you just choose the SDKs to integrate and SDKBox will do the rest.
For example, if you want to add a rating plugin, you use sdkbox::PluginReview::init();
and if you want to add the Vundle Ad Network SDK, you use the one packaged in SDKBox SDKBOX sdkbox::PluginVungle::init();
.
Pro Allows for easy debugging
It has a built-in Python interpreter that allows for easy debugging.
Pro Very good IDE
Cocos Creator (Cocos' IDE) comes with scene editing, UI editor, animations & particle editors and whatnot. It's also easy to use and pretty intuitive if you read the official documentation & tutorials. Way way better than the old CocoStudio.
Pro Great video tutorials
Hundreds of video tutorials available.
Pro Powerful config system
Powerful config system that makes orx data-driven and provides an easy to use load/save system.
Pro Friendly community
Good friendly development community ready to help each other with tips and advice for setting up and best practices.
Pro Automatic hot-loading of resources
Automatic hot-loading of resources upon modification on disk, shortens drastically iteration times.
Pro High performance
Written in C with high emphasis on memory and CPU efficiency.
Pro Supports desktop and mobile
Supports Windows, Linux, Mac OS X, iOS and Android.
Pro Data configuration
Orx is a Data Driven engine that greatly reduces required code. You can configure object definitions, bodies, cameras, sound, animation, event tracks, etc.
Pro Custom shader support
GLSL code can be added straight into data configuration files and can be applied to any texture: background or objects whivh allows for some amazing effects. All GLSL versions are supported, again by providing the shader language version in your configuration file.
Parameters are supported and values over time for shader animation.
Pro Flexible clock system
Clock system that provides time consistency and allows time stretching + high precision timers
Pro Flexible and simple FX
Color and translation FX are simple to configure and apply to objects.
Pro Good animation engine
Includes a chaining graph & custom animation events for synchronization.
Pro Free and open source
Uses the zlib license. Lets you use Orx for free for any kind of projects, even for commercial ones.
Pro Input controls and binding
All input devices are fully supported: Joysticks, Mouse, Gamepad, Keyboard and Touchscreen. Multiple physical devices and be mapped the same binding.
Pro Excellent results on performance benchmark
Rated the fastest engine in the OpenFL’s BunnyMark since October 2015.
Pro Great audio support
Samples for sound effects, or streams for music. All sounds can be groups via audio buses just like in a typical DAW (Digital Audio Workstation).
All sounds can be spatial relative to the camera.
Pro Viewport scheme allowing multiple views
Camera/viewport scheme allowing multiple views displayed with camera translation, zoom and rotation.
Pro Good render support
Fragment (pixel) shader support, render to texture, MRT, easy composition and custom rendering support.
Pro Easy post-processing/compositing for complex visual effects
Pro Integrated runtime profiler
Integrated runtime profiler (with graphical display) to easily spot which parts of your game need to be optimized.
Pro Collision handling and rigid body physics
Pro Screenshot capture tool
Supports .bmp, .png, .jpg, .tga and .dds
Pro Multi-Threading
Pro Great IDE Support
Out of the box Windows support for:
- Visual Studio
- Codelite
- CodeBlocks
- gmake
Out of the box Mac support for:
- XCode
- Codelite
- gmake
Out of the box Linux support for:
- Codelite
- CodeBlocks
- gmake
Pro Well-supported C++ wrapper
Orx provides a excellent c++ wrapper for object oriented design, called: orx/Scroll. You can, of course, roll your own.
Cons
Con Poor support and non-existent community
Up until 2013, this was one of the best engines around. However, since then it was bought by a Chinese company and began stagnating - it's virtually in a slow death. Most developers abandoned Cocos in favor of more modern solutions leaving the community weak and the forums with little or no traffic. Although the Cocos2d-x Forum seems to have a decent community going.
Con No Graphics user interface
Con Modest functionality
Almost all free alternatives are more convenient, faster, and more functional.
Con Feature discovery and explanation could be better
Some features are not well explained / highlighted: for example, unless you use the interactive project initialization, you have to go over the tutorials and examples in the wiki to learn that there is an optional C++ layer, Scroll, developed on top of the C API. Similarly, some major information are missing from the website, wiki and Doxygen documention, and are left for the users to discover in source headers and INI template files, or by searching the forum (e.g. the 0,0 coordinate being the center of the screen and not top left, the list of all Orx scalar types and their use, etc).