DirectX 12 debuted six years ago, introducing a new Direct3D graphics API that was more energy efficient and highly scalable across not just various PC form factors, but also the Xbox One. As we’re on the cusp on next-gen consoles like the Xbox Series X, Microsoft is rolling out an update to DirectX — dubbed DirectX 12 Ultimate — that brings exciting new features like ray tracing and variable rate shading natively to PCs and upcoming consoles.
Microsoft says that DirectX 12 Ultimate is the “best graphics technology” it has ever introduced, with an “unprecedented alignment” between the PC and Xbox Series X. Microsoft is baking next-gen features like ray tracing, variable rate shading, mesh shaders, and sampler feedback directly into DirectX 12 Ultimate, and the company notes that its HLSL compiler and PIX graphics optimization tool will be available to developers, giving them the toolkit to eke out better performance. What that basically means is that game developers will be able to access these technologies to build more immersive gaming experiences across PCs and Xbox Series X.
All of that sounds very exciting, but if you don’t really understand what DirectX is and why it matters, here’s a high-level primer. DirectX is a set of graphics API that control everything from multimedia playback to how games run on your PC. Think of DirectX as the middleman that lets games access low-level hardware resources like video cards.
DirectX 12 Ultimate is unified on PCs and Xbox Series X, giving game developers an added incentive to use the latest features.
What’s unique about DirectX 12 Ultimate is the fact that it’s unified across PCs and the Xbox Series X. Microsoft notes that by the time the Xbox Series X rolls around, there will already be “many millions of DX12 Ultimate PC graphics cards” that offer the same feature-set. That significantly increases the addressable userbase, making it that much more of an incentive for developers to utilize the latest features. If you’re using a video card that already has ray tracing, chances are you’ll see it being rebranded to a DirectX 12 Ultimate GPU.
Essentially, if you’re buying a video card that comes with DirectX 12 Ultimate — or the Xbox Series X — you’ll be able to play games that leverage the latest graphics technologies, leading to life-like visuals and smoother gameplay. But if you’re using a video card without ray tracing and aren’t interested in Microsoft’s next-gen console, you’ll be able to play the latest titles — DirectX 12 Ultimate games will run just fine on older versions of DirectX. Sure, all the latest features that are baked in may not work, but the gameplay itself will be unaffected.
If you’re interested in knowing more about what DirectX 12 Ultimate brings to the table, read on.
DirectX Raytracing 1.1
DirectX Raytracing 1.1 is an incremental update over version 1.0, but it introduces a few new capabilities. Devs will now be able to invoke shaders directly from the GPU without a round-trip to the CPU, and Microsoft notes that this will come in handy for shader-based culling, sorting, classification, and refinement.
DXR 1.1 makes it easier for game engines to load ray tracing shaders on-demand — when a player moves around a world and new objects are rendered. Then there’s inline raytracing, which is more efficient than dynamic shader-based ray tracing in a few scenarios. Microsoft notes that it eliminates the overhead of shader-based ray tracing for simple tasks like calculating shadows.
NVIDIA was the first to roll out hardware-level ray tracing on its GeForce RTX 20 series video cards, and AMD is set to offer dedicated ray tracing cores in its upcoming Radeon lineup. Microsoft rolled out the first version of DirectX Raytracing back in 2018, but barring a few titles, ray tracing hasn’t really taken off with devs. That’s set to change over the coming months now that the technology is natively integrated into PCs as well as Microsoft’s upcoming console.
Finally, Microsoft says that games that already utilize ray tracing will be the first to pick up DirectX 12 Ultimate features.
Variable Rate Shading
Variable rate shading is a nifty feature that lets game developers adjust a game’s shading rate in real-time. The technique lets a GPU utilize its power where it matters most. For instance, if there’s a complex scene with several objects, the GPU is able to render the in-focus objects at higher fidelity, and objects in the background at a lower level of detail.
This is a win-win situation because it takes less toll on the GPU, leading to a noticeable increase in frame rates. Microsoft baked variable rate shading into DirectX 12 last year, and it’s unchanged in DirectX 12 Ultimate.
In a nutshell, mesh shaders give developers the ability to build more immersive worlds by bringing the full power of the GPU compute to the geometry pipeline. Essentially, mesh shaders turn the geometry pipeline to behave more like compute shaders, giving devs fine-tuned control:
Rather than a single function that shades one vertex or one primitive, mesh shaders operate across an entire compute thread group, with access to group shared memory and advanced compute features such as cross-lane wave intrinsics that provide even more fine grained control over actual hardware execution.
All these threads work together to shade a small indexed triangle list, called a ‘meshlet’. Typically there will be a phase of the mesh shader where each thread is working on a separate vertex, then another phase where each thread works on a separate primitive – but this model is completely flexible allowing data to be shared across threads, new vertices or primitives created as needed.
Sampler Feedback reduces load times, increases visual quality, and reduces jitter. It does so by giving developers the option to load textures only when needed. The feature works in conjunction with DirectX 12’s Direct3D API’s tiled resource feature to render larger and more detailed textures while using less video memory.
DirectX 12 Ultimate is coming to video cards first
With DirectX 12 Ultimate now official, we’re going to see announcements from NVIDIA — and possibly AMD — about video cards that leverage all the new features on offer. Microsoft says that GPUs that are already available in the market that leverage ray tracing and variable rate shading can be branded as a DirectX 12 Ultimate GPU. So if you bought a video card in the RTX 20 series, you’ll be able to take advantage of all the new features in DirectX 12 Ultimate.
Most of the features in DirectX 12 Ultimate are already available right now, and by bringing it under a unified suite, Microsoft is making it easier for game developers to start utilizing the latest tech. The big deal here is that DirectX 12 Ultimate works the same way across PCs and the Xbox Series X, and that means next-gen titles will have the same great visuals on both ecosystems. And that’s a fantastic move.