A custom render pass is a way to change how the Universal Render Pipeline (URP) renders a scene or the objects within a scene. A custom render pass contains your own rendering code, which you insert into the rendering pipeline at an injection point.
To add a custom render pass, complete the following tasks:
RenderPipelineManager
API.To create the code for a custom render pass, write a class that inherits ScriptableRenderPass
. In the class, use the render graph API to tell Unity what textures and render targets to use, and what operations to do on them.
Refer to Scriptable Render Passes for more information.
To add your custom render pass to URP’s frame rendering loop, write a class that inherits ScriptableRendererFeature
.
The Scriptable Renderer Feature does the following:
Refer to Inject a pass using a Scriptable Renderer Feature for more information.
To add your custom render pass to URP’s frame rendering loop, you can also subscribe a method to one of the events in the RenderPipelineManager class.
Refer to Inject a render pass via scripting for more information.