使用某些3D模型时,z检验为“ LEqual”的深度蒙版着色器需要正常运行,如屏幕截图1中所示。
但是它给出的结果显示了3d模型中需要隐藏的那部分轮廓的灰度。 [参考屏幕截图2]
我们尝试将ZTest从LEqual更改为Always,这可以解决此问题,但是对象仍然部分可见。
Shader "Custom/mask" {
SubShader {
Tags {
"Queue" = "Geometry+10"
"RenderType" = "Opaque"
}
Lighting Off
ZTest LEqual
Cull Back
ZWrite On
ColorMask 0
Blend One One
Pass {Fog {Mode Off}}
} }
答案 0 :(得分:0)
似乎您从遮挡网格物体进行了早期的Z遍,我猜这是重构的或运动跟踪的面孔?那么眼镜是用正确的标准材质渲染的吗?
需要先 绘制遮罩材料,所以队列应为Geometry-10或类似的东西。除了 ColorMask 0 以外,所有其他标签都不相关。
不建议使用Lighting和Fog,Blend也没用,因为无论如何您都不会绘制到颜色缓冲区(使用ColorMask 0,它只会绘制深度)。