Recently I posted a list of the top four reasons people like Corona SDK — and coming up with the top four was easy because of all the responses I received, there were only a couple that fell outside the top four.
I also asked people what they liked least about Corona SDK and that list was a lot more varied. A lot of the answers had to do with specific things — probably those things that caused that developer to tear out their hair and swear at their kids.
But there were a few that got multiple votes and so here they are, the top four things people don’t like about Corona SDK (worst one, first).
1. (tie) No Low-Level Graphics Access
This was actually a combined winner which included people asking for pixel-level operations (get/set specific pixels), people wanting shaders, etc. Basically, there’s a set of folks out there who want lower level access to the graphics. At this point it’s just not possible — the framework doesn’t give users the access that’s needed. However, Walter Luh, Corona Labs CEO, has mentioned they’re planning (maybe even working on by now?) a next-gen graphics engine and it wouldn’t surprise me if lower level access is something they’re planning.
1. (tie) Poor Documentation
Oh, this is something that’s been talked about to death. And every once in a while we see some strides forward and then… One of the biggest problems mentioned was the lack of sample code along with the API. While there are examples of how to implement API calls, it was noted by several people that not all the examples work and in some cases there just wasn’t enough info for people to really understand the framework.
3. No Layout Tool
Did you see any of the Corona Levels videos? Did you drool a little bit while you watched it? Well, wipe your chin because the official word is Corona Labs has no current plans to create a level editor — they’re leaving that to 3rd-party developers. While that’s fine (and good for people like me who write game dev tools), having an “official” level editor from Corona Labs is something people are missing.
4. No Native Access/Plug-Ins
I’ve described using the Corona SDK framework as wearing velvet-lined handcuffs — they feel really good, but they still restrict you. 😉 You can only do what the framework allows you to do. To be honest, that’s one of the ways in which they keep the framework easy-to-use. But it’s also frustrating when you see other (lesser?) 2D engines with that ability.
What’s the Answer?
If you need lower level graphics access or want to be able to code your own plug-ins, you can always get the Enterprise version of Corona SDK (starts at $999 per year). However, unless you can code in native Objective-C and/or Java, the Enterprise version won’t do you any good since that’s how you add features to it.
If you need a layout tool you’re going to have to buckle down and go with a 3rd-party tool. Or, do as I’ve done in a couple of my games and build the level editor into the game. After you build to device you can work on levels when you’re out and about.
As far as poor documentation goes, time might be the answer, and I do see enhancements in that area fairly often in the docs section of the CL web site. And, of course, there are 3rd-party books and tutorial videos that can help you become a better game developer, and the Share Your Code area of the Corona Labs web site has some great libraries and code chunks you can learn from.