Hacker News new | ask | show | jobs
by sambeau 4717 days ago
Mono is HUGE thanks to Unity3D.[1]

I suspect that C#/Mono has become the de-facto second development language/environment for iOS thanks to Unity3D (an irony that doesn't escape me). It's certainly what all the iOS games programmers I know personally use (and I know a lot).

Wikipedia have Unity down as having over 1 million developers developing for iOS, Android, Windows, Blackberry 10, OS X, Linux, web browsers, Flash, PlayStation 3, Xbox 360, Windows Phone 8, and Wii U.[2]

Unity themselves claim[3]:

* 2M REGISTERED DEVELOPERS

* 400K MONTHLY ACTIVE DEVELOPERS

* 225M TOTAL WEB PLAYER INSTALLS

* 6.6M EDITOR SESSIONS JUN

[1]http://unity3d.com

[2]http://en.wikipedia.org/wiki/Unity_(game_engine)

[3] http://unity3d.com/company/public-relations/

3 comments

That all said, Unity's version of Mono is pretty old, kind of crippled in annoying ways, and they're using an old, buggy version of MonoDevelop (which can't even be bothered to pick up my Xamarin Studio code formatting settings). It's extremely rough going and pretty unpleasant to work with, IMO, to the point where I've gone to a home-rolled C++ engine for my project (having originally come from XNA, tried and ruled out MonoGame, and then tried Unity).
Have you tried Visual Studio? It's an amazing IDE to work with when building games in Unity
Well, yeah. I've used it, and if you're using Unity, it's the only serious option. It's still terrible, because it tweaks out ReSharper (for very good reasons on ReSharper's part--Unity thinks dumping everything in one namespace is a good idea and all sorts of stuff breaks otherwise) and because there's no real support for the dog-stupid not-actually-JavaScript that you're forced to contend with because so much existing code uses it.
And Unity3D is huge thanks to XNA (which was highly popular among amateur game developers) and the demise thereof, I think. Quite ironic indeed, makes me wonder how things would have turned out if .NET hadn't been standarised.
Unity and XNA are very different.

XNA is a very basic library to roll your own game engine.

Unity is a game engine that handles scenes, game objects, physics, animations, complex 3d animations and very sophisticated graphics effects all blended together in a powerful IDE.

XNA is a hammer and nails, Unity is a house.

.NET is not standardised but C# and the CLI are.
Xamarin?