First, OpenGL solves not all problems for linux app/game development (it's just the graphic part), other parts are in horrible state as recently even stated by Torvalds and even OpenGL has problems on its own (e.g. lagging behind driver support for actual features, general bad quality GFX drivers under linux, lagging behind of opengl behind DX design wise etc).
Of course. OpenGL compete directly with DirectX but only on graphics level. But note that i wasn't referring only to this but as well on other
open-specification stuff.
There is OpenAL for sound, which is supported everywhere, even MacOSX has it as a core technology. Also Khronos (etc. the org behind OGL) supports a new specification named
OpenSL ES for embedded systems which should be considered the de facto way for
handling audio on mobiles, although its on very early stages but i can assure you it works. Also where OpenGL is not natively supported, there's a limited set called
OpenGL ES, which is used mostly on mobiles (etc. embedded systems) but also on browsers (WebGL),
Although there are technical issues, one can't deny that OpenGL is everywhere. Of course it has problems, every api has problems,still the true bitch is to
not have an api to work with. The lagging you say, yes probably it has to do with drivers. The best drivers are always developed for Windows, not for Linux or OSX or whatever, which translates for better performance on PCs, i can't disagree with this.
Though, i can accept a performance hit if that means i won't change my graphics base code across several platforms.
No true, Microsoft gets on board with open source
Are you sure?
ask Microsoft why disallows OpenGL drivers on Windows 8+, XNA and Windows Phone if she likes cooperation. Also, who cares about C#, a mostly web-development language and a product of Microsoft. Also, how this is called
cooperation? It seems to me that Microsft just wants to increase their C# usage on systems using mostly C/C++/Obj-C.
I find it difficult that a seasoned game developing company that uses mostly C/C++ for obviously performance reasons across
all systems will feel relieved that Microsoft went into open-source with ..C#.
Cooperation should mean allow drivers from other companies run into your OS, not releasing a product of yours into other OSes for a piece of the cake etc. C# usage.
Heck, Microsoft doesnt even cooperate with their own products, Windows 7 can't fully use even DirectX 11.1, you know, and i sense this is only the start.