Typically, when we get excited about improvements to gaming performance, it's because of some new piece of hardware like a high refresh rate monitor or a graphics card that's beefier than a porterhouse steak. But Microsoft has come out with a new piece of software that looks like it should give your visuals a significant boost in terms of both quality and performance. It's called DirectX 12 Ultimate. And despite the tacky gamer-sounding name, it features technical optimizations that should really make a difference.
The first big change is about ray tracing. It's a technique in which your GPU can track where light rays are going in a scene to give a much more realistic light and shadow effects than you'd otherwise get. Reflections look amazing. Ray-tracing support first became widespread on consumer graphics cards with NVIDIA's release of their high end RTX 2000 series, but DirectX 12 Ultimate will not only support ray tracing on both NVIDIA and AMD cards, but it should lighten the load on your system to make the technology more accessible to all.
Developers are going to have more control over the process instead of just letting the system decide how to schedule ray tracing through a process called inline ray tracing.
Essentially, this makes the processing of simpler lighting effects more efficient, since the developer is telling the GPU exactly when to trace a certain effect instead of forcing the GPU to spend processing resources trying to decide on its own. The DX 12 Ultimate API also eases the load on your CPU as originally the shaders on your GPU had to talk to the CPU to start ray tracing a scene. Now your GPU can just do this on its own allowing for faster processing overall, hopefully leading to ray tracing support in more games with lower hardware requirements for an eye pleasing experience.
Moving on, mesh shading should also prevent your GPU from rendering parts of the scene that you'll never even see.
Suppose you're playing a high-end AAA title with thousands of detailed objects in each scene. That's a lot for your GPU to handle as it might have to draw trillions of little triangles every frame in extreme cases. But your eye can only detect so much detail right? Imagine you're looking at a faraway mountain for example, you're not going to be able to make out every little crag and rock formation and mesh shading takes this idea and applies it to computer graphics.
Specialized shaders first figure out which objects even need to be rendered at all, then every object that makes the cut is assigned a certain level of detail. Close by objects are rendered at high detail levels with more triangles, with objects that are farther away getting lower levels of detail and fewer triangles. Often several orders of magnitude fewer depending on how far away it is, with the level of detail getting adjusted dynamically as objects move closer or farther away.
Although assigning objects different levels of detail is a technique that's been around for a while, mesh shading allows your GPU to process triangles in chunks instead of individually, allowing level of detail computations to happen far more quickly.
Next up, let's talk about sampler feedback. This is a method that allows more static parts of an image to be shaded from scratch less frequently, meaning that your GPU will take shading data from previous frames and apply it to subsequent frames without having to reprocess everything.
So instead of having to do tons of work on every object, every frame, an object might only be re-shaded every second, third, or even 10th frame depending on the environment.
A related feature called variable rate shading only applies detailed shading to parts of the screen that you're actively looking at with your eyes as your eye's peripheral vision starts to blur quickly from the center of your field of view.
So all this means that DirectX 12 Ultimate is primarily concerned with stopping your GPU from wasting energy, rendering crap that you simply won't see. Freeing up computational power that could be used to create more realistic game worlds. And not only will we see it on PC, but it'll be supported on the Xbox Series X too. So hopefully we'll see developers leverage it in lots of upcoming titles. After all, why would you want to make your GPU do unnecessary work like some kind of power hungry boss?
No comments yet