views:

729

answers:

4

There are a number of discussions on stackoverflow.com about what is the best iPhone game platform/engine. My question is not necessarily what is the best, but what is the best for an experienced iPhone developer but not not experienced in game design. This will also be a solo project plus a graphics designer. Consider I will be working full-time at my day job and will need to support a number of other iPhone apps. In other words, designing the game will be very much a part-time project but needs to go out in 2 - 4 months(?). Ramp up time needs to be quick. I'd like to build 2D in the beginning and then go to 3D.

I lean toward Unity 3D since it has lots of documentation and help. From what I can see, the iPhone basic version is $399 and you get the IDE for free. Can anyone confirm?

Unity3D is for 3D but I've read you can still do 2D. I'm trying to find out what is involved there. One drawback with Unity3D is the 8-15 second Unity splash screen. I've also read this doesn't get much better with the higher priced version. But I suppose that is the price you pay for the convenience of having a simpler framework available.

Cocos2d is a great framework and free but lacks documentation. It also requires much ramp up time to learn its framework and choose a suitable physics engine. I don't see this route as practical. I can see learning it across a long timeline as a side project but then you eat into getting your game out the door fairly quick. If I go with Unity, I probably abandon Cocos2d altogether since I will have invested so much into Unity.

Does my reasoning for Unity sound feasible?

---EDIT---

Based on some of the comments, here is the type of game I'm referring to initially: A 2D shooter similar to Zomebieville but most likely without its large feature set.

+6  A: 

I'll vote for Unity 3D. It contains a very nice interactive development environment and supports a variety of platforms (including the iPhone). If you don't have experience writing game loops or any of that, then you will depend heavily on such development environments - you might as well get the best.

If your game is worth it, people won't mind the wait screen.

Frank Krueger
Thanks. Do you know if since they made the IDE free, the total cost for iPhone development is $399?
4thSpace
The version for publicizing to the iPhone ain't free, but won't be too expensive either.
Dykam
I didn't say it was free. I said it was $399 and that is the total cost for iPhone developers, unless I missed something.
4thSpace
unity3d the best!
powtac
+1  A: 
  • This will also be a solo project plus a graphics designer.

  • designing the game will be very much a part-time project but needs to go out in 2 - 4 months(?).

Two words:

Forget it!

Nils Pipenbrinck
Given many games are probably done on a part-time basis, how long on average do many of them take to develop?
4thSpace
I've worked several year as a professional game developer, and I started doing a game or two years earlier... A good graphic library can cut the time to get it done down, but you should still estimate something between 10 (if it's not your first game) and 20 month... These are btw. optimistic estimates..
Nils Pipenbrinck
@Nils You're talking about large games - $6.99 games we call them. Perhaps 4thSpace is making a $0.99 game? :-)
Frank Krueger
@Frank: Yes. I've provided an edit to the OP in regards to the game type. @Nils: Can you comment on Unity vs other platforms in my case?
4thSpace
10-20 months? Canabalt was made in five days. I'm not saying games are fast to build, Canabalt is the exception rather than the rule. But you can make small games a lot faster than a year.
Jonas
Eh...comments are starting to focus on how long it takes to make a game without regard to the developer's game experience or platform chosen, which are part of the OP's question.
4thSpace
Yeah and I just said I thought a year sounded like a pretty long time. But of course - *it depends*
Jonas
+1  A: 

Yes - Unity3D is $399 for the basic iPhone license. Using Unity to create 2D games works in most simplistic terms as follows: The Camera views a 3D world and creates a 2D game when the camera is directly facing a platform from the side. I guess you could also aim the camera straight down (birds eye view) on a surface as well.

The difference is as follows: In Cocos2D you are still running an openGL ES app. You have the ability to have layers in the Z coordinates.

Unity however would be best used when using 3D objects to be animated as the art. If your art is already 2D then in Unity you would be placing your art onto a flat plane. If you are concerned about the quality of the artwork when it comes to your game - if the art is 2D then there really is no point in using Unity and spending the money.

Also consider that Unity3D's basic package will not give you access to your own methods outside of it's framework - if you have some objective c you would like in your game from say another project or you have a special server you want to connect to using your own code that will not work. This kills it for me.

I understand there is a lack of documentation however - There are a lot of tools and tutorials to help.

First consider that Unity3D has a WYSIWYG approach with actions built in for physics. Cocos2D allows you to use several different physics libraries including the one in Unity3D.

Youtube Cocos2d iphone box2d and chipmunk - mix the tags up

One nice thing about 2D art in cocos is SVG and tiles - see this tutorial / video - not much work - not much at all.

http://www.youtube.com/watch?v=yvZM-YPPbII

Cocos is actual simple - it is python and the documentation is poor - however there are plenty of small open source games out there using cocos - a quick google code search will reveal a few - open one up in xcode and it becomes quite clear and if you are a developer who knows an actual programming language it should look as easy as html form there.

I am convinced after working on several projects opening a few games that are out there will make complete sense of all of it.

TouchGameDev
A: 

I don't know much about Unity3D. But I know of a very nice game engine witch you can use it's called Game Maker. I think it's very useful for the inexperienced/solo game developer. With it you should be able to create good quality games in about two to three months. The last I checked it's about $20 for the full version of the software. So, I guess it's light on the wallet too.

wantoknow
Game Maker can't target iPhone at this time, so that is a non-option.
Louis Gerbarg