VRWorks - Variable Rate Shading (VRS)

Variable Rate Shading is a Turing feature that increases rendering performance and quality by varying the shading rate for different regions of the frame.
VRS Wrapper makes it easier for developers to integrate gaze tracking capabilities of their HMDs for foveated rendering. This solution includes convenient presets for image quality and performance, as well as support for custom configurations.
Variable Rate Supersampling (VRSS) leverages VRS to apply supersampling in the region of interest of the screen in order to increase image quality.
Variable Rate Shading
An important property of VR systems is that the optics in the lens creates a varied resolution and sample rate of the view surface. With the Maxwell and Pascal architectures, we introduced techniques such as Multi-Resolution Shading (MRS) and Lens-Matched Shading (LMS) to optimize shading workloads for VR. MRS and LMS allowed developers to split the rendering surface up into subregions and match the sampling rate to the lens in each region, rather than overshading everywhere to meet the maximum local sampling needs.
Hardware: | Compatible with: VR Ready Quadro and VR Ready GeForce Turing based GPUs. |
Software: | Compatible with the following APIs: DX11, DX12, OpenGL, Vulkan. |
Turing introduces a new and more flexible technique to control the shading rate called Variable Rate Shading (VRS). With VRS, the shading rate can now be adjusted dynamically across the image - every 16 pixel x 16 pixel region of the screen can now have a different shading rate.
This fine level of control enables developers to deploy new algorithms that were not previously possible for optimizing shading rate and increasing image quality. In this section, we will describe the underlying hardware mechanisms of VRS, and a few of the ways developers can enable it.

Without VRS, every pixel in the scene in Figure 1 would be shaded individually (the 1x1 blue grid case). With VRS, the pixel shading rate of triangles can vary. The developer has seven options to choose from for each 16x16 pixel region, including having one shading result be used to color four pixels (2x2), or 16 pixels (4x4), or non-square footprints like 1x2 or 2x4. The colored overlay on the right side of Figure 01 shows a possible application to a frame - the car, sky, and foliage have been shaded at full rate (i.e., blue region) to preserve fine details. The area next to the car has been shaded once per four pixels (green), and the road to the far left and right periphery has been shaded once per eight pixels (yellow).
Wwith Turing’s Variable Rate Shading technology, a scene can be shaded with a mixture of rates varying between once per visibility sample (super-sampling) and once per sixteen visibility samples. The developer can specify the shading rate spatially (via a texture). As a result, a single triangle can be shaded using multiple rates, providing the developer with fine-grained control.
Note that VRS allows the developer to control the shading rate without changing the visibility rate. The ability to decouple shading rate and visibility rate makes VRS more broadly applicable than techniques such as MRS and LMS, that lower total rendering resolution in specified regions. At the same time, VRS, MRS, and LMS can be used in combination since they are independent techniques enabled by separate hardware paths.
Increase rendering performance
Boost application performance using coarse shading
Maximize quality where it matters
Fine grained control over image quality improvements via supersampling
Unlimited configurability
Obtain the best image quality and performance for your application
VRS Wrapper
VRS can be leveraged for many uses cases including applying supersampling to text and, enhancing quality on certain materials or scene regions. But one particularly beneficial use case for VR is foveated rendering. To simplify integration of foveated rendering, we developed a streamlined set of APIs that address this specific use case.
The VRS Wrapper APIs assists developers in integrating foveated rendering within their DX11 application. This implementation provides the minimum number of APIs required for integration with much of the heavy lifting done inside the NVIDIA driver. This solution includes convenient presets for performance and quality as well as support for custom configurations.
Hardware: | Compatible with: VR Ready Quadro and VR Ready GeForce Turing based GPUs. Requires an HMD with eye-tracking. |
Software: | Compatible with DX11 applications using forward rendering and MSAA. |
VRS Wrapper consists of the following two interfaces and easy to use presets:
- VRS Helper controls the foveated rendering parameters
- Gaze Handler gathers and manages the eye-tracking data
Learn more about VRS Wrapper in our DevBlog Easy VRS Integration with Eye Tracking
Ease of integration
Simpler integration in DX11 using presets for regions and shading rates
Maximize quality where it matters
Fine grained control over image quality improvements via supersampling
Increase rendering performance
Boost application performance using coarse shading
Variable Rate Supersampling (VRSS)

Variable Rate Supersampling (VRSS) leverages NVIDIA Variable Rate Shading (VRS), which is a key feature in NVIDIA’s Turing architecture, to apply different shading rates in different regions of the screen to increase image quality or performance.
A typical VR user puts on a standard HMD and looks at the center of the screen. Improving image quality in the center of the screen is paramount to reducing aliasing and providing a smoother immersive VR experience to the user. VRSS accomplishes this through fixed-foveated supersampling, by increasing the shading rate in the center mask region of the screen, while keeping the sampling rate unchanged in the peripheral region.
Minimum Hardware: | GeForce GTX 1650 Super |
Recommended Hardware: | GeForce RTX 2070 Super (higher performance GPUs will provide superior image quality) |
Software: | Compatible with DX11 applications using forward rendering and MSAA. |
The center mask region can be super-sampled up to 8x to optimize image quality. The maximum shading rate achieved is limited to the MSAA sample count per pixel, so 8x supersampling is enabled via 8x MSAA, 4x supersampling is enabled via 4x MSAA, and so forth.
VRSS can be applied to all VR games and applications that are DX11, Forward Rendered and have MSAA. The VRSS functionality resides in the NVIDIA Driver. Developers do not have to write any code to integrate VRSS; they simply submit their VR game or application to NVIDIA for testing. NVIDIA will test the VR game or application, and if it benefits from VRSS, then it will be whitelisted in the NVIDIA Driver. VRSS benefits both new and existing VR games and applications.
In order to leverage this technology, developers must submit their game or application to NVIDIA for validation and inclusion in the drivers.
Maximize quality where it matters
Up to 8X supersampling in the region of interest
No developer integration
Developers simply submit their application for review
VRSS Enabled Games
Boneworks Budget Cuts 2: Mission Insolvency Doctor Who Eternity WarriorsTM VR Hot Dogs, Horseshoes and Hand Grenades In Death Job Simulator Killing Floor: Incursion L.A. Noire: The VR Case Files |
Mercenary 2: Silicon Rising Onward VR Pavlov VR PokerStars VR Raw Data Rec Room Rick and Morty: Virtual Rick-ality Robo Recall SairentoVR |
Skeet: VR Target Shooting Space Pirate Trainer Special Force VR: Infinity War Spiderman: Far from Home Spiderman: Homecoming – Virtual Reality Experience Talos Principle VR The Soulkeeper VR The Walking Dead: Saints & Sinners VRChat |
VRS in-action

NVIDIA VRSS, a Zero-Effort Way to Improve Your VR Image Quality
The Virtual Reality (VR) industry is in the midst of a new hardware cycle – higher resolution headsets and better optics being the key focus points for the device manufacturers.
Read More ...
Variable Rate Supersampling will improve your VR gaming, a new Freestyle Splitscreen filter will let you further customize your creations, Max Frame Rate gives you ...
Read More...
Easy VRS Integration with Eye Tracking
VR head-mounted displays (HMDs) continue to dramatically improve with each generation. Resolution, refresh rate, field of view, and other features bring unique challenges to the table. The NVIDIA VRWorks Graphics SDK has been offering various rendering technologies to tackle the challenges brought forth ...
Read More...
NVIDIA Variable Rate Shading Demonstrated in Autodesk VRED
We introduced Variable Rate Shading (VRS) last year with the Turing architecture. This new, easy to implement rendering technique allows developers to vary the amount of ...
Read More...
ZeroLight’s proprietary visualisation platform is used across the automotive industry. Offering real-time product rendering, hyper-realistic visuals, our proprietary supersampling technology ...
Read More...
NVIDIA Turing GPUs enable a new, easily implemented rendering technique, Variable Rate Shading (VRS). VRS increases rendering performance and quality by applying …
Read More...