SubShader

SubShader "SubShaderName" {
  ...
  // 全局变量区:变量声明,结构体声明,渲染状态声明
  ...
  Tags {ReplaceTag = "opaque"}
 
  UsePass "ShaderName/SubShaderName/PassName"
 
  Pass "PassName" {
    ...
  }
}

Tags

In the Shader Object section, we learned the basic concepts and uses of Tags. In ShaderLab, you can directly declare and specify them using the Tags directive, without needing to manually specify them using the SubShader.setTag API method.

UsePass

If a SubShader contains multiple Pass objects, you can reuse other Pass objects using the UsePass directive, such as the engine's built-in PBR Pass: UsePass "pbr/Default/Forward"

Built-in ShaderPass Path
PBRpbr/Default/Forward
Unlitunlit/Default/Forward
Skyboxskybox/Default/Forward
Particle-shaderparticle-shader/Default/Forward
SpriteMaskSpriteMask/Default/Forward
SpriteSprite/Default/Forward

Was this page helpful?

On this page