multi-platform mobile phone development

Started by
19 comments, last by starbasecitadel 11 years, 6 months ago
Hello all,

Relatively new here, but I've developed a few games in my time. My most recent effort was an Android turn based civilizations building game https://play.google.com/store/apps/details?id=com.napoleonicmonkey.island

Now I was happy with the development process overall - enjoyed coding in Java and Eclipse once I got used to it. However I would love to be able to sell it to iPhone too. Heard plenty of people say that Apple users are more willing to download, and even pay. I'm not counting on it, but it would be nice if people actually played my games :)

My question is: has anyone used any multi-platform engines? What would be the easiest way to code my game once and port it for a few engines?

My first thought was to build an interface class for screen refreshes, input, sound, file management etc. From this I could connect a system-dependent class, that does all the work communicating between my core game and the underlying OS. However, once I thought about it I'm not convinced it would work - I'd still need to translate my code into the OS preferred language (eg translate from Java for Android to C for iOS). And I'm not very familiar with iOS, but imagine the general program architecture could be different to Android.

This left me looking for alternative libraries. I've had a quick look at Marmalade, which sounds very expensive to get into. Also looked at PhoneGap. But it's hard to get a feel for them until you've tried them.

So has anyone used one of the multi platform libraries? It sounds like they are mostly based in Javascript - which I also don't have much experience with :S I'm not sure they're designed for games either - look like they're mostly targetted at web developers looking to launch website tie-in apps.
Advertisement
iOS users does indeed seem to use their phones more (They make up for far more of the web traffic, download more apps and buy more apps), it is likely due to the different demographics.

Personally i'm using Unity but its not free for mobiles, ($400 per platform for mobile support in the "free"(not so free once you add mobiles) version or $1500 per platform for pro).

PhoneGap is pretty much a html/javascript container so for packaging webapps on phones its great, for more advanced games i've found it to be far too slow.

Marmalade looks good and is cheaper than Unity, (it does seem to be lower level aswell, which can be both a good and a bad thing).

a final option could be to write the app primarily as a C or C++ module which you can then load into a fairly barebones app on both Android and iOS.
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!
I'm actually reading a cool book about Android/iPhone Game/Graphics programming called "Game and Graphics programming for iOS and Android with OpenGL ES 2.0", by Romain Marucchi-Foino. It comes with an open source C++ cross-plattform SDK.
The forum FAQ lists the major cross-platform phone game engines.

All of these are game-oriented.

Unity3D multi-language ($400)
Ximarin C# SDK ($400)
appMobi HTML5 - Javascript (SaaS subscription)
Marmalade C++ SDK ($150)
Dragonfire C++ SDK ($100)

I know Unity is popular, as is Marmalade. The others also have their own followings.

I don't know of any other significant cross-platform engines that hit both iOS and Android. If you know of any significant engines, let me know and I'll add it to the FAQ.

The forum FAQ lists the major cross-platform phone game engines.

All of these are game-oriented.

Unity3D multi-language ($400)
Ximarin C# SDK ($400)
appMobi HTML5 - Javascript (SaaS subscription)
Marmalade C++ SDK ($150)
Dragonfire C++ SDK ($100)

I know Unity is popular, as is Marmalade. The others also have their own followings.

I don't know of any other significant cross-platform engines that hit both iOS and Android. If you know of any significant engines, let me know and I'll add it to the FAQ.


it should perhaps be noted that Unity3D and Xamarin are $400 per platform (so $800 in the OPs case). (From what i understand Unity3D uses Xamarin for mobiles aswell which is the primary reason for the $400 per platform pricetag even for the otherwise free edition of Unity3D), Marmalade is $150 for both iOS and Android or $500 for All platforms (not sure which other platforms are supported) , DragonFire is iOS only (But lets you develop for iOS without using a Mac).
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!
Cocos2d-x. Cocos2d-x is a reimplementation of the Cocos2d API but to C++ rather than ObjectiveC for cross-platform specifically targeting Android (and iOS obviously). It's free ... its biggest problem is documentation, tutorials, and such kind of suck or are non-existent.

Cocos2d-x. Cocos2d-x is a reimplementation of the Cocos2d API but to C++ rather than ObjectiveC for cross-platform specifically targeting Android (and iOS obviously). It's free ... its biggest problem is documentation, tutorials, and such kind of suck or are non-existent.
I'll update the FAQ. Thanks.
Thanks guys. Will look deeper into trying Cocos2d-x - what's not to like? It's free and uses common C++ (no need to learn objective-C) :)

Have found a few good tutorials that I'll try.
http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started
http://www.raywenderlich.com/11338/cocos2d-x-for-ios-and-android-space-game

If it doesn't feel right I'll look into another option. But for now it sounds ok (if not a bit fiddly to get Eclipse and XCode working together).

Thanks guys. Will look deeper into trying Cocos2d-x - what's not to like? It's free and uses common C++ (no need to learn objective-C) smile.png

Have found a few good tutorials that I'll try.
http://www.raywender...getting-started
http://www.raywender...roid-space-game

If it doesn't feel right I'll look into another option. But for now it sounds ok (if not a bit fiddly to get Eclipse and XCode working together).


The only problem with cocos2d-x is that the project is relatively young and its authors are pretty clearly speaking English as a second language so communication in the forum and elsewhere can be difficult, but mostly you can figure stuff out on you own.
Not to cross the streams but....


What about Moai?

www.gamedev.net/forum/39-mobile-and-console-development/

This topic is closed to new replies.

Advertisement