Today we’re introducing Meta Quest Super Resolution to help you improve the clarity and quality of your VR apps. Super Resolution is a VR-optimized edge-aware scaling and sharpening algorithm built upon Snapdragon Game Super Resolution with Meta Quest-specific performance optimizations developed in collaboration with the Qualcomm Graphics Team. You can enable Super Resolution today to maximize your image quality on Meta Quest’s high-resolution displays and deliver a smoother experience for your audience. Dive in below to learn more and get started.
Super Resolution in the VR Compositor
The VR compositor adapts the 2D and 3D content rendered by apps for display. This includes corrections for optical artifacts (lens distortion, chromatic aberration), panel and backlight variations (rolling shutter, uniformity), and app behavior (image resolution, pose prediction, color space) to produce the final result that end users perceive.
The final image produced by the compositor is generated at the product display resolution; however, app content may be rendered at lower than display resolution and upscaled to fill the screen if GPU performance doesn’t support rendering at full resolution. Immersive 3D apps typically render at lower than display resolution. 2D panel apps often target the full display resolution, but the actual resolution can vary significantly based on the viewing distance. By default, the compositor performs low-cost, hardware-accelerated bilinear upscaling to bring content to display resolution. While highly efficient, bilinear scaling can introduce blurring and artifacts that degrade image quality. Super Resolution provides a high-quality alternative to bilinear scaling while maintaining low performance cost.
What is Meta Quest Super Resolution?
Super Resolution is a single-pass spatial upscaling and sharpening technique optimized to run on Meta Quest devices. It uses edge- and contrast-aware filtering to preserve and enhance details in the foveal region while minimizing halos and artifacts.
Quality and Performance
Super Resolution is an improvement in image quality over the current sharpening methods we expose to developers. In addition to the default bilinear sampling, we currently expose “normal” and “quality” sharpening methods based on robust contrast adaptive sharpening (RCAS) techniques via an OpenXR extension. With optimizations introduced to our normal sharpening algorithm in V53, our normal sharpening algorithm produces near identical output quality at much lower performance cost compared to the quality method. Super Resolution avoids blurring and stair-casing artifacts from bilinear sampling, and it provides smoother edge reconstruction and reduces halo artifacts compared to our existing contrast adaptive methods. In V55, we will be replacing our existing quality sharpening method with Super Resolution providing two distinct algorithms with different levels of quality and associated performance costs.
Super Resolution is up to 2x faster than the “quality” sharpening algorithm currently used for Link Sharpening+ on Meta Quest 2 and Quest Pro. The exact GPU cost of Super Resolution is content-dependent, as Super Resolution devotes more computation to regions of the image with fine detail. The cost of enabling Super Resolution over the default bilinear filtering is lower for content containing primarily regions of solid colors or smooth gradients when compared to content with highly detailed images or objects.
Figure 1: Scaling 1568x1632 pixel eyebuffers to Quest 2 display resolution using bilinear (Default), Normal Sharpening, and Super Resolution (New Quality Sharpening)
Limitations and Best Practices
- YUV textures and Cube maps are currently unsupported. Enabling Super Resolution will revert to bilinear sampling.
- Subsampled textures will be supported starting with V56.
- Enabling Super Resolution will increase Timewarp GPU cost. Whether employing Super Resolution is better than devoting that GPU to increasing eyebuffer resolution depends on an app’s compute bottleneck.
- Enabling Super Resolution on content that’s close to display resolution may result in increased temporal aliasing or flicker.
Enabling Super Resolution
Super Resolution is controlled via the quality sharpening option in
XR_FB_composition_layer settings OpenXR extension. In Unity, Super Resolution can be enabled
via OVROverlay for compositor layers or OVRManager for projection layers.
Figure 2: Unity interface to enable sharpening on immersive layers via OVRManager.
Super Resolution is available for Meta Quest Link via the
Oculus Debug Tool. Super Resolution is enabled when Link Sharpening is set to “Quality”.
Figure 3: Super Resolution can be enabled for Meta Quest Link via the Quality Link Sharpening option in the Oculus Debug Tool
We’re excited to offer you yet another way to deliver sharper, smoother experiences for your audience, and we can’t wait to see how Super Resolution improves the visual quality of apps throughout the Meta Quest ecosystem. For more updates and news, be sure to follow us on
Twitter and
Facebook.