Unity is a multiplatform game development tool, designed from the start to ease creation. A fully integrated professional application, Unity just happens to contain the most powerful engine this side of a million dollars.

SpaceMammoth says

10/10 - Agree Disagree (4)

For me unity has been the perfect game engine. I am a .net developer so being able to make games in c# is a big point. In 'Mammoth Gravity Battles' I was most interested in the graphics capabilities, and was very happy to be easily able to edit shaders and control effects. There is some debate as to if Unity can compete with AAA game engines, but for my needs, I was able to achieve better visuals than I imagined.

I can't comment on the physics engine, in 'Mammoth Gravity Battles' I control all the physics in code, from what I can see it looks very capable.

The main advantage with Unity is the reasonable license costs to get going and the wide platform support - being able to target iOS, Android, Blackberry, OUYA, PC, Mac, Linux is a real plus. Windows 8 RT and Mobile coming soon too...

One thing to we aware of, if your game has any GUI at all you will need to buy one of the GUI packages from the internal asset store (aprox 100usd), as the internal GUI is currently not capable enough.

Although, I didn't need them, real-time shadows requires the pro version, which gets more expensive if you are on multiple platforms. I think the prices are very reasonable given the lack of royalties, but its worth planing for. It is great that you can use the free version to build for PC, Mac or Web, which is definitely the way to go if you are starting - build the game, if you get it to a near finished state, start to pay for the platform add-ons and capabilities you need.

Overall, for me in the building of 'Mammoth Gravity Battles', unity has been completely ideal.