Performance & Optimization

Rendering VR is a resource intensive task. Omniverse XR makes many optimizations to enable VR rednering in real time. Some of these techniques require user input, others have visible side effects. In this guide, we’ll discuss some of these techniques and how to optimize for the best user experience.

Quality Settings

When working in VR, the most important priority for an interctive program is to submit a frame at the target framerate. For Oculus headsets, that’s 72Hz, for Vive HMDs it’s 90Hz. To achieve these framerates, sometimes reducing the workload during a frame may help.

To this end, Omniverse XR has a few quality override modes that can be set in the “Performance and Quality” menu:

Setting

Description

Quality

Attempts to maximize image quality within VR, but still turns on some optimizations

Balanced

Keeps all materials while previwing VR, but sacrifices reflection and shadow quality

Performance

Only keeps solid materials, reduces secondary rays to minimize GPU time

Stage

Uses the stage’s render settings.

Foveated Rendering

A well-known trick to make VR rendering faster is to use less pixels to render an image (simple, right?). Instead of randomly using less pixels, we can choose to reduce the amount of pixels rendered according to where our eye notices it the most - our _fovea_. This is called - you guessed it - foveated rendering.

../_images/foveated_rendering_example.png

In Omniverse Kit, we use foveated rendering directly inside the raytracer - that is, the renderer schedules less rays the further away from the fovea region.

Sometimes, scheduling less rays in a particularly high-density area can cause some visual artifacts.

Since this is an area in active development, we created options for the users to select the rendering technique that looks best for them. The controls under “Performance and Quality” in the VR tab should have some settings to be used in this mode. Here’s a handy guide in case there are unpleasant artifacts:

Troubleshooting Visual Artifacts

Environment With Artifacts

Has Many Direct Lights (>5)

Doesn’t have many direct lights

Fireflies in eye periphery

Turn “Sampled Direct Lighting” on

Grain in eye periphery

Turn “Warped+Sampled” Denoiser on

Turn Foveated Rendering off

../_images/perf_quality_window.png

Troubleshooting Performance Problems

Here are some general things to check in case performance is throttled:

  • Make sure your computer is at the allowed spec for XR performance.

  • Clear the Omnvierse Nucleus cache.