版本:Unity 6 (6000.0)
语言:English
ShaderLab 中的属性块参考
ShaderLab 中的自定义编辑器块参考

ShaderLab 参考中的 Fallback 块

此页面包含有关在您的 ShaderLabUnity 用于定义着色器对象结构的语言。 更多信息
参见 术语表
代码中使用 Fallback 块以分配回退 着色器在 GPU 上运行的程序。 更多信息
参见 术语表
对象的信息。有关 着色器对象Shader 类的实例,着色器对象是着色器程序和 GPU 指令以及告知 Unity 如何使用它们的信息的容器。将它们与材质一起使用以确定场景的外观。 更多信息
参见 术语表
的工作原理以及 Unity 何时选择使用回退的信息,请参阅 着色器对象简介

渲染管线兼容性

功能名称 通用 渲染管线一系列操作,用于获取场景的内容并在屏幕上显示它们。Unity 允许您从预构建的渲染管线中进行选择,或编写自己的渲染管线。 更多信息
参见 术语表
(URP)
高清渲染管线 (HDRP) 自定义 SRP 内置渲染管线
ShaderLab:Fallback 块

语法

要分配回退,您需要在 Shader 块内放置一个 Fallback 块。

签名 函数
Fallback "<name>" 如果找不到兼容的 SubShader,则使用命名的着色器对象。
Fallback Off 不要使用回退着色器对象来代替此着色器对象。如果找不到兼容的 SubShader,则显示 错误着色器

示例

此示例代码演示了创建具有命名回退的着色器对象的语法。

Shader "Examples/ExampleFallback"
{
    SubShader
    {
        // Code that defines the SubShader goes here.

        Pass
        {                
              // Code that defines the Pass goes here.
        }
    }

    Fallback "ExampleOtherShader"
}
ShaderLab 中的属性块参考
ShaderLab 中的自定义编辑器块参考