本页面包含有关在 ShaderLab 代码中使用 Fallback
代码块向 Shader 对象分配回退的信息。有关 Shader 对象的工作原理以及 Unity 如何选择何时使用回退的信息,请参阅 Shader 对象简介。
功能名称 | 内置渲染管线 | 通用渲染管线 (URP) | 高清渲染管线 (HDRP) | 自定义 SRP |
---|---|---|---|---|
ShaderLab:Fallback 代码块 | 是 | 是 | 是 | 是 |
要分配回退,请在 Shader
代码块内放置一个 Fallback
代码块。
签名 | 功能 |
---|---|
Fallback "<name>" |
如果找不到兼容的 SubShader,则使用指定的 Shader 对象。 |
Fallback Off |
Do not use a fallback Shader objectAn instance of the Shader class, a Shader object is container for shader programs and GPU instructions, and information that tells Unity how to use them. Use them with materials to determine the appearance of your scene. More info See in Glossary in place of this one. If no compatible SubShaders are found, display the error shader. |
此示例代码演示创建具有指定回退的 Shader 对象的语法。
Shader "Examples/ExampleFallback"
{
SubShader
{
// 此处是定义子着色器的代码。
Pass
{
// 此处是定义通道的代码。
}
}
Fallback "ExampleOtherShader"
}