版本:Unity 6 (6000.0)
语言:英语
在着色器中设置深度测试模式
在着色器中检查或写入模板缓冲区

在着色器中禁用写入深度缓冲区

ZWrite 设置是否在渲染期间更新深度缓冲区一个内存存储器,其中储存了图像中每个像素的 z 值深度,其中 z 值是投影平面上每个渲染的像素的深度。更多信息
参见 词汇表
内容。通常情况下,对于不透明对象启用 ZWrite,而对于半透明对象禁用 ZWrite。

禁用 ZWrite 可能导致错误的深度排序。在这种情况下,你需要在 CPU 上对几何体排序。

示例

此示例代码演示了在 Pass 块中使用此命令的语法。

Shader "Examples/CommandExample"
{
    SubShader
    {
         // The rest of the code that defines the SubShader goes here.

        Pass
        {    
              // Disables writing to the depth buffer for this Pass
              ZWrite Off
            
              // The rest of the code that defines the Pass goes here.
        }
    }
}

此示例代码演示了在 SubShader 块中使用此命令的语法。

Shader "Examples/CommandExample"
{
    SubShader
    {
         // Disables writing to the depth buffer for this SubShader
         ZWrite Off

         // The rest of the code that defines the SubShader goes here.        

        Pass
        {    
              // The rest of the code that defines the Pass goes here.
        }
    }
}

其他资源

在着色器中设置深度测试模式
在着色器中检查或写入模板缓冲区