Newbie Question: Start new project with Marmalade or just Cocos2dx?

Hi there;

I’m just starting a new project, and am trying to understand what Marmalade is in relation to Cocos2dx.

I’m very familiar with Cocos2d for iPhone, but haven’t done C*+ in awhile.
I understand that Marmalade is a cross platform commercial game engine for C*+ with support for lots of platforms.

If money is no object, can someone answer the following questions?

  • If I program my game in Cocos2dx, is it easy to port it to Marmalade later?
  • Is Cocos2dx used with Marmalade primarily to make it easy to make 2d games?
  • If I use Cocos2dx, will my game still run on all the platforms that Marmalade runs on?
  • Should I just use Marmalade from the start, or add it on at the end? ie will it speed up my development, or slow it down?

Thanks,

Brad

Well…… since no one else is adding anything…. i’ve done some more research, and can now add the following, to anyone that’s new to Marmalade like me, and would like to understand more about it at least…

Marmalade works great. You don’t need a Mac to build iphone apps. You can build an IPA and install it using either iTunes, or the iPhone Configuration Utility, all on Windows. You do need a mac to actually deploy to the AppStore, but for your development, you don’t need one at all.

It comes with tons of examples, and allows you to build and run apps in their own simulator, which can be remotely controlled (ie iSimulate) as well. And the SDK allows you to build extensions that are native to particular devices, so if you need something for your iPhone or bada app that isn’t supported, you just build it natively as an extension and then it can be used in Marmalade.

They have their own 2d api, that’s closer to OpenGl than Cocos2dx from what i can see, but looks good. It’s got a 3d mario kart style game and Tetrix clone as full examples, and is cross platform on lots of devices, with Windows and Mac still being beta, but good enough for easing development.

Anyone care to add anything else? I’m just starting, and would love to know the weaknesses in what seems like and incredible platform.

Hi Brad,

You can see marmalade HelloWorld example in HelloWorld/airplay (Marmalade is ex Airplay). So using cocos2dx you’re writing code abstract from Marmalade API (since it’s wrapped by cocos2d APIs), this means all Marmalade platforms are still supported. Also you may download cocos2dx simple game. This is win 32, but might be easily ported to marmalade.

As for box 2d usage - there are many tutorials how to use box2d in cocos2d, e.g.:
http://www.raywenderlich.com/457/intro-to-box2d-with-cocos2d-tutorial-bouncing-balls

I’ve easily ported that to build under marmalade.

Thanks,
Alex

Hey Alex! I’ve built the TweeJump example using Marmalade, and have it running in their simulator with the accelerometer integrated as well…. So actually getting a Cocos2d-x thing running isn’t an issue…

I was originally trying to decide whether or not I should just use their graphics and sounds api’s as they seem to be more cross platform than Cocos2d-x is right now.

But the more I look at it, the more obvious it becomes that Cocos2d-x seems way higher level too (e.g. Their 2d graphic api doesn’t have a 2d sprite/animation wrapper, scene management, or anything like that), and that along with my familiarity with Cocos2d-iphone is pushing me to want to use it in Marmalade instead….

It’s interesting that the Cocos2d-x successes are more in the Android world than the iPhone world (way more Android downloads than iPhone, at least for what it says on the home page), as my main reason for staring this new project in C++ is that I want to target Android big time, as I think the Kindle Fire and other 200$ android tablets are about to turn the tables on the iPhone….

Fishing Joy HD android version, the super star of cocos2d-x community, has reached 3.4 million android users & more than 1.1 million active users so far. Currently, cocos2d-x games have more than 700,000 download on ios devices & more than 4.3 million download on android devices.

Thanks for the feedback!

Brad

As the matter of fact, besides download count of FishingJoy HD, cocos2d-x games on ios is as well as on android.
The total download of cocos2d-x games hits 14 million this week.
# FishingJoy HD android version contributes 8 million,
# other games on ios have 3 million download
# games on android contribute 3 million

At Oct 6, Top Free Apps in appstore China region, No.1 & No.2 are both cocos2d-x games http://www.cocos2d-x.org/news/33

Hey @Walzer! That’s good to know… Thanks for the info!

There’re too much platforms but we have limited time. We mainly focus on iOS & Android ports, and leave the marmalade port to the community & contributors.
Although you can start cocos2d-x with marmalade platform, but personally speaking, I would recommend you to use native ios & android port if you can deal with the boring JNI calls.
A vote on a Russian website can tell something http://habrahabr.ru/blogs/gdev/128611/, I read it by google translation.

I have a mac and windows machine, but I tend to have way more free time when I’m near my Windows machine…. So I think I’ll develop solely in Cocos2dx using Visual Studio, and build on my mac when I need too… as you say, iOS and Android are the major platforms, so it’s not that big of a deal.

The nice thing about Marmalade is that you can build your app and deploy it to your iOS device completely from Windows, no Mac required. So I may do this just for deploying purposes, but write all my code against Cocos2dx, not the Marmalade platform.