⚠️注意:Tags标签必须在Pass之前
官方文档:https://docs.unity3d.com/Manual/SL-SubShaderTags.html
SubShader
{
Tags
{
"RenderPipeline" = "UniversalRenderPipeline"
"Queue"="Geometry"
"RenderType"="Opaque"
"ForceNoShadowCasting"="False"
"DisableBatching"="False"
"IgnoreProjector "="False"
"PreviewType" = "Plane"
"CanUseSpriteAtlas" = "True"
}
pass{}
}
关键字(签名) | 值 | 说明 | |
---|---|---|---|
RenderPipeline | 渲染管线选择 | UniversalRenderPipeline HighDefinitionRenderPipeline (Other Custom Pipeline) |
URP管线 HDRP管线 (其他自定义管线) |
Queue | 渲染顺序 | Background Geometry(默认) AlphaTest Transparent Overlay |
队列前最先渲染,用于背景物体渲染 不透明物体队列 AlphaTest类型的半透明列队 关闭深度缓冲区的着色器(玻璃、粒子) 后期效果(镜头光晕) |
注: 渲染顺序本质是整数。 Background 值是4000,Geometry 值是3000 以此类推 在实际使用过程中可以直接用整数表示, 或者”Background+1”的形式 ⚠️注意: Transparent 需要关闭RenderSetup的深度检测 //ZWrite Off |
|||
RenderType | 着色器标签 | Opaque(默认) Transparent TransparentCutout Background Overlay TreeOpaque TreeTransparentCutout TreeBillboard Grass GrassBillboard (可以自定义字符串) |
大部分着色器(法线、自发光、反射和地形着色器)。 大部分半透明着色器(透明、粒子、字体和地形附加通道着色器)。 遮罩透明度着色器(透明镂空、两个通道植被着色器)。 天空盒着色器。 光环、光晕着色器。 地形引擎树皮。 地形引擎树叶。 地形引擎公告牌树。 地形引擎草。 地形引擎公告牌草。 |
注: 对Shader进行分类 可以用来做【着色器替换ShaderReplacement】 |
|||
ForceNoShadowCasting | 阻止投射阴影 | True False(默认) |
注: 阻止投射阴影,或接收阴影 |
DisableBatching | 阻止动态批处理 | True False(默认) [LODFading] |
阻止 不阻止 当物体为LOD时阻止 |
IgnoreProjector | 阻止投射器 | True False(默认) |
注: SubShader不受Projector影响, 常用于半透明物体 |
PreviewType | 材质预览 | Sphere(默认) Plane Skybox |
注: 用来显示材质预览效果的 |
CanUseSpriteAtlas | 使用Sprite坐标 | True(默认) Flase |
注: 当纹理使用的是Sprite类型时 请设置为Flase |