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.
For information on adding a name to a Pass in ShaderLab code, see ShaderLab: adding a name to a Pass.
| Feature name | Universal Render Pipeline (URP) | High Definition Render Pipeline (HDRP) | Custom SRP | Built-in Render Pipeline |
|---|---|---|---|---|
| UsePass | Yes | Yes | Yes | Yes |
| Signature | Function |
|---|---|
UsePass "Shader object name/PASS NAME IN UPPERCASE" |
Inserts the named Pass from the named Shader object. If the named Shader object contains more than one SubShader, Unity iterates over the SubShaders until it finds the first supported SubShader that contains a Pass with the given name. For information on how Unity determines whether a SubShader is supported, see Shader objects introduction. If the SubShader contains more than one Pass with the same name, Unity returns the last Pass it finds. If Unity does not find a matching Pass, it shows the error shader. |