Nope. OpenGL, SDL, Fmod, Lua.
Originally Posted by PsynoKhi0
Developers pick their platforms fully aware of the platform's requirements and limitations. There are no strings for the developers that they didn't start off seeing.
Notice the "no strings attached" in the same sentence.
If it costs a million dollars to develop a game using an off-the-shelf engine, or two million to write your own engine, plus a hundred thousand per extra platform to port to, which are you going to pick? Especially on a limited starting budget.
Which would have left them with "only" pretty much everything else?
That "say" doesn't affect anything already produced, though. They can't break Mono's ability to run .NET 2.0 or 4.0 apps without breaking .NET's ability to run .NET 2.0 or 4.0 apps - and given .NET is an ECMA published spec from a dozen companies besides Microsoft, I really don't think the impending doom scenario is realistic.
Aww come on, stop picking out single sentences and putting them out of context of the whole post...
Their say in what direction c#-related technology takes, controlling the pace of development, breaking compatibility, pick your poison...
Are new libraries produced which Mono often doesn't implement? Yes. WPF isn't implemented, for example.
Are new language or runtime abilities produced which Mono often doesn't implement? Actually, no - Mono implements new .NET features before .NET does. One of the main features of .NET 5.0 has been in Mono for years, and that's long been the way things go.
Not to mention Mono-only advantages, e.g. the Mono.Simd library allowing hardware accelerated datatypes when executing on Mono (and unaccelerated on .NET)
Development in garbage collected languages is faster and less buggy than in manually memory managed languages like C. By leveraging middleware, you can receive pre-solved problems that otherwise every game needs to implement from scratch every time. Could Bastion be written in C and SDL only? Sure. But it'd be far less productive than using a framework to abstract away the busywork - and for an indie developer, time is literally money.
Again... Why not pure SDL from the start? And again, what technical advantages does xna have over SDL? I mean, choice and competition is good and all, but the new kids better bring something better to the table. "Personal convenience at the expense of long-term sustainability" doesn't count.
Also, I see you have personal interests in the matter, could a more objective approach chime in?
Typically, a game ends up being written with two main engines - a graphics engine (almost always in C) and a logic engine (almost always something nicer like Lua, which designers can use, as well as developers). Mono's an increasingly popular choice for the latter, with Unity3D, The Sims 3, and various indie titles like those already mentioned, using it to develop games faster, with far more expressive logic engines than would be allowed by using something home-grown or low-performance.
It's really not as complicated as people make out. LGPL runtime, MIT for Mono-provided class library, other licenses for non-Mono libraries bundled in for convenience like SharpZipLib.
True, iPhone and Android development with Mono is a paid commercial product.
And not everything is free.
Mono is missing large Microsoft classes like WPF, but is pretty much always ahead on the technology part - not to mention being cross-platform. And the only people who moan that Mono is incomplete are people who refuse to use it - people developing for Mono either use the available classes, or use the fact that it's Free Software and add the missing classes
Point taken on mono passing .net... Maybe? I found a handul of copy-paste press releases claiming that, that's pretty much it, though no I never got past the 2nd page of search results. Also this page
lists what's left to do on mono vs .net, so it's at least lacking in some areas.
Microsoft are interested in only one thing: making money. It's 2012, and they can't pretend they set the agenda anymore (e.g. on mobile they're a bit player). Making .NET more attractive generally increases their ability to sell Visual Studio, so it's in their best interests for .NET to remain attractive. Far from attacking Mono, the first external contributor to ASP.NET MVC4 when they started releasing it under a GPL-compatible license was Miguel de Icaza.
To make things clear here, I see microsoft as an arrogant company hellbent on controlling the computer industry from top to bottom, through more or less obvious means. And they have very shifting positions towards open source. So I'm very skeptical about things like mono. (And before anyone tries ;) WINE is a completely different beast, since they have no ties with microsoft, and while I do use WINE it's a last resort)
It's all in your head. In the 11 years Mono has been with us, here's a partial list of things Microsoft has done to play nice with it (note that Apache 2.0 and Ms-PL licenses both include patent pledges, i.e. have no patent concerns):
But hey, here's your chance to persuade me it's all in my head. Good luck...
- Released .NET Micro Framework under GPL-compatible Apache 2.0
- Invited Mono developers to speak at Microsoft conferences
- Removed doubt about ECMA334/335 patent concerns, by issuing a patent pledge similar in language to Oracle's ODF patent pledge
- Released ASP.NET MVC 1, 2, 3, and 4 under Ms-PL then Apache 2.0
- Released IronPython and IronRuby under Ms-PL then Apache 2.0
- Released F# under Apache 2.0
- Paid the MPEG-LA a license fee for every Linux user using Moonlight
Here's the complete list of times they've acted against Mono: