Version: Unity 6.5 (6000.5)
Language : English
Packages and templates for Meta Quest development
Run an XR application

Configure shader optimizations for Meta Quest

Configure additional shaderA program that runs on the GPU. More info
See in Glossary
optimizations to improve graphics performance on Meta Quest.

Unity automatically enables some shader optimizations for Meta Quest build targets to reduce GPU frame time, shader instruction count, and memory bandwidth, and to improve GPU occupancy. Unity also provides additional shader optimizations that you can configure in your project, as described in the following section.

Unity applies enabled optimizations to the Universal Render PipelineA series of operations that take the contents of a Scene, and displays them on a screen. Unity lets you choose from pre-built render pipelines, or write your own. More info
See in Glossary
’s (URP) prebuilt shaders (Lit, Simple Lit, Unlit, Shader Graph nodes) and Scriptable Render Pipeline (SRP) library functions. If your project uses custom shaders that rely on SRP library functions, your custom shaders also inherit these optimization techniques for the Meta Quest platform.

Configurable shader optimizations

When you select the Meta Quest build profile, Unity automatically applies some shader optimizations to reduce GPU frame time. You can also configure the following additional shader optimizations in your project:

Optimization Description
Light loop unroll When a URP Asset has one additional light per object, shaders automatically unroll the light loop. This improves runtime performance but increases shader variant count and build times.
Note: To enable this optimization, set the URP Asset’s Per Object Limit to 1.
Camera projection query Optimizes camera projection query to streamline checks for whether the active cameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary
uses perspective or orthographic projection. With this optimization, the camera projection type always resolves as perspective projection.
Important: If your shaders use orthographic cameras, you must enable the _ META_QUEST_ORTHO_PROJ shader keyword to restore correct orthographic detection. This optimization increases shader variant count and build times.
To enable the _ META_QUEST_ORTHO_PROJ keyword, go to the Keyword Declaration Overrides in the Shader Build Settings (menu > Edit > Project Settings > Graphics tab). Expand the _ META_QUEST_ORTHO_PROJ keyword, and check the boxes next to _ and META_QUEST_ORTHO_PROJ and Apply your changes.

Additional resources

Packages and templates for Meta Quest development
Run an XR application