Nov 30 2011
It's about time to learn something new. After publishing a few iOS projects using cocos2d as a programming framework, I've decided that I'm finally going to learn how to use Unity. I've always been on the cusp of using Unity since I first found out about it. At first, it was the $100 price tag for the "indie" version that kept me learning/using Actionscript with the free Flex compiler. After the base Unity package became free (and a Windows version was released), I toyed with the program: ran through a few tutorials before I had a Macintosh to start iPhone development. Once I got the Mac though, I dove straight into cocos2d instead.
cocos2d is great, but it has some limitations that I've been thinking about a lot lately. The main one is that your games run only on iOS devices. While it's true that there is a cocos2d-mac port, it's exactly that: a port. I did some investigation into making Mac versions of some of my games, and right now it's actually a decent amount of work make that conversion. And let's be honest: if a person owns a Macintosh, chances are they own an iOS device as well. As a part-time developer, one of my goals is (or at least should be) to create content in the shortest amount of time possible, and have it be playable on as many platforms as possible.
I think that Unity has reached a point where it is a viable option for aspiring game developers. The software is mature, it has a pretty sizable community, and there are a large number of helpful resources to get up and running. The added benefit of being able to publish to multiple platforms from the same project is what's driving me to finally take the plunge.
Nothing is perfect, and I'm sure there will be things I dislike about Unity. Learning a new development platform is daunting, and it's kind of depressing to start over with something new after investing a lot of time into cocos2d and Objective-C. However, the perceived benefits outweigh the costs in my mind right now, and I'm going to try to make the transition. If you're interested in learning Unity along with me, keep coming back in the months ahead: I'll be posting some introductory tutorials as I learn the basics (and you'll be able to play the finished results in your browser with the Unity plugin!).