对于shaderlab中的tags官方给出的解释是:Subshader使用tag来告诉他们期望如何以及何时将其渲染到渲染引擎。
其中有
Queue(渲染队列)
确定绘制对象的顺序
Background
-此渲染队列先于其他任何队列渲染。您通常会将它用于确实需要在后台进行的操作。Geometry
(默认) -用于大多数对象。不透明几何使用此队列。AlphaTest
-经过Alpha测试的几何使用此队列。它是一个单独的队列,Geometry
因为在绘制所有实体后,渲染经过Alpha测试的对象效率更高。Transparent
-此渲染队列以从后到前的顺序在Geometry和之后渲染AlphaTest
。任何与alpha混合的内容(即不写入深度缓冲区的着色器)都应放在此处(玻璃,粒子效果)。Overlay
-此渲染队列用于叠加效果。最后渲染的任何东西都应该放在这里(例如镜头光晕)。
举个例子,这是正常情况
如果你在pass中设置了Blend SrcAlpha OneMinusSrcAlpha(传统的透明度)但是并没有在tag中写入"Queue"="Teansparent",那么就会出现这种情况