Shader "ShaderLab Tutorials/TestShader" {
SubShader
{
Tags { "Queue"="Geometry+10" "RenderType"="Opaque" }
//...
}
}
"Queue"标签。定义渲染顺序:
- "Background"。值为1000。比如用于天空盒。
- "Geometry"。值为2000。大部分物体在这个队列。不透明的物体也在这里。这个队列内部的物体的渲染顺序会有进一步的优化(应该是从近到远,early-z test可以剔除不需经过FS处理的片元)。其他队列的物体都是按空间位置的从远到近进行渲染。
- "AlphaTest"。值为2450。已进行AlphaTest的物体在这个队列。
- "Transparent"。值为3000。透明物体。
- "Overlay"。值为4000。比如镜头光晕。
- 用户可以定义任意值,比如"Queue"="Geometry+10"
- "Opaque":绝大部分不透明的物体都使用这个;
- "Transparent":绝大部分透明的物体、包括粒子特效都使用这个;
- "Background":天空盒都使用这个;
- "Overlay":GUI、镜头光晕都使用这个;
- 还有其他可参考Rendering with Replaced Shaders;用户也可以定义任意自己的RenderType字符串。
"ForceNoShadowCasting",值为"true"时,表示不接受阴影。
"IgnoreProjector",值为"true"时,表示不接受Projector组件的投影。