Version: Unity 6.0 (6000.0)
语言 : 中文
创建着色器文件
为自定义着色器添加着色器通道

为自定义着色器添加子着色器

Shader 对象包含一个或多个子着色器 (SubShader)。通过子着色器您可以为不同的硬件、渲染管线和运行时设置定义不同的 GPU 设置和着色器程序。某些 Shader 对象只包含一个子着色器;另一些包含多个子着色器以支持一系列不同的配置。

有关 Shader 对象的工作原理以及 Shader 对象、子着色器与通道之间关系的信息,请参阅 Shader 对象简介

__ ShaderLab__Unity 用于定义着色器对象结构的语言。更多信息
See in Glossary
中,通过将 SubShader 代码块置于 Shader 代码块中,可以定义子着色器。

示例

此示例代码演示了用于创建包含单个子着色器的 Shader 对象的语法,而子着色器又包含一个通道。

Shader "Examples/SinglePass"
{
    SubShader
    {
        Tags { "ExampleSubShaderTagKey" = "ExampleSubShaderTagValue" }
        LOD 100

         // ShaderLab commands that apply to the whole SubShader go here. 

        Pass
        {                
              Name "ExamplePassName"
              Tags { "ExamplePassTagKey" = "ExamplePassTagValue" }

              // ShaderLab commands that apply to this Pass go here.

              // HLSL code goes here.
        }
    }
}

其他资源

创建着色器文件
为自定义着色器添加着色器通道