We've heard a lot about the performance element DirectX 12 brings to games at the hands of its two big architctural innovations: multi-threaded command buffer recording and asynchronous shaders. But here's the thing: the shift from DX10 to DX11 was visible not just in terms of frame rates, but also in the implementation of new graphical effects such as dynamic tessellation. The shift from DX11 to DX12 is so performance-focused though, it's much harder to point to anything happening on your screen and say "there - that's DirectX 12."
Looking to buy a DirectX 12 graphics card? Read up on our GTX 970 group test.
Which is how you end up staring at the below video, courtesy of PC Games Hardware, which shows Ashes of the Singularity running in both API environments and straining your eyes to see any discernable differences:
Huh. The environment looks identical, ditto the number of objects on screen and the level of detail bestowed to each one. The density of weapon effects looks marginally higher at times in DX12, but it's by no means night and day.
By contrast, here's the Heaven 4.0 DirectX 11 benchmark (via Colony of Gamers), with tessellation turned off and on:
Reading AMD's own sales pitch on DirectX 12 (themselves something of a frontrunner in the API by supporting asyc compute at the hardware stage), they give a very clear message that the improvements of 12 over 11 are performance-based:
"DirectX 12 Async Shaders supercharge work completion in a compatible AMD Radeon GPU by interleaving these tasks across multiple threads to shorten overall render time.
"Async Shaders are materially important to a PC gamer’s experience because shorter rendering times reduce graphics pipeline latency, and lower latency equals greater performance. “Performance” can mean higher framerates in gameplay and better responsiveness in VR environments. Further, finer levels of granularity in breaking up the workload can yield even greater reductions in work time. As they say: work smarter, not harder."
"But many gamers also know that game devs must commit to using a feature before it is seen in the real world—we’re taking care of that. Our collaboration with developers like Oxide/Stardock (and others unannounced) to get cool tech into great games is a guiding light for the AMD Gaming Evolved Program, and we’re already seeing healthy interest in these features. That bodes well for everyone!"
That's the point, really - what DirectX 12 looks like will depend on how developers use that improved line of communication between GPU and CPU. There's no one new technique like tessellation in DX11. Oxide achieved Ashes of the Singularity's distinctive look by filling the screen with independent 3D units, each emitting laser blasts and plumes of smoke like there's no tomorrow.
That volume of units is still possible in a DX11 environment - it just runs like a three-toed sloth swimming backstroke through the La Brea tar pits, and thus no right-minded developer would push the envelope that hard. So right now, DirectX 12 looks like the good-looking games we already know, with the dials rolled further up. As developers become more fluent with DX12, they'll find ways to roll the dials further still.
Still, for those with machines powered by DirectX 11 graphics cards, the good news is you're not missing out on a huge step forward in fidelity. If you're feeling particularly bloody-minded, go ahead and run Ashes of the Singularity at its 'insane' graphics setting preset. It'll look largely the same as if you had a DX 12 card powering the action. It's the frame rate that tells the story of the difference between the two.