有些模型多层需要深度写入和深度测试才能正常显示,但是又不去希望这个深度去影响到其他物体,就可以写多一个pass清除深度
例如模型上的ui,在3D相机下,UI不希望有偏移,只用sortorder去控制下
Pass { Name "Z Clear" ColorMask 0 ZWrite On ZTest Always CGPROGRAM #pragma vertex vert #pragma fragment frag #include "UnityCG.cginc" float4 vert (float4 vertex : POSITION) : SV_Position { float4 pos = UnityObjectToClipPos(vertex); #if defined(UNITY_REVERSED_Z) pos.z = 1.0e-9f; #else pos.z = pos.w - 1.0e-6f; #endif return pos; } void frag() {} ENDCG }