Microsoft Phases Out XNA and DirectX? 256
mikejuk writes "It is reported that Microsoft has sent an email to DirectX/XNA MVPs which informs them that they are no longer needed because XNA and DirectX are no longer evolving. What does this mean? If you don't need MVPs then presumably you anticipate nothing to support in the future."
Use OpenGL instead (Score:5, Informative)
All the growing platforms use OpenGL. Even Windows can use OpenGL (although it is not tyhe favored child). If you have an eye on the future, it makes far sense to develop with OpenGL. That way you can develop shaders that will work on: Android, iOS, Mac, Linux, Windows, Unix, embedded devices (eg. commercial avionics), the PS3. What you miss out on is XBox 360 and Windows Phone. Compare the combined size of the coverage of OpenGL platforms to the Direct3D-only platforms. There is simply no contest anymore in terms of units shipping and growth rate.
OpenGL is the future of hardware accelerated graphics. The nice thing is that no matter what changes in the hardware/platform space you investment in OpenGL is never lost, it comes across as you migrate.
DirectX is fine (Score:5, Informative)
This actually only relates to XNA (Score:5, Informative)
As anyone who deals in this knows XNA is a dead end and DirectX most certainly is not. They are retiring the XNA part of the XNA/DirectX MVP.
Link [zdnet.com]
Re:Use OpenGL instead (Score:5, Informative)
Because XNA is actually a pretty good framework embedded in a really good toolset and there's really nothing that matches it in terms of ease, speed, and quality of development without also losing much real flexibility and power to do what you want to.
I agree with you for the most part, I'm using OpenGL now because XNA at least does have an awful lot of uncertainty under it with the fact Microsoft have chosen not to support it in RT and Visual Studio 2012, suggesting there is indeed no future for it, but if you just want to make games as say, a hobbyist, and don't really care about sales figures or market reach then XNA is your best bet, especially if you work a full time job - XNA can mean the difference between having time to embark on such a project alongside work, and not. A lot of this comes down to OpenGL's inconsistency of support meaning more bug hunting, more time and effort to setup, and the fact the API design is dated and often painful to work with and that the only language it was really developed hand in hand with - C, isn't exactly a productive language (unless you have to use it, for performance concerns). XNA being developed hand in hand with C# is partly what made it excellent to work with because it was a modern framework design melded with a modern language.
But for what it's worth I think there's another point in OpenGL's favour, Microsoft have a long history of failing to provide graphics API stability, GDI, GDI+, WPF 2D/3D, DX, MDX, XNA, and so on - so many APIs over the years have come and gone with support disappearing to a large extent or even completely. It's one of Microsoft's developer weak points.
I've always been a fan of Microsoft's graphics APIs and have always defended them over OpenGL because they haven't had most the headaches OpenGL causes, but even I'm fed up now of the fact that each graphics API has a lifespan of a few years, that if you upgrade Visual Studio you can likely no longer use the integrated tools for that API for years afterwards, if at all. It's just gotten stupid at this point and has become such an overriding concern due to the frequency of the problem that all the benefits are now irrelevant.
Re:Use OpenGL instead (Score:4, Informative)
OpenGL has been far more fragmented in terms of the numer of vendor extensions you needed to use for a long time to get access to recent functionality.
Your OpenGL knowledge is clearly out-of-date. The extension mechanism still exists, of course, but is not needed to get GLSL shaders that have advanced functionality.
Re:Use OpenGL instead (Score:4, Informative)
Re:Huh? (Score:4, Informative)
From the article all that's dying is likely the name. The same technologies will still exist and be limited to Xbox and Windows only. No OpenGL.
Re:Huh? (Score:5, Informative)
That would be OpenGL+OpenAL, a few games do use it on Windows.
ANGLE (Score:4, Informative)
The performance hit is small enough for Chrome, Qt and other projects to use ANGLE to translate Direct3D to OpenGL:
https://code.google.com/p/angleproject/ [google.com]