Important: The Built-In Render Pipeline is deprecated and will be made obsolete in a future release.
It remains supported, including bug fixes and maintenance, through the full Unity 6.7 LTS lifecycle.
For more information on migration, refer to Migrating from the Built-In Render Pipeline to the Universal Render Pipeline and Render pipeline feature comparison.
To define a Pass in ShaderLab, use a Pass block. This page contains information on using Pass blocks. For information on how a Shader object works, and the relationship between Shader objects, SubShaders and Passes, see Shader object fundamentals.
Inside the Pass block, you can:
PackageRequirements block. This makes Unity only run the Pass if the required packages are installed. See ShaderLab: specifying package requirements.| Feature name | Universal Render Pipeline (URP) | High Definition Render Pipeline (HDRP) | Custom SRP | Built-in Render Pipeline |
|---|---|---|---|---|
| ShaderLab: Pass block | Yes | Yes | Yes | Yes |
| Signature | Function |
|---|---|
Pass{<optional: name><optional: tags><optional: commands><optional: shader code>}
|
Defines a Pass. |