This page contains information on using a Fallback
block in your ShaderLabUnity’s language for defining the structure of Shader objects. More info
See in Glossary code to assign a fallback ShaderA program that runs on the GPU. More info
See in Glossary object. For information on how a Shader object works, and how Unity chooses when to use a fallback, see Shader objects introduction.
Feature name | Built-in Render Pipeline | Universal Render Pipeline (URP) | High Definition Render Pipeline (HDRP) | Custom SRP |
---|---|---|---|---|
ShaderLab: Fallback block | Yes | Yes | Yes | Yes |
To assign a fallback, you place a Fallback
block inside a Shader
block.
Signature | Function |
---|---|
Fallback "<name>" |
If no compatible SubShaders are found, use the named Shader object. |
Fallback Off |
Do not use a fallback Shader object in place of this one. If no compatible SubShaders are found, display the error shader. |
This example code demonstrates the syntax for creating a Shader object that has a named fallback.
Shader "Examples/ExampleFallback"
{
SubShader
{
// Code that defines the SubShader goes here.
Pass
{
// Code that defines the Pass goes here.
}
}
Fallback "ExampleOtherShader"
}