Microsoft has announced that the DirectX 12 graphics API now support Variable Rate Shading (VRS), bringing additional to games without sacrificing visual fidelity. The feature allows developers to prioritize shading quality for parts of an image that need it more, allowing computers to save resources on the parts where it's not as important.
As Microsoft explains, the shading rate determines the resolution at which shaders in an image are called, with a higher shading rate meaning that the shader will have higher quality, but also that it will be using more system resources. Typically, the shading rate applies to all the pixels in a frame, but VRS means that developers can set different shading rates for different parts of a said image, which in turn means that you can save resources and improve performance by lowering the shading rate on parts of an image where it won't impact the visual fidelity.
Microsoft's API will support VRS to be implemented per draw or within a draw, and the latter can be done using either a screenspace image or per primitive. Having these options means that developers can choose the method that works best for their game. In a test conducted with Firaxis, Microsoft saw performance improvements of 20% using per-draw VRS, but noted that some slight visual degradation can occur. Using within-draw VRS (pictured above), the same game still got a 14% performance bump, but with much less noticeable quality loss.
Microsoft is aiming to bring VRS support in DirectX 12 to all kinds of hardware, starting with Nvidia's Turing graphics cards, all of which support VRS, also referred to as Adaptive Shading. Intel is also working on support for the technology in its upcoming Gen11 GPUs, and it will have a demo to show off at GDC if you're interested in checking it out. There's no word on support for AMD cards, but it should arrive soon, too. VRS support will also be added to PIX for Windows once the API is formally announced.
Microsoft is already working with a number of publishers, including Activision, Ubisoft, and Epic Games, as its own Turn 10 and 343 Industries studios to implement VRS in games. It will also have two sessions at GDC on Wednesday, one at 2PM and another at 3:30PM (local time), to help developers get started with the technology.