Version: 6000.3
语言: 中文
创建着色器文件
在自定义着色器中添加着色器通道

在自定义着色器中添加子着色器

一个着色器在 GPU 上运行的程序。更多信息
请参阅术语表
对象包含一个或多个子着色器。子着色器允许您为不同的硬件定义不同的 GPU 设置和着色器程序,渲染管线 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表
和运行时设置。一些着色器对象Shader 类的实例,Shader 对象是着色器程序和 GPU 指令的容器,以及告诉 Unity 如何使用它们的信息。将它们与材质一起使用,以确定场景的外观。更多信息
请参阅术语表
仅包含单个子着色器;其他包含多个子着色器以支持一系列不同的配置。

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

ShaderLabUnity 用于定义 Shader 对象结构的语言。更多信息
请参阅术语表
,您可以通过放置一个SubShaderShader块。

此示例代码演示了创建包含单个子着色器对象的语法,该对象又包含单个 Pass。

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.
        }
    }
}

其他资源

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