I guess this means that if I want to get the most out of my games I'll have to "upgrade" to Windows 8.1. Not super excited about having to configure away all of the metro garbage.
As a DirectX developer who's tried out OpenGL a few times, I found it horrific and painful to program in. But then again, I'm sure OpenGL devs complain about DX in the same way.
I honestly think DirectX is a great API. And let's be honest, by the time this is release in "Holiday 2015", it'll be at least until mid 2016 before anything comes out that uses it. Combine that with the rule about every other MS OS being good, and we should have a fairly decent Windows 9 to run these games on.
OpenGL is less painful in the long run, because you won't be tied to Microsoft's APIs. Those APIs weaken you and your ability to think about graphics programming.
All you need is a good GL wrapper. If writing your own is painful, just use someone else's. But it's important to be able to write your own, because if you can't, then that's what weakens you.
"Those APIs weaken ... your ability to think about graphics programming." - what is the justification for this? I don't really see that it follows, as virtually all of the interesting stuff (CPU code, shaders) is API-agnostic.
A GPU doesn't work in the way that Microsoft would have you believe it works. By restricting your worldview to Microsoft's predefined notion of what it should be, you'll never know the true extent of what you can do as a graphics programmer.
A secondary reason to avoid DX is because gaming on windows has a high chance of being dead within the next decade. If that seems laughable, think of how laughable it would've sounded for anyone to say that about CDs for music in 2001.
Well, I was hoping for some further explanation, but for what I paid this is fine ;)
I was under the impression that DX11 (and DX10 before it) actually do a decent job of exposing basically everything that's widely supported, and in a manner that can be made to work tolerably efficiently across a range of different hardware. But I was told this by some guy from MS so maybe I shouldn't have expected him to say anything else.
Assuming it's the case, perhaps I'm just cheating by not thinking of the leftovers as useful - not because the behaviour is useless, I mean, just because if you're targeting PC, you just have to accept that the underlying hardware could be anything. OpenGL extensions could provide you with more, but support can be a bit hit or miss. Reminds me too much of MS-DOS.
But I could have been misinformed, or my supposition is simply outdated, and the article suggests that could well have been the case, in which case my conclusion would be partly bogus too.
By restricting your worldview to Microsoft's predefined notion of what it should be, you'll never know the true extent of what you can do as a graphics programmer
can't you just as well say that By restricting your worldview to OpenGl's predefined notion of what it should be, you'll never know the true extent of what you can do as a graphics programmer ? I probably don't have enough experience with it, but to me it seemds in the end both DirectX11 and latest OpenGL pretty much have equal capabilities apart from some details? Not like DirectX7 for instance, which obviously is capable of less.
OpenGL is driven by the hardware vendors. It's developed a lot like html5, extensions get exposed and tested and get standardised based on that experience.
> All you need is a good GL wrapper. If writing your own is painful, just use someone else's. But it's important to be able to write your own, because if you can't, then that's what weakens you.
I have seen exactly zero good OpenGL wrappers. The stateful API makes it pretty much impossible to wrap in a way that would actually make it better.
I have also wasted a lot of time trying to implement some kind of a GL wrapper. I got something done that was fairly comfortable to use for my own needs but nowhere close to being an universal wrapper of any kind.
> As a DirectX developer who's tried out OpenGL a few times, I found it horrific and painful to program in. But then again, I'm sure OpenGL devs complain about DX in the same way.
As an OpenGL developer, not a day goes past without me wishing that the API was sensible like the DirectX API and not the state machine mess that it currently is.
I'm pretty sure any OpenGL programmer worth their salt will agree. Only some beginners with no practical experience think that OpenGL is a better API because it requires less boilerplate code to draw a triangle.
OpenGL support seems rather iffy on Windows. Minecraft uses OpenGL and wouldn't run on my i7. At one point it wouldn't even load, but a while later it ran, but at laughable framerates.
Well before it failed with an error about initializing graphics. When I tried a year later, that error no longer appeared but the FPS was in the single digits. I didn't dig around for special OpenGL drivers, no, I just let Intel and MS push certified drivers out via normal update mechanisms.
OpenGL has generally been great on Windows, due to the overwhelming demand for high performance graphics on Windows. While i7 GPUs are good in terms of integrated GPUs, they are still not great compared to discrete GPUs (try a GeForce or Radeon).
Or you could just wait till a DX12 game is out and decide if its worth upgrading. DX11 got a fairly lukewarm response from most studios when it came out.