New Unity 6 Feature Makes it Easier for XR Devs to Maximize Text & UI Quality

The latest version of the Unity game engine—which is the basis for the vast majority of XR games made today—is now available to developers as a preview. Unity 6 Preview includes new features to make XR development easier, including ‘Composition Layers’ which can significantly increase the quality of text, UI, photos, and videos in XR.

Unity 6 Preview (formerly known as 2023.3 Tech Stream) is now available for developers to experiment with. The upgraded engine includes a range of improvements for XR development.

Foveated Rendering

First is the built-in Foveated Rendering API. This allows developers to reduce the resolution of the view only in the users peripheral vision, improving rendering performance without impacting the quality of the image at the center of the user’s view. Unity’s Foveated Rendering API also supports eye-tracked foveated rendering for headsets like Quest Pro and PSVR 2. This allows the system to maintain high resolution rendering no matter where the user turns their eyes, while reducing the resolution in their periphery for improved performance.

Unity says the Foveated Rendering API is compatible with the requisite PSVR 2 and Oculus XR plugins, but it will also support OpenXR “soon.”

Composition Layers for High Quality Textures

Unity 6 Preview also adds a new feature called Composition Layers (also known as Compositor Layers or Timewarp Layers) which is a technique for rendering textures into XR applications with the highest possible quality.

XR apps are typically rendered by drawing a complete frame, then taking that frame and distorting it to account for the way the headset’s lenses warp the image. This two step process means anything in the scene is sampled twice (sort of like taking a picture of a picture) which necessarily reduces the quality of the final output.

Without Composition Layers | Image courtesy Meta

Composition Layers in Unity 6 Preview allows developers to render textures in a special way that draws and distorts at the same time, avoiding the double-sampling problem which would otherwise reduce the texture’s final quality.

With Composition Layers | Image courtesy Meta

This is especially useful for flat textures like UI, text, crosshairs, and maps which are where the double-sampling blur tends to be particularly noticeable. It’s also useful for rendering photos and videos in XR at the highest possible quality.

This Clever Immersion Hack Makes VR Feel More Real – Inside XR Design

This functionality has existed for many years, but has been stuck in platform-specific implementations, making it a pain for developers to deal with, especially for cross-platform development. Now with Composition Layers built directly into Unity 6 Preview, it should be much easier for developers to use the feature to sharpen key textures in their game in a way that works across all supported headsets.