Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I'm having a really hard time deciding which way to go on this. I'm about to start developing a game and I haven't been able to find many good comparisons between these approaches. I don't have many requirements for the game yet, but here is what I do know.

  • needs to work on iPhone
  • I don't have much money ($400 for Unity for iPhone is probably too much. I can probably afford $99 for Corona.)
  • Graphics will be 2D
  • Physics support is not needed
  • Ability to use particles would be nice
  • Game Center support would be nice (Corona is planning to support it soon)
  • It would be nice to be able to support Android as well if it isn't much effort.

I have done my own research, so I know basic things about them. I know Corona uses Lua and Cocos2D uses Objective C. I know that Corona allows deployment to iPhone and Android, but how easy is it?

Cocos2D is free, but so many people talk about how easy it is to use Corona, but I don't like being restricted to features Corona supports or the price tag. I feel so torn here.

share|improve this question
    
Have you found any serious flaws in Cocos? If you're a student, you're going to want to save as much as possible. –  The Communist Duck Feb 25 '11 at 19:17
    
Exactly. I want to save as much as I can. But some have said that Corona speeds up the whole process up to 10x, which, if true, may make it worth it. –  dontangg Feb 25 '11 at 20:05
    
If Lua is an issue, check out Lua bindings for Cocos2d: github.com/snappycode/cocowax –  Daniel Blezek Feb 25 '11 at 20:15
    
Try Cocos2d-iphone. It's what I'm using for my indie game development. –  Stephen Furlani Mar 2 '11 at 20:54
    
Which tech to use questions are now off topic: meta.gamedev.stackexchange.com/questions/695/… –  Tetrad Feb 25 '12 at 19:53
add comment

closed as off topic by Tetrad Feb 25 '12 at 19:53

Questions on Game Development Stack Exchange are expected to relate to game development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

3 Answers

I have never used Corona, but it looks nice. Especially the easy deployment to different platforms makes it interesting if you plan to release for Android and iOS.

The problem with an engine like Corona or Unity is, that you're mostly limited to what they include in their API. Apparently corona doesn't come with a particle engine (you'll need a license for an addon).

The big plus of Cocos2D is, that it's native code and you can mix and match it with other libraries. If you find some good C++ library that would be useful for your game you can add that rather easily (as long as it compiles for iOS). On the other hand you're stuck with iOS then. Porting to Android would most likely require a rewrite of your code in Java.

Programming in Objective-C is most likely to be more difficult than using a scripting language, unless you have some previous experience with C or C++.

I'm sorry that I probably didn't solve your problem, maybe I made it even worse. My advice to you is to make a checklist of your most important features and add a weight (or preference) to each point. Then add up the weights to choose which engine to use.

share|improve this answer
add comment

I haven't used Corona.It needs a license if you need to publish.Cocos2d on the other hand is really flexible and stable 'graphics' engine right now.

I would suggest Cocos2d-x (C++ version) as objective-c version has some performance issues when your update cycle is Overloaded.This performance issues is ONLY because of the message passing System in Objective-C.

As others said,You need to depend on the support of 'third party Engine' if any thing NEW comes up!But cocos2d is flexible at that moment!

If you are targeting multiple platforms,Cocos2d-X is ready for that as well! Check this link - http://www.cocos2d-x.org/wiki/cocos2d-x/Chapter_1_-_Create_a_New_cocos2d-x_project_with_multi-platforms

share|improve this answer
add comment

I have only had a quick once over look at Corona and it does seem nice. Mobile platforms are quite restrictive in and of them selves so trying to knock out a game that will work in multiple platforms can be a daunting task especially if its your first.

I have been in the same place as you. I was torn between different engines but finally setled on Cocos2d. Here are my core reasons:

  • versatility 1: it allowed me to mix native iphone views and features this includes things like gestures
  • versatility 2: you can use natice c or c++ libraries if found any suitable onces
  • Control: i had direct access to the code base so if i wanted to change anything in the engine i could also if i fixed anything i could submit it(not that i had)
  • Support: there is a big and active community behind Cocos2D
  • Complete: i can build the game and the menu all using the Cocos2D Api
  • Extras: out of the box i got other other extras like a physic engine(not that i use it but its supposed to be pretty good)

2 Reasons i would stay with it:

  • has 3d now :)

  • if a 16 year old can make a iPad game of the week then surely i can ;)

As for your check list as far as cocos2d is concerned

  • needs to work on iPhone(check)
  • I don't have much money ($400 for Unity for iPhone is probably too much. I can probably afford $99 for Corona.)(free)
  • Graphics will be 2D(check)
  • Physics support is not needed(well it has it if you change your mind)
  • Ability to use particles would be nice(half check decent effects engine)
  • Game Center support would be nice (Corona is planning to support it soon)(either way pretty easy to implement in its own right)
  • It would be nice to be able to support Android as well if it isn't much effort. (there is a cocos2D for android but it is nothin like the iPhone one which is a good thing cause it means its tailored to the platform) hope that helped :)
share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.