版本:Unity 6 (6000.0)
语言:English
基于 Unity 版本进行分支
着色器关键字

基于着色器通道或着色器阶段进行分支

正在编译的着色器阶段

在编译每个着色器在 GPU 上运行的程序。 更多信息
参见 术语表
阶段时,会定义预处理器宏SHADER_STAGE_VERTEXSHADER_STAGE_FRAGMENTSHADER_STAGE_DOMAINSHADER_STAGE_HULLSHADER_STAGE_GEOMETRYSHADER_STAGE_COMPUTE。通常,当在像素着色器和计算着色器之间共享着色器代码时,它们很有用,以处理某些事情必须略有不同的情况。

表面着色器通道

当编译表面着色器用于内置渲染管线的一种简化着色器编写方式。 更多信息
参见 术语表
时,它们会为各种通道生成大量代码以进行光照。在编译每个通道时,会定义以下宏之一

用途
UNITY_PASS_FORWARDBASE 前向渲染一种渲染路径,根据影响对象的光照,对每个对象进行一次或多次传递渲染。根据其设置和强度,前向渲染对光照本身的处理方式也不同。 更多信息
参见 术语表
基础通道(主方向光、光照贴图、SH)。
UNITY_PASS_FORWARDADD 前向渲染叠加通道(每个通道一个光源)。
UNITY_PASS_DEFERRED 延迟着色内置渲染管线中的一种渲染路径,它对可以影响游戏对象的灯光数量没有限制。所有灯光都以每个像素的方式进行评估,这意味着它们都与法线贴图等正确交互。此外,所有灯光都可以具有 Cookie 和阴影。 更多信息
参见 术语表
通道(渲染 G 缓冲区)。
UNITY_PASS_SHADOWCASTER 阴影投射器和深度纹理渲染通道。

其他资源

基于 Unity 版本进行分支
着色器关键字