iOS + Android 2D Game Engine - android

I already found some answers to this question here but they were all two years old or more.
Can anyone suggest me a cross platform (iOS+Android) mobile 2D game engine (Java or C++)?
I'd go with AndEngine but it supports Android only.
Thank you.

I recommend libGDX. As you may have read from a few of the other threads in StackOverflow, it is one of the popular ones and there is sufficient material provided to assist you to get familiar with.
Here is their Github page, which has loads of information to get you started (see external tutorials in the wiki). I would also like to recommend dermetfan's libGDX channel for a basic introduction that I have found useful with certain components (search dermetfan libGDX in youtube, would provide link but I'm restricted to two links).
Personally, I have used libGDX as a mobile 2D game engine for a work project, and I've found it really nice. Hope this helps!

Related

Samples on AndEngine

I want to learn AndEngine.
How should I start? I don't see any good examples. I even tried finding the downloadable source code for AndEngine and MagneTank but no luck.
I suggest http://www.matim-dev.com/tutorials.html which includes many tutorials. These are often supported by code examples. I especially suggest the "Full game tutorial articles series". With this you will develop a game from scratch and learn very much about the AndEngine.
Try to checkout their project from here and download some sample source from internet e.g. here and run the examples keeping both source in a common project.
If you are looking for learning basic AndEngine game programming, I suggest looking at this book: AndEngine for Android Game Development Cookbook.
This is a very good way to start. I have learned it in just 1 week, and am now creating my own game.
Drop Block is an exampmle from google play store.
http://jimmaru.wordpress.com/2011/09/28/andengine-simple-android-game-tutorial/
and the famous example towers......> http://www.raywenderlich.com/12065/how-to-create-a-simple-android-game
Since AndEngine is composed of several sublibraries I created a repo manifest to use in order to have all the needed to try the examples.
You can find it here: https://github.com/gipi/AndEngine-repo
Many People have already answered here and I think they all are right:
But I want to include my answer as well , because I started as a rookie in AndEngine and now I am still a rookie but with a little more knowledge than earlier.
1) Install the AndEngine APK from Google Play, test all the functionality this engine shows in that, see if the game you are thinking to make is possible with all those tools in the APK.
2) As soon as you are ready go to github page of AndEngine and install it.
3) Tweak the Example (MOST IMPORTANT), you will not learn what AndEngine is and what it can or cant do unless you tweak the examples in the AndEngine library.
4) Now you have a basic understanding, so its time to start a game.
5) Go to matim-dev blog on how to make a complete game tutorial , it is the best tutorial on andengine so far in Internet.
6) If any problem ask your question in the andengine forum , well they never answer quickly but all the problems you will face are already discussed there so no problem just go for it and start AndEngine.
Pros and cons of AndEngine so far for me :
Pros :
i) not well documented, but still you can tweak the code easily and understand very fast.
ii) Use of Box2D is great with this, Animation Sprite everything works fine.
cons
i) Very slow compared to other frameworks, deleting and detaching bodies and sprites is very clumsy, after 3 months of development of AndEngine today also I am facing problems with deleting sprites and detaching bodies in AndEngine.
ii) Attaching google ads is a nightmare in AndEngine.
Try some basic app development on Android to get Fimilar with environemt.
But to get basic concepts you should read first chapter of
AndEngine for Android Game Development Cookbook by Jayme Schroeder
and Brian Broyles
from here
Create a account on Github(and fetch the code)/or download the AndEngine(Zip) locally. and experiment with examples.
further more, Download andEngine Android app to see examples in Motion!!
This is also useful link: Java Code Geeks

2D cross-platform game engine for Android and iOS? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I've worked for some time with Unity3d and found it's 2D part with OnGUI() or GUITextures too clumsy. Also, even a smallest game done on Unity3d is at least 10MB download which is just too much for a 2D game.
So, I'm currently looking for an engine for 2D. I've tried Cocos2D but it's iOS only and I wouldn't like to rewrite everything into another language for Android (so, e.g. Java port of Cocos2d for Android is not an option). Instead, I want to write the code once and with least hassle deploy it on iOS, Android and possibly Windows Phone 7. I have both Mac and Windows.
Just to be more detailed, here are my requirements to the engine:
must be cross-platform
must be efficient
should be C++, Java, C# or Objective C since I'm comfortable with them and NOT Flash, Javascript, HTML5 since I am not a web developer
must have a large community, tutorials, additional libraries which cover most of the stuff you'd have when developing on iOS or Android directly (in-app billing, facebook etc.)
the final delivered package must be not too large
the engine can be free, but I also wouldn't mind paying a reasonable price
I've found the following engines:
Marmalade (and IwGame engine on top of it) - C++, found overall very positive reviews of Marmalade but not sure about IwGame. EDIT (March 2013): Looks like Marmalade SDK now includes Cocos2Dx and some in-built IDE which makes it much better (and costs $150 per year for indie dev which is ok with me).
Corona SDK - Lua (efficiency doubtful), also needs internet connection to compile code
Cocos2d-x - C++, received lots of reviews from developers, mostly positive and many think it's best for 2D
Particle code - Java+Eclipse, found no reviews or comments
Moai - Lua, coudn't find any reviews/opinions on it
Monkey engine - seems to have too few features
Haxenme - it's Flash, I've never used it and don't want to
use Unity3d but with 2D packages like 2D Toolkit
ports of SDL to Android (also here) and iOS - doesn't look to have much support or current development (?)
GLBasic - Basic language, I don't like it
playN - seems to be early in development (?)
Gamvas - HTML5, doesn't look like a mature engine to me
Ignifuga - Python, also doesn't look mature
ORX - not sure if it's still developed (?)
Construct 2 - reminds GameMaker, might be ok for rapid prototypes but definitely not for industry-level games
XNA and then port the game using ExEn (would need Mono Touch to port to iOS and Mono for Android to port to Android) - C#, and is probably more thought for folks coming from Microsoft products like xBox (I come from Android). Also, those Mono tools cost $800 in total for small developers
Impact - JavaScript, uses HTML5. I'm not much into JavaScript (e.g. preferred C# on Unity3d), also not sure about efficiency since it runs in the browser (?)
GameMaker - own scripting language GML and I actually remember this one as a tool for non-programmers. Has it actually grown into a real engine, I mean for serious development?
AppGameKit - C++, yet seems to be still pretty new. Haven't found any reviews on it
use Cocos2D and Objective C to develop for iOS only and then make an APK for Android out of it using Stella SDK. Has anyone done this? I'm pretty sure there will be limitations, and how about Google's in-app billing, AdMob and Facebook integration on Android?
Moscrif - JavaScript, looks like it's more for former web-developers
Starling - Flash 11, i'm not much into Flash
ND2D - not yet 1.0, does it have many features?
So, I'd be happy if you could comment from your experiences with the engines and suggest which one in the list (or anything else that I've missed) is the best for the described requirements. I also may be wrong with my first impressions about some of the engines.
I'm currently thinking of Marmalade+IwGame as the best option but since I don't have much info about Cocos2d-x and Particle code, I am not really sure about it.
Thank you!
EDIT (June 2013): So far I made 2 cross-platform 2D games and used Unity3D with 2D Toolkit plugin for both. For the game with simple GUI I used a simple self-made GUI system based on Unity's own. For more complex one (e.g. where GUI elements can overlap) I used the NGUI plugin. Recently 2D Toolkit added some more classes for GUI which is very handy since one had to use 2 different systems for texture atlases when combining NGUI with 2D Toolkit. I'll definitely try that one in the next 2D game. The main reason for choosing Unity3D for 2D games was that I already was deep into Unity3D both in terms of experience and accumulated code snippets for re-use. Also, I purchased Unity3D pro (with Android Pro and iOS Pro) for 3D games and it made full sense to just pay additional $60 for the 2D Toolkit to get 2D games also covered. I so far don't regret my decision, it seems to have been optimal for my case. The only thing which gave me headache was adding social features with the Prime31's plugins (Android & iOS social plugins) but I assume that their bugs are not the fault of Prime31 but of Twitter/Facebook instead, so I probably would see the same bugs on any other engine or plugin.
EDIT (Jan 2014): I guess with Unity 4.3 the answer to my question is pretty obvious now: the Unity's new sprites system and maybe also 2DToolkit totally beat anything else, especially for people who have (like me) been on Unity for a while and purchased the Pro version with add-ons.
LibGDX is one of the best engines I've ever used, works on almost all platforms, and performs twice as fast as cocos2d-x in most tests I've done. You can use any JVM language you like. Here's a 13 part tutorial in Java, and here's a bunch using jruby. There's a good skeletal animation tool that works with it here, and it has baked in support for tiled TMX maps as well. The ui framework is awesome, and it has a scene graph and actor style API similar to cocos2d scenes, sprites and actions. The community is awesome, updates are frequent, and the documentation is good. Don't let the java part scare you, it's fast, and you can use jruby or scala or whatever you like. I highly recommend it for 2d or 3d work, it supports both.
I've worked with Marmalade and I found it satisfying. Although it's not free and the developer community is also not large enough, but still you can handle most of the task using it's tutorials. (I'll write my tutorials once I got some times too).
IwGame is a good engine, developed by one of the Marmalade user. It's good for a basic game, but if you are looking for some serious advanced gaming stuff, you can also use Cocos2D-x with Marmalade. I've never used Cocos2D-x, but there's an Extension on Marmalade's Github.
Another good thing about Marmalade is it's EDK (Extension Development Kit), which lets you make an extension for whatever functionality you need which is available in native code, but not in Marmalade. I've used it to develop my own Customized Admob extension and a Facebook extension too.
Edit:
Marmalade now has it's own RAD(Rapid Application Development) tool just for 2D development, named as Marmalade Quick. Although the coding will be in Lua not in C++, but since it's built on top of C++ Marmalade, you can easily include a C++ library, and all other EDK extensions. Also the Cocos-2Dx and Box2D extensions are preincluded in the Quick. They recently launched it's Release version (It was in beta for 3-4 months). I think we you're really looking for only 2D development, you should give it a try.
Update:
Unity3D recently launched support for 2D games, which seems better than any other 2D game engine, due to it's GUI and Editor. Physics, sprite etc support is inbuilt. You can have a look on it.
Update 2
Marmalade is going to discontinue their SDK in favor of their in-house game production soon. So it won't be a wise decision to rely on that.
You mention Haxe/NME but you seem to instinctively dislike it. However, my experience with it has been very positive. Sure, the API is a reimplementation of the Flash API, but you're not limited to targeting Flash, you can also compile to HTML5 or native Windows, Mac, iOS and Android apps. Haxe is a pleasant, modern language similar to Java or C#.
If you're interested, I've written a bit about my experience using Haxe/NME: link
V-Play (v-play.net) is a cross-platform game engine based on Qt/QML with many useful V-Play QML game components for handling multiple display resolutions & aspect ratios, animations, particles, physics, multi-touch, gestures, path finding and more. API reference
The engine core is written in native C++, combined with the custom renderer, the games reach a solid performance of 60fps across all devices.
V-Play also comes with ready-to-use game templates for the most successful game genres like tower defense, platform games or puzzle games.
If you are curious about games made with V-Play, here is a quick selection of them:
Squaby: a tower defense game
Chicken Outbreak: a platformer like Doodle Jump
Blockoban: puzzle game
Crazy Elephant: a game similar to Angry Birds
Snowball Mania: multiplayer action game
Blitzkopf: brain game
(Disclaimer: I'm one of the guys behind V-Play)
Here is just a reply from Richard Pickup on LinkedIn to a similar question of mine:
I've used cocos 2dx marmalade and unity on both iOS and android. For
2d games cocos2dx is the way to go every time. Unity is just too much
overkill for 2d games and as already stated marmalade is just a thin
abstraction layer not really a game engine. You can even run cocos2d
on top of marmalade. My approach would be to use cocos2dx on iOS and
android then in future run cocosd2dx code on top of marmalade as an
easy way to port to bb10 and win phone 7
I find a nice and tidy Wave game engine few days ago. It uses C# and have Windows Phone and Windows Store converters as well which makes it a great replacement of XNA for me
and what about LibGDX from BadLogicGames?
Check out Loom (http://theengine.co) is a new cross platform 2D game engine featuring hot swapping code & assets on devices. This means that you can work in Photoshop on your assets, you can update your code, modify the UI of your app/game and then see the changes on your device(s) while the app is running.
Thinking to the other cross platform game engines I’ve heard of or even played with, the Loom Game Engine is by far the best in my oppinion with lots of great features. Most of the other similar game engines (Corona SDK, MOAI SDK, Gideros Mobile) are Lua based (with an odd syntax, at least for me). The Loom Game Engine uses LoomScripts, a scripting language inspired from ActionScript 3, with a couple of features borrowed from C#. If you ever developed in ActionScript 3, C# or Java, LoomScript will look familiar to you (and I’m more comfortable with this syntax than with Lua’s syntax).
The 1 year license for the Loom Game Engine costs $500, and I think it’s an affordable price for any indie game developer. Couple of weeks ago the offered a 1 year license for free too. After the license expires, you can still use Loom to create and deploy your own games, but you won’t get any further updates. The creators of Loom are very confident and they promised to constantly improve their baby making it worthwile to purchase another license.
Without further ado, here are Loom’s great features:
Cross platform (iOS, Android, OS X, Windows, Linux/Ubuntu)
Rails-inspired workflow lets you spend your time working with your game (one command to create a new project, and another command to run it)
Fast compiler
Live code and assets editing
Possibility to integrate third party libraries
Uses Cocos2DX for rendering
XML, JSON support
LML (markup language) and CSS for styling UI elements
UI library
Dependency injection
Unit test framework
Chipmunk physics
Seeing your changes live makes multidevice development easy
Small download size
Built for teams
You can find more videos about Loom here: http://www.youtube.com/user/LoomEngine?feature=watch
Check out this 4 part in-depth tutorial too: http://www.gamefromscratch.com/post/2013/02/28/A-closer-look-at-the-Loom-game-engine-Part-one-getting-started.aspx
I've tried AppGameKit, It's both c++ and Basic.
It's very easy to code 2d games in the Basic varient, with physics, collision and heaps more.
It's also in active development, and really cheap (65$).
The main problem is that it's really hard to compile for Android (you need to download heaps of files and follow difficult guides and things like that)
My opinion is that it isn't yet good enough for commercial use, but is good for indie programmers
It's got a medium size community
I currently use Corona for business applications with great success. As far as games go, I'm under the impression that it doesn't provide the performance that some of the other cross-platform development engines do. It is worth noting that Carlos (founder of Ansca Mobile/Corona SDK) has started another company on a competing engine; Lanica Platino Engine for Appcelerator Titanium. While I haven't worked with this personally, it does look promising. Keep in mind, however, that it comes with a $999/yr price tag.
All that said, I have been researching Moai for a little while now (since I am already familiar with Lua syntax) and it does seem promising. The fact that it can compile for multiple platforms, not limited to mobile environments, is appealing.
Multimedia Fusion 2 is also a worth contender, considering the complexity of games produced and the performance realized from them. Vincere Totus Astrum (http://gamesare.com) comes to mind.
Recently I used an AS3 engine: PushButton (now is dead, but it's still functional and you could use something else) to do this job. To make it works with Android and iOS, the project was compiled in AIR for both platforms and everything worked with no performance damage. Since Flash Builder is kinda expensive ($249), you could use FlashDevelop (there is some tutorials to compile in AIR with it).
Flash could be an option since is very easy to learn.

andengine vs no framework development

I am trying to learn to create 2D games on android, and I have heard that andengine is one of the best tools for that. I tried using it, but unfortunately there I have encountered numerous issues with andengine having little documentation, and no stable place where I can learn things. So my question is that what would you recommend to a completely newbie developer? Should I try learning andengine, or learn things the hard way? And can you please provide some good links to learn? So far a lot of links I found were quite old and would not work properly all the time.
Thanks to anyone for their help.
Also just to clarify, I am middle skilled in 2D game development (especially in java and C++), so I know the basic structure, my main issue is making things run on an android since I am completely new to android itself.
With andengine, your best bet is to download, compile and run the sample games and examples. From reading through and understanding the source code for those, you'll learn how to use it. The examples in particular are effectively documentation, they're very good!

Open GL 3D library for iOS (and Android)?

Is there some free and easy to use 3D library for iOS (and Android) that simplifies Open GL ES framework. Just like there is cool WebGL library: ThreeJS for javascript.
So far I saw Unity but it's not free and I would like something simplified.
My usage would be setting the scene, meshes, camera, rotating the camera etc...
For Android you can use AndEngine which supports GL ES1 and GL ES2. For IOS you can use Cocos2D.
I decided to go with Cocos3D because it has all the features I need and is similar to JS libraries. It is free and you don't have to use any special engines with it.
Well, there is Sparrow for iOS, and as for Android you can consider AndEngine
(easier) or LibGDX (faster).
One option I believe is SiO2.. And Oolong too.. I once played with blender and SiO2 and it went well..If you are only interested in 2D games only then Cocos2D is best bet for iphone..
For android AndEngine is good,and I believe SiO2 works for android too..
Ahh, Unity did give away the iOS/Android versions back in March/April this year - maybe if you asked them nicely?
OpenSceneGraph has a large and active following in the Vis/Sim community, and is starting to creep into games, here's a couple iOS/game related topics from their forums:
http://forum.openscenegraph.org/viewtopic.php?t=10291
http://forum.openscenegraph.org/viewtopic.php?t=10308 (p.2 of this thread has links to a couple osg-based games in the iTunes store)
For Leaning very basic of open GL for iOs I would suggest to have a look at this http://antonholmquist.com/blog/opengl-es-2-0-ios-tutorial-getting-started/. This gives the basic idea of vertex and fragment shaders. After going through this a beginner can go through other tutorials which explains the detailed concepts of openGL.
I have gone through so many links but this one explains the basic really well.

3D Scene graph toolkits for Android

I was wondering if there is any 3D scene graph toolkit available or at least in development for Android? I could not find anything, assuming that all existing solutions for Java won't run on the Android platform.
I played around with the simple but quite powerful JPCT library that is supported by quite an active forum. The author has ported the libary to Android, and shows some nice demos on his site.
http://www.jpct.net/jpct-ae
You might look into JMonkey Engine. They are working on an Android version:
http://www.jmonkeyengine.com/forum/index.php?topic=13643.0
http://jmonkeyengine.com/blog/blog/2010/02/10/android-support-confirmed-for-jme3/
Have you tried out JavaFX Mobile? http://java.sun.com/javafx/index.jsp
I'm looking for one as well. I came across this today, but I have no idea if its actually any good -- the company site looks kinda sketchy!!
http://www.artfulbits.com/Android/aiCharts.aspx

Categories

Resources