When Oculus VR revealed the recommended PC specs for the forthcoming consumer release of its highly anticipated Oculus Rift virtual reality headset, the graphics card requirements were shockingly reasonable. Sure, the GeForce GTX 970 and Radeon R9 290 are no slouches in the eye-candy department, but delivering high-resolution visuals to two displays at 90 frames per second takes a lot of firepower. How will developers create top-tier VR games that don't require the latest and greatest graphics cards (like the newly announced GTX 980 Ti) to run at the blistering frame rates required to avoid the dreaded VR nausea?
Nvidia may have stumbled onto the answer with multi-resolution shading (MRS) feature, a new GameWorks VR middleware technology available for developers. MRS takes advantage of a quirk in the way VR headsets render images to drastically reduce the graphics performance needed to create virtual scenes--which could effectively be used to run VR games on less powerful hardware.
Let's dig in.
Let's do the image warp again
The secret sauce in Nvidia's multi-resolution shading lies in the way virtual reality headsets, by their very nature, warp on-screen imagery.
Normally, graphics cards render full-screen images as a straight-ahead, rectangular scene, applying the same resolution across the entire image--think of how PC games appear when you're playing them. But VR headsets use a pair of over-the-eye lenses to push the focal point of scenes out into the distance.
"If those lenses weren't there, you'd be basically trying to focus on a screen right in front of your face, which causes a lot of fatigue and strain," says Tom Peterson, a distinguished engineer at Nvidia. "So these lenses are actually distorting [the image]."
The Oculus Rift (and other VR headsets) scrunch the edges of rendered environments together into a roughly oval shape to make them appear correctly when viewed through the lenses. You can see the end result on your primary computer screen if you ever use a PC connected to an Oculus Rift. Making images appear correctly with all that distortion requires a lot of graphical trickery.
"GPUs render straight, not distorted," says Peterson. "So what we actually have to do is take the original image, then warp it, to account for the fact that it's going to be re-distorted by those lenses, so that by the end of the day--when you see it--the image is straight again."
But that warping compresses the edges of the images, throwing away a lot of the native imagery produced by the GPU. Your graphics card is essentially working harder than it has to. Enter Nvidia's new multi-resolution shading technology.
Divide and conquer
Rather than rendering the entire image at the same resolution, MRS splits the screen into separate regions. The center of the image--where your eyes primarily focus in a VR headset, and where the image isn't distorted-- is rendered at full, native resolution. The edges of the screen, however, are rendered at a reduced quality to take advantage of VR's necessary warping and distortion.
Sign up for Computerworld eNewsletters.