在Unity内建Shader的DefaultResourcesExtra的目录中,可以看到AlphaTest-SoftEdgeUnlit.shader这个文件。可以用来渲染草、树和叶子。
当绘制半透明的物体,例如草的时候,因为关闭了ZWrite,所以没有办法保证这些半透明物体正确的绘制顺序,就需要对它们进行深度排序。(参考【Unity Shaders】Alpha Test和Alpha Blending)
而AlphaTest-SoftEdgeUnlit它将物体渲染分为了两个Pass,第一个Pass用来渲染不透明的部分,第二个pass用来渲染透明部分。
Unity内建Shader下载地址。
我们先看看SubShader的指令: