We’d been kicking around ideas for mobile games for several months. It looked like we were spending more time doing research and avoiding actually building a game. Finally the first week of November – yep, four weeks ago – we threw down the gauntlet. We’d better stop dreaming, planning, researching and get down to actually building a product. We decided, that the day of Thanksgiving – actually the day before I think – we should ship our first game.
Now, there was just a minor matter of deciding what game, spec’ing the darn thing, deciding on a platform, building, testing and launching. Long story short, we decided we’d do an Android game first and quickly follow up with an iOS one. This meant we’d have to use a Game Dev platform capable of supporting multi-platform. And of course it would support serving ads. As the game was going to be a multilevel one targeted to casual gamers, mere mortals (read our marketing folks) would have to be able to build levels, without relying on the developer – moi – for everything. Thanks to the choice of our platform three ways later, HomeBound, our first game was launched on the Android store.
As the title of this blog post attests we selected Unity as our game development platform for the following six reasons.
The short version
- An IDE doubles as a level editor
- Unity lets you create ready-to-use Game Objects
- Tweak properties easily, even at runtime
- Easy integration of Ad platforms like AdMob
- Phenomenal cross-platform support
- Great developer support and community
The longer version
IDE doubles as a level editor Building levels in Unity could not get any easier than dragging and dropping objects into a scene view. You even get a game view that shows how the level will look like as you are building it. Although there are some great plugins that let you ‘paint’ your levels, for simple games the IDE does very well as a level editor. If you are having trouble aligning your sprites for the game background check out vertex snapping.
Unity lets you create ready to use Game Objects This has to be the best feature on Unity. Once you have a game object ready (something like Transform + Renderer + Collider + RigidBody + Scripts) you can turn it into a template (or a Prefab in Unity lingo) which can then be simply added to your scene as many times you desire. Crafting and manipulating objects this way can really bring out the creative you and turn a laborious level making process into fun.
Tweak properties easily, even at runtime
Unity has the so called Inspector view where you can play around with the properties of your game objects. Even the scripts that you write can expose their properties through this view. E.g. Planets in our HomeBound game could either blow up or not. The script handling this behavior simply kept a public Boolean variable as a switch and voila! Unity automatically puts a checkbox in the Inspector to turn on/off planet self-destruct! Going further you can even change these properties at runtime to do a fair amount of fine tuning. Games with lots of dynamic behavior can really benefit such a feature.
Easy integration of Ad platforms like AdMob
Google already has Android and iOS plugins for AdMob on Unity. They are quite easy to integrate and require no coding effort outside Unity. Simply install their plugin, copy some files and make the appropriate calls to launch banner or interstitial ads. Check here for details.
Phenomenal cross-platform support
As the name itself suggests, Unity aims to become a one stop shop in multi-platform game publishing. More than 10 platforms are supported which includes Android and iOS. Everything happens from within Unity, from building for a specific platform to pushing the app to a device. According to a survey by Vision Mobile, Unity is used by 47% of game developers as a primary multi-platform development tool.
Great developer support and community
Unity has been around since 2004; that is a good 10 years to have a thriving and mature developer community. Barring the most obtuse queries, you will get an answer very quickly in the developer forums. There are detailed text/video tutorials available within the Unity site itself and dozens more from 3rd party sites. The Unity Asset Store will satisfy all your content needs, right from scripts and sprites to complete projects. You can actually sell your wares there if you want to!
We’re still learning and will share in a separate posts 8 misconceptions we’d to overcome. Meanwhile good luck.