Marmalade SDK 8.2 is out now

The latest and greatest version of the Marmalade SDK is now available here.


  • IncrediBuild support for ARM architecture
  • Improved video support for Windows Desktop
  • Updated version of ZeroBrane Studio for Quick
  • Multidex support for Android

A full list of changes is available here.

Developing games for mobile and desktop? Then why not go cross platform and try out the Marmalade SDK, its now free. Available in C++ and Lua flavours.

Marmalade 8 is out now – New Hub, Analytics, Android Native Debugging, Asset Store

You can download the Marmalade SDK for free from the Marmalade SDK website

Looks like Marmalade have been busy beavers working on their latest release of the Marmalade SDK. There are a lot of changes, but I’m just going to focus on the highlights:

New Marmalade Hub

The Marmalade Hub has had a complete revamp. Its got a new look and feel and now feels like a proper integrated Hub including features such as:

  • Open, create and build projects for all platforms. Creation of new projects also includes a very handy and easy to use integrations section ghat allows you to easily add integrations such as analytics, game services etc.. very easily and intuitively. The project templates are also very handy, especially for new developers.
  • Handy recent projects and examples lists
  • Multiple projects can now be opened simultaneously and access to home is always available without backing out of a project
  • Centralised and direct access to asset store, documentation, community answers, blog and tools (one of my favourite new additions)
  • Platform settings are now better categorised and more easily accessible
  • Project libraries list which shows a list of all libraries used by the project
  • Proper import of different deployment configurations
  • Update from MKB feature

All in all, the new Hub is a massive improvement.

Marmalade Analytics

Marmalade Analytics for C++ and Lua, is a great new addition for developers that really want to drill down into the behaviour of their game players to help increase user retention and hopefully increase monetisation. Marmalade Analytics is powered by industry leader GameAnalytics. Marmalade Analytics is incredibly easy to use out of the box as can be seen in this IwAnalytics example.

Android Native Debugging

I’ve been waiting for this feature for a bit, its been in beta for a while, but its now officially released. To debug an Android app in Visual Studio simply open it in the hub then click the “Open in IDE for debugging” button. Note that the first time you do this Visual Studio 2015 will prompt you to install Android support for C++, go ahead and install that (this may take a while so go for a coffee or take a nap :) ).. Once your app has launched in visual studio click the green start triangle to start debugging.

Asset Store

Marmalade now have their very own asset store, which includes all kinds of assets from audio and bitmaps to extensions and full game engines. Submitting assets to the store is very simple, take a look here for details.

Booty5 HTML5 Game Maker 1.9 Available – Tiled Maps

Booty5 the HTML5 Game Maker v1.9.0b is now available for free download. Support for tile map rendering has been added to the engine, whilst support for tile map editing has been added to the game maker. A quick screen shot of the new tile map editor is shown below:

Booty5 HTML5 tile map editorBooty5 HTML5 tile map editor

Full list of changes include:

Game Engine v1.4.6:

  • Added new actor type called MapActor which can render tiled maps
  • Support added to Xoml for loading Booty5 game editor exported tile maps
  • Fix: Actor.vr wasn’t updating transform

Game Editor v1.9.0b:

  • Added support for tile maps (any sprite actor can now be changed to a tile map by changing RenderAs type to Tile Map)
  • Added pretty print export options that will export JSON in a tidy readable format

The Booty5 HTML5 game manual ebook has also been updated.

You will also need to replace all examples which can be downloaded from Github.

Free Booty5 HTML5 Game Maker Manual e-book now available

The first version of the Booty5 HTML5 Game Maker Manual e-book is now available for free download. Find out more on the Booty5 free e-book page.

Goji Game and App Editor beta is now available

The Goji Editor has finally entered beta and is now available for download from

What is the Goji Editor?

One of the more difficult processes involved in developing applications and games is how to create and organise the content. By organising content we refer to managing all of the elements that make up the game or app, such as images, sounds, brushes, physics materials, level layouts, user interface layouts, scripts and so on. The Goji Editor primarily helps you to quickly create and test game levels / app layouts and organise the lifetime of resources as well as test in real-time across different screen resolutions.

Goji’s secondary function is to enable full game and app production using available game and app development systems such as AppEasy / IwGame Engine, Marmalade Quick, Corona, GiderOS, HTML5 etc,.,. Goji aims to be as platform and development system agnostic as possible to ensure that exported data can be used by any development system and on any platform.

What does the Goji Editor look like?

Goji Editor Screenshot

Who is the Goji Editor for?

Goji has been designed primarily for designers and developers that create apps and games for mobile and desktop systems. However, Goji is flexible, supporting a huge canvas area and could be used in any capacity that involves organising and laying out graphical information spatially. Goji is also a great learning tool for students that are interested in learning the process of putting together apps and games in an environment where they can make changes and see the results of those changes very quickly.

What are Goji’s features? 

  • Create and organise game level levels and app layouts into scenes and actors

  • Export to many different game and app engine / programming language formats, including AppEasy / IwGame Engine, Marmalade Quick, JSON, XML (HTML5, Corona and GiderOS coming soon)

  • Export in multi-resolution friendly format, allowing exported data to be used on any sized display

  • Assisted layout editing, including tools to enable easy layout / layout management, bookmarking, edge / vertex snapping, directional cloning and so on

  • Full drag and drop support, drop entire folders of resources onto Goji and Goji automatically sorts them all for you

  • Support for import of SVG, Texture Packer and other formats

  • Support for physics including fixtures, joints and the ability to test physics

  • Definition of gaming logic and play using events and actions lists

  • Support for Lua / Javascript and other language editing, includes syntax highlighting, code folding and search / replace

  • Interactive play mode that launches the game using the built in engine or other engines, also shows coloured debug output

  • Create complete working / runnable projects

  • Support for user properties


  • TexturePacker is a tool that is used to combine many images into a single image, usually referred to as a sprite / texture atlas. Packing images into a single image improves rendering performance.

  • SVG (Scalable Vector Graphics) format is an XML based format that is used to represent two dimensional vector art work. Goji imports the following tags svg (scene), g (layer), image (actor), rect (shape) and path (shape or geometry). SVG is used by packages such as Inkscape and Adobe illustrator

Future features

Features that are currently in development or will be available in the near future include:

  • Export for Corona, GiderOS and HTMl5

  • Complex actions lists

  • Support for animation creation using timelines

  • Deployment to iOS and Android devices

  • Support for audio, video, web views, in-app purchase, ads and many more additional services

How do I download the Goji Editor?

At the moment the Goji Editor is in open beta and is free to use, however the Goji Editor will eventually become a paid product in the future. To download the Goji Editor please register and sign in then click the download menu to be taken to the download area where you can download a beta copy of the Goji Editor.


Marmalade 6.4 Gets Tizen Support

The latest and greatest Marmalade SDK 6.4 is out now. A number of cool new features have been added including:

  • Support for Tizen OS
  • iOS 7 and XCode 5 Support
  • Marmalade Quick has now been rolled into the Marmalade SDK


Marmalade Offering FREE licenses

Get Marmalade SDK for FREE

Marmalade the developers of one of the most powerful cross platform mobile and desktop development systems the Marmalade SDK are now offering FREE licenses. Marmalade are committed to ensuring that developers have the tools to deploy to established and emerging platforms first.

What is the Marmalade SDK? The Marmalade SDK is an awesome easy to use cross platform SDK that enables cross platform development for smart phones, tablets and emerging technologies such as smart TV. Marmalade supports unified development and testing across iOS, Android, Windows Phone 8, BlackBerry PlayBook / OS 10, Bada, Windows, Mac OS X and soon Tizen.

Marmalade comes in three flavours:

  • Marmalade C++ – Develop and test 2D / 3D apps and games using a mature C++ API that covers everything from 2D / 3D graphics and audio to native UI and unified in-app purchasing
  • Marmalade Quick – Develop and test 2D apps and games using a very easy to use Lua API that covers everything 2D and audio to physics and unified in-app purchasing
  • Web Marmalade = Develop and test HTML based apps and games using a very easy to use JavaScript API

All of the above enable testing right on a Windows or Mac desktop, with easy device deployment.

Book Review – Marmalade SDK Mobile Game Development Essentials

I recently obtained a copy of a new book called Marmalade SDK Mobile Game Development Essentials by Sean Scaplehorn, which is currently the first and only book available that covers the Marmalade SDK. The Marmalade SDK is a cross platform game and app development system for a number of mobile devices including Android and iOS, which I have been using now for a few years. With this book being the first and only book and considering that I had spent so much time writing tutorials to help bring would-be Marmalade developers get up to speed that I felt inspired to review this book. In addition, I was approached by Packt publishing some time ago to write this book, but unfortunately due to my busy schedule I had to forego the opportunity. So once I heard that the book was out you can bet I’m gonna read and scrutinise it :)

Ok, the first thing I do with all new books is take a scan through the chapter list to see how much content is there, I can usually judge a books value from the contents pages. I’m happy to say that this book passed my initial contents inspection. There’s quite a lot of content squashed into a relatively short book.

The book begins with a short introduction to the Marmalade SDK, including step by step instructions on how to install and setup Marmalade on your computer. It then moves on to building a fairly simple Hello World application complete with a step by step explanation of each of the parts of the program. The book then progresses on to explain many of the Marmalade API’s, below I will cover each section of the book:

* Resource management – This section covers Marmalade resource management. You should pay particular attention to this section as resource management is one of the most important things to get right when developing cross platforms apps.
* 2D Graphics – This section compares IwGL, IwGx and Iw2D then goes into in-depth details of IwGx (my favourite Marmalade graphics API), including materials, streams, textures and polygons
* User Input – This section covers detecting key presses, touch screen (including multi-touch) and accelerometer (would have liked to have seen compass covered also). Gestures sample project is good as it shows how to detect swipe and pinch gestures, something many developers have trouble with
* 3D Graphics – This section has a short introduction to 3D graphics, followed by an explanation on how to render 3D shapes with IwGx (polygon by polygon),, description of view / model matrices. The chapter then moves on to show you how to get data from popular packages such as Blender / 3DS Max into a format that Marmalade can use using the Marmalade supplied exporters. Finally the chapter covers rendering exported 3D data using Marmalades IwGraphics API.
* 3D Animation – This section covers basic PAS animation using matrices, morph target and bone animations, although morph target animations are not covered as in depth as I would like to have seen. I did however have a fair bit to learn from this chapter.
* Fonts, User Interfaces and Localisations – This chapter starts out by covering IwGxFont and bitmapped fonts, including building bitmapped fonts from Marmalade Studio Font Builder. I will admit that I personally prefer and would recommend looking at true type fonts instead (see IwGxFontCreateTTFontFromBuffer for reference) as you do not have to deal with intermediate tools such as the font builder. The author briefly touches on IwUI and IwNUI for user interfaces but opts to roll his own solution which I completely agree with because IwUI is difficult to get to grips with and IwNUI is only supported by Android and iOS, although I would have liked to have seen IwUI / IwNUI covered in a separate section for completeness.
* Sound and Video – This chapter covers playback of compressed audio (for in-game music), playback of sound effects and video playback.
* Support a wide range of devices – This chapter has to be by far my favourite. It not only covers handling different device capabilities and screen resolutions (things that will plague you unless you get the right at the start), it also covers other topics such as dealing with application configuration files, multiple resource sets and compression. This is a must read section, even for advanced Marmalade developers
* Social media and other online services – This chapter covers logging in and out of Facebook as well as posting information to the users wall using the Facebook Graph API. It briefly explains other services that are available but doesn’t venture into any of them with much depth. Hopefully a 2nd edition will delve deeper into these services.
* Extensions Development Kit – If you are coming to Marmalade from iOS or Android and have libraries of code that you would like to use in your Marmalade project, or maybe you want to simply integrate a 3rd party iOS or Android specific API into your app then the EDK is essential for you. The EDK enables you to call those libraries from Marmalade without too much hassle. The Marmalade EDK is impressive and this section is definitely worth absorbing. The author covers the creation, building and usage of an EDK extension for Windows, iOS and Android, providing an excellent step by step introduction to the EDK.
* The skiing app – I must say that I am impressed with Seans example skiing game, he not only provides a 2D version, but also a full 3D version. The code contained in these apps is invaluable for beginners.

In summary, I think that Sean Scaplehorn has done a great job and I would recommend this book to any would-be Marmalade developer, even seasoned Marmalade developers may have a few things to learn from it. I thought I knew just about everything about the Marmalade SDK, but this book proved that there are still a few corners that I need to investigate. I can say that I wish that this book was available when I first started my Marmalade journey. Marmalade is not the easiest of SDK’s to learn to use, but it is the best in my opinion, so its worth the time and effort to learn it properly and go on to create wonderful things. This book will help you along this journey much quicker than stumbling around in the dark the way I did when I first started using Marmalade. The accompanying sample code is also well written and well commented providing a good starting point for your own projects.

Overall I give the book a 9 out of 10. I would liked to have seen more coverage of the likes of True Type Fonts, In-app Purchasing, IwHttp and IwNUI. If a 2nd edition is forthcoming and these sections are covered then I could quite easily give an extra point.

New Marmalade SDK Developer Book

Packt Publishing have brought out a new book that mabny of you should know about called Marmalade SDK Mobile Game Development Essentials. I’m hoping to get a review of the book up over the weekend.

Marmalade 6.2 is here

Marmalade 6.2 is finally here, changes include:

- BlackBerry QNX: added new BlackBerry platform – BlackBerry 10.
changed deploy options prefixes from “playbook-” to
Changed deploy setting from “playbook-access-shared” to
Differentiate deploy setting “playbook-icon” to
“blackberry-playbook-icon” and “blackberry-phone-icon”
(i.e. BlackBerry 10 too).

- BlackBerry QNX: Fixed bug where S3E_DEVICE_OS_VERSION was returning a line
feed and extra numbers after the version string.

- iOS: iOS launch image is used to display splash screen unless SplashScreenFile
setting is specified in app.icf

- BlackBerry QNX: Added extension s3eBBAppWorldBilling to provide developer
access to the In App Purchase functionality within the
BlackBerry App World.

- s3eAccelerometer example: stop drawing lines outside of application’s surface.

- iOS: S3E Surface and IwGX switched to native device orientation handling mechanism

- iOS: Libraries and Frameworks for EDK were updated to iOS 6.0

- Bada: Bada platforms were deprecated

- iOS: Added iPhone5 support (4-inch Retina)

- iOS: iOS loader was updated to ARMv7

- BlackBerry QNX: Removed dependencies on BlackBerry NDK and improved setup
and signing processes. The BlackBerry tools are now fully
integrated into Marmalade so you don’t need to install the
BB10 or PlayBook NDKs. Singing is now fully supported by the
Deployment tool. Documentation updated.

- BlackBerry QNX: Fixed issues with malformed packages when signing builds.

- Added GL_OES_matrix_palette support for iOS.

- Added possibility to get process ID using s3eDeviceGetInt

- mkb: default arm-fpu value is detected according to arm-cpu.

- mkb: default arm-cpu is set to 5TE.

- Blackberry QNX : Use ICF setting WindowSuspendOnFocusLoss to control
whether to suspend the application when it loses focus

- Android: Fix IME Extension crash when calling buffer and compiler errors

- s3eIOSGameCenter: Fixed TimeScope manipulation.

- Fixed missing UIDeviceFamily key,value pair in Info.plist for iPhone-only builds.

- Fixed PVRVFRAME in Windows registry to be turned off by default.

What does it mean? For starters we can now target BlackBerry OS 10 devices and the buggy signing process has finally been fixed, opening up another app market with great potential.

Its sad to see that Bada support has gone, but then again Bada are deprecating the Bada OS anyway so not love lost there.

Support for iPhone 5 4-inch retina and iOS 6 for the EDK so you access those new juicy iOS 6 features.