I spent a few days browsing the web from the point of view of a potential developer looking for a cross platform development software developer kit (SDK) and I was very surprised and woefully disappointed to find that very few developers are actually aware of the existence of the Marmalade SDK. This tallies with the many developers that I have spoken to over the last year or so and introduced to the Marmalade SDK, who had no idea that it existed.
I searched social media, Google, Bing and other search engines as well as a number of well known developer forums for terms such as “cross platform development”, “cross platform sdk”, “cross platform phone sdk”, “cross platform mobile development” and many others. I came across many top 5, top 10 cross platform SDK’s etc.. but the Marmalade SDK was not listed on any of them. I did leave behind a few posts mentioning the Marmalade SDK to the original posters, so hopefully they will pick up on it and mention it.
We have been using the SDK for over a year now, launching a game across 5 platforms and an augmented reality app across 4 platforms with great ease and very little effort. We also have three additional games in development using the Marmalade SDK, so we have a fair amount of experience with the SDK.
The thing is, the Marmalade SDK is a remarkable piece of software engineering that appears to be largely going unnoticed by the wider developer community. I mean you can deploy the same native code and in some cases the same art and audio assets to 10 platforms including emerging platforms such as LG TV. I have looked at many of the cross platform SDK’s and cannot find anything that can directly compete. Some of the HTML / Javascript SDK’s offer wide platform support which is cool but don’t really offer the raw native speed that the Marmalade SDK does.
Here are a few cool things to know about the Marmalade SDK:
- Marmalade supports 10 platforms to date, including iPhone, iPod Touch, iPad, Android phone and tablets, Samsung Bada, Blackberry Playbook, Symbian, webOS, Windows, OSX, Mobile Linux and LG TV
- Producing 2D & 3D games with Marmalade is very simple as all of the components are already written for you using the 3D Studio Max / Maya / Collada exporters and graphics, math and audio modules
- Marmalade has good UI and font support as well as native access to UI coming October 2011. Coupled with existing Marmalade modules such as http access, video, web view and others, Marmalade allows the user to create apps as good as in in many cases better than using native platform SDK’s
- Marmalade EDK allows developers to use native platform specific plugins
- Code developed using the Marmalade SDK is compiled as tight as is possible using modern ARM & MIPS compilers
- Marmalade SDK deployed apps do not need to carry around bloated VM’s or other unnecessary baggage, ensuring that deployed app sizes are minimal
- Marmalade SDK allows high and low hardware access
- Marmalade SDK has some great out of the box modules that support the likes of iOS iAds, game centre, in–app purchasing, market billing and web views.
- With Marmalade you simply build and deploy your game directly to the phone or tablet on a PC or a Mac, no other hardware required
- Amazing support, including the apps program and device loan program to aid testing
- A simulator that lets you test across an unlimited set of screen resolutions and simulated access to Accelerometer, GPS, Camera, Audio, Multi-touch screen, SMS, Compass and more
- Test actual ARM code without even deploying to an ARM based device
- Access to a large collection of open API’s such as Box2D, AdMob, Flurry, Chipmunk,SVG, Python, LUA and tonnes of other cool stuff (Full list available at http://github.com/marmalade)
If you are a happy Marmalade developer then help bring the Marmalade SDK to the wider developer community. Mention it in your blogs, tweets, Facebook posts, conversations with clients, fellow developers, PR , so on and so forth.
I have added a new page to my blog that will outline exactly what the Marmalade SDK is and cover all of the cool stuff it supports here
Also, at the end of my Marmalade SDK tutorial blog series the community should have a good basic game engine that new users can use as a base for their own games, with new advanced features added week on week.
You can find out more about the Marmalade SDK at http://www.madewithmarmalade.com/
It seems to be perceived as much more complex than Unity3D. I’ve used Maramalde for a while now, and although its a great fit for myself and what we want to do with it, compared to an integrated design/scripting solution like Unity that image of increased complexity has to be somewhat real.
Also, although i completely respect Ideaworks right and reasons to do so, the removal of the ‘free’ to use license has really IMHO threatened the adoption of Marmalade within the dabbler/Indie/ and student realms.
We actually used Unity 3D before Marmalade. We found Unity had too many limitations / issues, for example:
* Difficult to create 2D games
* Near impossible to create apps
* No out of the box support for API’s such as Camera, in-app billing etc.
* Carrying the .NET run-time bloated our app sizes by over 10MB
* Limited supported platforms
* Limited open source API’s
Some of these things may have changed since we last looked at it though
We do miss developing in C#, the web player and a great editor, but it’s a small price to pay to take back full control of our games and apps.
I do believe that Marmalade should bring back a free version to some extent, maybe limited to PC and Mac deployment only.
Agree almost 100%. 2D is no *harder* in Unity than elsewhere perhaps.
EDK/Extensions are maybe one the killer marmalade features (good to see many more platform specific libs being deployed as EDK)
A web player would be great – Unity targeting flash 11 is very persuasive for a lot of people, i heard some maramalade rumours along those lines – but nothing serious. I have seen one marmalade app deployed in facebook using the portaliruim player – but that player has no traction..
>I do believe that Marmalade should bring back a >free version to some extent, maybe limited to PC >and Mac deployment only.
that could work. maybe 10 minutes per deploy operation on mobile – so you can test and play but not sell? 🙂
I remember when we started putting a 2D game engine together on Unity we had to build something like a mesh and attach polygons to it to get the system to render it. Is 2D still done that way?
The EDK is a great addition to Marmalade and the up and coming Native UI support is going to be awesome and will put Marmalade into the hands of pure app developers.
Adding web player functionality is something that I keep mentioning on the forums, hopefully its something that Marmalade will at least be considering as it opens up a completely new market for them.
Flash support would be nice, but wouldn’t that be going against Apples guidelines?
Yeah, I had a look at Jangle (the portaliruim player game) and thought it pretty cool to see a Marmalade app running inside a web page on Facebook. I’m surprised the player has no traction though.
I like your about the free version, I think it could work. Its good to see that Marmalade do give out free licenses to those that they sign up to the apps program as well.
re: flash – i was meaning exporting to flash/swf format unity tech preview here http://blogs.unity3d.com/2011/09/01/unity-and-flash-a-sneak-peek/
If your thinking of flash running inside marmalade (probably for UIs as with scaleform on consoles) – ive already made a start porting the gamesf lib to Marmalade ( https://github.com/marmalade/gameswf )
Ive been thinking about the issue with apple guidelines as well. I think your correct – but doesn’t that apply to all scripting languages on top of marmalade, if they load in script code dynamically? i.e, lua, python,. v8, etc…
Ah, ok, nice idea actually being able to export an actual swf file
We have had a few clients interested in Flash based animations for magazine, but I’m more interested in it for UI. That said we wroteour own XML based animating UI system based on Silverlight XAML.
Good work on gameswf port, I noticed the post on Marmalades community code projects forum.
Just did a bit of research and it would appear that interpreted code is now allowed and so are apps written in languages other than C based languages, so it looks like the likes of Java and Flash are a go. The only restriction seems to be that the code is not downloaded from outside the app and is integrated into the app before submission / approval.
Downloaded code sounds right, not just dynamically loaded in, thats good.
I like the sound of your XAML like processor – i think most people are doing something similar. As far as I can tell Marmalade is not alone in having a less than great UI framework. Really looking forward to seeing how the features slated for the next release will help.
I was also toying wit the idea of moving the UI to a html/javascript web layer, but couldn’t get a reliable route to local HTML across all devices… im sure theres good possibilities there though…
I love XAML, my favourite mark-up style language. I’m going to develop a Silverlight based editor to accompany the basic generic 2D game engine that I’m coding up for the community based on my blog tutorials. I’m hoping that new developers can just pick up the code and editor and get going right away, then upgrade the code base as they go.
Yeah, HTML is a pain to use, so many different rendering engines per browser and per OS. I imagine the memory overhead of having a web view would be quite steep as well? Best bet is to wait for the new UI features coming this month I reckon.