版本:Unity 6 (6000.0)
语言:英语
设置着色器的渲染队列
使用 LOD 命令优先考虑较低质量的着色器

通过 LightMode 标签设置 Unity 运行着色器通道的时间

LightMode 标签是一个预定义的 Pass 标签,Unity 使用它来确定在给定帧中是否执行 Pass,在帧的哪个时间点执行 Pass,以及 Unity 如何处理输出。

注意:LightMode 标签与 LightMode 枚举无关,后者与光照有关。

每个 渲染管线一系列操作,将场景内容渲染到屏幕上。Unity 允许您选择预构建的渲染管线,或编写自己的管线。 更多信息
参见 术语表
都使用 LightMode 标签,但预定义的值及其含义各不相同。有关更多信息,请参见 语法和有效值

在内置渲染管线中,如果您未设置 LightMode 标签,Unity 将在没有任何光照或阴影的情况下渲染 Pass;这与设置 LightMode 值为 Always 基本上相同。在可编程渲染管线中,您可以使用 SRPDefaultUnlit 值来引用没有 LightMode 标签的 Pass。

着色器块中的示例

Shader "Examples/ExampleLightMode"
{
    SubShader
    {
        Pass
        {    
              Tags { "LightMode" = "Always" }
            
              // The rest of the code that defines the Pass goes here.
        }
    }
}

子着色器块中的示例

Shader "Examples/ExampleLightMode"
{
    SubShader
    {
        Pass
        {
            Tags { "LightMode" = "Always" }
            // The rest of the code that defines the Pass goes here.
        }
    }
}

其他资源

设置着色器的渲染队列
使用 LOD 命令优先考虑较低质量的着色器