Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I will not go into details, but I would like to hear your opinions about this:

Essentially, my project will be a 2d game, with lots of complex levels, where some might be simple and others might be a bit more deep, with physics, etc. We want to implement our very own online structure: logging in, leaderboards, achievements, friends etc with our own servers. This means no OpenFeint nor GameCenter at all. We expect this game to be very large in both graphics and audio. We wish to use in-app purchases.

Now, we considered two options. Cocos2d and Unity3d.

We need help deciding using the factors I mentioned before (networking, good performance even for a large game in terms of graphics and audio like this, in-app purchases, etc) which option would fit better this?

Technically, both options can create 2d games. I'd like to hear your opinion.

share|improve this question

closed as not constructive by Tetrad Apr 12 '12 at 18:34

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

You might want to accept some answer to encourage people answering your questions. It is near voting buttons near answers. – Dvole Feb 8 '11 at 20:36
Forgot, haha. There, sorry. – Oxide Feb 9 '11 at 5:41
Since this question has been asked we've instituted a "no which tech is better" mantra.… – Tetrad Apr 12 '12 at 18:34
up vote 4 down vote accepted

For 2d game, cocos2d is surely preferable. Unity makes it easy for 3d apps, and the features that make it great for 3d will not be used in your project at all. Also considering unity is cross-platform, while cocos is single platform, that keeps you out of unnecessary overhead that is present in the engine. Cocos2d is also very polished and easy to use - features that will come very handy in large projects.

share|improve this answer
The cocos2d framework exists on multiple platforms, though, not nearly as well as Unity 3D – HS01 Jan 31 '11 at 4:39
@HS01 That's right, but not too right. The cocos2d on other platforms is written in other languages like Java for android and C#, and those versions are not even API-compatible, as in you can't translate your game into another one without rewriting it alltogether. – Dvole Feb 1 '11 at 6:40
Check out for a true cross-platform (C++) implementation of Cocos2D. It's a little rough around the edges, but I'm porting a Cocos2D-iPhone game I wrote to Cocos2D-x right now, and it seems more or less production ready. The momentum with which it's being developed is amazing, too. – Mitch Lindgren Apr 29 '11 at 22:06

They both have their pluses and minuses, and I don't think that the little detail you've specified can really narrow down between the two which is better. It would probably be better to pick one based on desired workflow, tools support, cost, and experience of the team, I would think.

share|improve this answer

If you want to release the same game for many platforms (i.e. Chrome, Android, IOS, etc.) then Unity3D is definitely preferable. Otherwise you can enjoy cocos2D. I actually use both depending on what I want to achieve.

share|improve this answer

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