With Google IO fast approaching and GDC just completed I thought it would be interesting to take a look at the game engines available for mobile devices, specifically for x86 based mobile devices. There are many game engine choices out there, all with a different set of features, pricing, maturity, etc. After conducting a search online, I found a wide variety of game engines that can be used for creating games for Android* based mobile devices. Some provide x86 support, while others can be ported to support x86 devices without too much effort.
Here is the list of game engines I have come across; I have included some features and details about each engine and an example game on the Android Market if I could find one.
- jPCT-AE- http://www.jpct.net/jpct-ae/
- A java 3D engine optimized for Android.
- Nice set of features including 3DS, OBJ and other file support, skeletal animations, shader support, texture compression, collision detection, various lighting modes, transparency, fog, and more.
- An all java game engine that supports x86 Android devices.
- Free for personal and commercial use.
- Example: https://play.google.com/store/apps/details?id=mk.grami.max
- Libgdx - http://code.google.com/p/libgdx/
- Cross platform (Windows, Linux, OSX and Android) 2D/3D Android engine. Build, run and iterate on the PC before deploying to phone.
- C++ and Java based engine that easily ports to x86.
- Box2d physics, TMX tile map, shaders, 2D particle system, sprite support, camera apis, OBJ and MD5 model loaders.
- Full source code available for free.
- C++/Java based engine that with a few minor changes I was able to run on x86 Android devices.
- https://market.android.com/details?id=com.tani.penguinattack
- Corona Game Edition - http://www.anscamobile.com/corona/games/
- 2D cross platform (iOS and Android) engine.
- Write games in scripting language Lua.
- Animated sprites, Social API integration, native device features integrated.
- Also used for application and eBook development.
- C++ based engine that should easily port to x86 Android devices.
- License purchase required, free to trial.
- https://market.android.com/details?id=com.base2.walkaboutb
- Unity 3D – http://unity3d.com
- 2D/3D cross platform (iOS, Android, PC) with full-featured integrated editor.
- PhysX physics engine, C#, javascript or Boo scripting language, multiplayer and network support, streaming assets, etc.
- License purchase required for phone publishing, try for free.
- No Android x86 support in current version.
- https://market.android.com/details?id=com.ArtInGames.AirAttackHDLite
- Adobe AIR – http://www.adobe.com/products/air.html
- Andengine - http://www.andengine.org/
- Marmalade SDK (previously Airplay SDK) - http://www.madewithmarmalade.com/
- App game kit -http://www.appgamekit.com/
- Cross platform (iOS, Windows, MacOS, Android, BlackBerry, Bada, Meego)
- A 2D OpenGL based game engine with Box2D. Include support for Sprites, particles, input APIs, sound and music.
- Looks like it is a C++ based engine that should easily port to x86 Android devices.
- Write game code in BASIC or has an available upgrade option for writing native C++ code.
- Free to try, license purchase required to publish.
- https://market.android.com/details?id=com.texasoftreloaded.theblackhole
- ShiVa3D - http://www.stonetrip.com/
- DX Studio - http://www.dxstudio.com/
- 3D game engine with editor.
- Android limited features now supported.
- C++ based engine that should easily port to x86 Android devices.
- Currently offered for free.
- SIO2 Engine – http://sio2interactive.com/
- 2D/3D cross platform (iOS, Android, bada, WebOS, WIN32 ) game engine.
- Iterate via simulator on PC
- Features lua support, exporters for various 3d modeling tools, Bullet physics engine, path finding, sound apis, shader support, animation and networking support.
- C++ based engine that should easily port to x86 Android devices.
- Various licenses available for purchase, free to trial.
- Papaya Social Game Engine - http://papayamobile.com/developer/engine
- moai - http://getmoai.com/
- A mobile platform for game developers
- Lua scripting language based development engine that has integrated cloud services available.
- Engine is open source and free to use, pay for cloud services.
- Cuttlefish Engine - http://www.cuttlefishengine.com/
- 2D cross platform (Windows Phone, Android, iPhone, Windows PC) game engine.
- Create game in an editor using scripting language (C# variant).
- Designer interface to build games, Tile support and Box2d physics engine.
- License purchase required for the Designer, engine source available for free. Trial available.
- Orx - http://orx-project.org/
- 2d cross platform (iPhone, iPad, Mac, Windows, Linux, Andrdoi) game engine.
- Camera APIs, animations, sound, sprite rendering and data driven for fast and easy prototyping and development.
- Free open source.
- C++ based engine that should easily port to x86 Android devices.
- Example: https://market.android.com/details?id=lyde.sik.gravity
- Unigine - http://unigine.com/products/unigine/
- 3D cross platform (Windows, Linux, Max, PS3, iOS, Android)
- Physics, scripting, etc. Unclear what features are supported for mobile.
- Evaluation available to companies working on commercial projects. License purchase required.
- C++ based engine that should easily port to x86 Android devices.
- Example: http://www.demolicious-game.com/
- Gideros Studio - http://www.giderosmobile.com/
- 2D cross platform (iPhone iPad, Android) game engine.
- Write Lua code in provided IDE, iterate on PC with simulator.
- Features include Box2d physics engine, fonts, sprites, tile maps and sensor integration.
- Free version includes Gideros Splash screen, licensed version removes it.
- iPhone example: http://itunes.apple.com/app/tim-the-timber/id417301495?mt=8
- Candroidengine - http://code.google.com/p/candroidengine/
- 2D Java engine.
- Sprites, tile animation, background APIs, etc.
- Dalvik only engine that should work on all architectures.
- Full source code available for free.
- Mages Engine - http://code.google.com/p/mages/
- multiplayer client/server game engine
- Java engine that should work on all architectures.
- Full source code available for free.
- Unreal Development kit - http://udk.com/
- Android support coming at a future date.
- Rokon - http://code.google.com/p/rokon/
- 2D engine indicates it will soon start up again as Rokon 3 and will be built upon libgdx.
The great thing about Android on x86 is that it opens a new class of devices for all of the games built on these engines. Unfortunately not all these game engines have support for x86 native binaries but it’s probably just a matter of time. x86 support is available in the latest Android NDK. Porting to x86 for some of these engines may simply be a recompile. We have created a couple of documents to guide you and have forums available to help along the way.
I hope this list helps those thinking about writing an Android game by providing some details of the choices available. Ideally I will try to update this article with the latest information as it develops, but please feel free to post comments about game engines I did not come across or any updated information you find.