Just gonna roll back a few pages to touch on something here:

Originally Posted By: Force10
It was my very basic understanding, that DirectX was created because sending instructions directly to the hardware was very "dicey" and had a bunch of compatibility issues. Basically, won't programmers now have to "sort" the instructions for all types of graphics cards themselves instead of having DirectX do it for them? It might not be as big of a deal now since it's just down to AMD and Nvidia�back in the earlier days there where more flavors of GPU's.

As far as Directx12 for DCS�since it's a Windows 10 exclusive�and it seems about 50% of simmers/gamers don't plan on switching from W7 for the foreseeable future�it can probably wait for a couple years.

Originally Posted By: Jedi Master
I think the reasoning is that when D3D was created there was a lot of flux in the brand-new 3d acceleration field. You had numerous upstarts coming and going.

Now the field has matured down to nvidia, AMD, and 3rd-place performer but numerically significant Intel. In order to make it easier on the programmers, they have made a lot of concessions so that it's not that different to tell a Geforce or a Radeon how to do something.
In other words, D3D filled a need at the time, but the market has worked to the point that now D3D is more a burden than a help. With D3D stuff will work on all cards, but it might be 2x faster on this brand than that because of how shader X is implemented. With direct hardware access, the devs can tweak their way around it.

The early 3D accelerator market was sheer chaos, with competing chipset manufacturers all over the place. Let me just rattle off all the vendor-specific APIs of the day I can recall, and this probably isn't even all of them:

-3dfx Glide (the only one most of you will even remember)
-PowerVR PowerSGL
-Matrox MSI
-S3 S3D/MeTaL
-ATI 3D CIF

THAT is why Direct3D and OpenGL came about in the first place, so developers didn't have to rewrite their render code for every single graphics card vendor and their radically different chipset architectures.

With just NVIDIA, AMD and Intel to worry about in today's market, and Intel surprisingly not being a complete joke in graphics performance starting with the HD 3000, it should be much easier for graphics programmers to tweak accordingly. It's not like they have to reprogram everything in GPU-specific assembly; that's why these low-level APIs are still APIs.

There's one more big change in game development from the 3D accelerator days: back then, most developers wrote their own engine for each new game, but nowadays, your typical game is going to be running on Unity, Unreal Engine 4 or CryENGINE 3. To a lesser extent, it could be id Tech 5, whatever iteration of Gamebryo Bethesda's using now or one of the more obscure in-house engines like Chrome or Diesel, let alone highly specialized flight sim engines.

There are entire development teams dedicated to just improving those engines so the other people trying to make games with them don't have to worry about the nitty-gritty details of graphics programming. Let them worry about how to make your game run efficiently on a wide range of hardware while you worry about just making the game!

In a way, I suppose that's just shifting the burden of abstraction to the game engine developers...