Case Study: Cross Platform Game Development
Corona Game Development
This multi-platform interactive children’s book was developed using KWIK and Corona SDK. By using a cross-platform framework we were able to cut development time and cost. This allowed us to concentrate on the graphics and story telling. Corona SDK’s physics engine allowed us to simulate realistic physics in the Dino Bowling game.
Project: Terry the Dinosaur Storybook
Product type: Mobile application
Client: Cloud Doodle
OS: iOS and Android
Development tools used:Requirement: Create a mobile storybook app for a young audience (children) that would run on multiple platforms. The app should include:
- Games accessible via a games menu. These games are unlocked as the reader progresses through the story
- Interactive story elements – with visual indicators that the reader might interact with a particular element
- Embedded games within the story along with the games menu of unlocked games
The challenge was to create a cross-platform application that could be coded in one programming language and deployed to multiple platforms. Since the requirements included games as well as a fast and responsive interface for reading we needed a multi-platform game development tool that could accommodate fast development and performance concerns. There are several cross-platform app development tools available to choose from. Choosing the correct platform should be driven by the user requirements as well as by the engineering team’s (both present and anticipated) abilities. Interactive games usually require a physics engine, animation, sound and transition. From a gaming point of view you want all that to be built into your cross-platform framework. Software developers are not necessarily the best game developers. We wanted to allow team members that don’t have the programming skills necessary to code the game to contribute to the development as well. The cross-platform framework should have tools that would allow your more creative, less technical team members to create or contribute to the app development.
Terry app Storybook includes 3 Fun, Interactive Games
Multi-platform Game Development
After evaluating the requirements and available options, we chose to develop this app using the Corona SDK and Kwik. Corona SDK allows for rapid development and supports multiple platforms. Corona apps are coded in the Lua programming language, which is a scripting language with a relatively low learning curve. Corona SDK provides the physics engine and most of the APIs required for game development. Kwik is a tool that compiles Adobe Photoshop PSD files into Lua files and uses the Corona SDK. Kwik allows non-programmers to create, compile and deploy an app. The code generated by Kwik is easy to understand and therefore simple to change. With Kwik you can use the physics engine and define animations within Photoshop. As the artwork is created it can immediately be put into Kwik and the app compiled and tested
There was an initial learning curve for our design team to get familiar and comfortable with Kwik. Also, some of the engineering team had to learn Lua and Corona SDK.
At project close-out it was established that using Corona for multi-platform game development for this project was the right choice and we have used it on subsequent projects.
- The app was deployable to all platforms from one codebase
- The artists using Photoshop were able to participate in development cycle using Kwik, thus taking the load off of the technical team
- The Lua learning curve was not steep so programmers could adapt relatively quickly
- It lived up to our expectations