Marmalade Quick, a Lua-based RAD tool used to build 2D games, is due a number of significant updates over the next few weeks.
Perhaps the biggest is an overhaul of the software’s sprite-rendering features, providing more than 100 out-of-the-box effects that devs can use, as well as the addition of multi-pass filters: shader-based effects that can be applied to any sprites by setting simple parameters in your Lua code.
Also in the mix are new node types; the ability to render and apply textures, fills and gradients to any objects; and the opportunity for users to create their own shaders with Cocos2d-x. In fact, the firm says that shaders are central to the new and improved Marmalade Quick.
“Previously, using effects in a Marmalade Quick game typically meant frame-based animation or tweening colour, position, size and so on,” says Marmalade Technologies’ senior engineer Nick Smith. “Pixel shaders let you add much richer algorithm-based effects and avoid CPU overhead if you were previously generating lots of scene nodes to accomplish a similar effect.
“Since Quick’s engine is open source and based on Cocos2d-x, you could already use pixel shaders if you dug into the C++ code and added them yourself, but most users were unlikely to do that. We’ve added direct access to OpenGL ES shader APIs from Quick, and easy-to-use Lua interfaces that will let you just pick effects and set parameters for things such as blur, bloom, bulge and cartoonise.”
These new interfaces are not just to make things simpler for established Quick users, but also more accessible to newcomers. To that end, Marmalade is also integrating both the Lua IDE and Quick’s debug and optimisation options with the Hub, the firm’s go-to tool for managing apps throughout their lifecycle.
“This update will add a whole bunch of great, easy-to-use effects, but also improves performance, project management and optimisation options,” adds Smith.
“We’re making some small changes to project structures to make it easier to update versions, add your own integrations and optimise builds.”
The decision to build Marmalade Quick on Lua code was crucial given the diversity of platforms its users deploy their games to. Smith observes that Lua can be found in one form or another in hugely popular games that range from Angry Birds on iOS to World of Warcraft on PC.
“Although engines typically use native code, you’ll find top games on the app stores from the likes of EA and Gameloft will have a Lua run-time embedded in them for scripting,” he says.
“As a scripting language, Lua is flexible and easy for non-programmers to work with when needed, but it is also lightweight and binds to C++ code for optimum performance. As well as Quick, Marmalade also provides a vanilla Lua run-time to use in your own C++ games.”
The new features will be added to Marmalade Quick over the coming weeks. Looking further ahead, the firm also has plans to add a new UI library, easier access
to third-party features such as iAd, Amazon Ads and Google Play Game Services, and additional improvements to both performance and project workflow. ν
You can find out more about Marmalade Quick by visiting www.madewithmarmalade.com/products/quick.