🔄 Render Passes Overview
Render Passes are the "prep cooks" in your Outline System's kitchen analogy—they generate the texture masks (ingredients) that your Composite Shaders use to create final outlines. Each pass runs in sequence during the URP Render Graph, producing off-screen textures for sampling in full-screen shaders.
🏗️ How Render Passes Work
- Purpose: Collect data from
Outline3Dobjects (e.g., silhouettes, depths) into textures. - Execution: Passes are enqueued conditionally based on the Composite Shader's needs and visible outlines.
- Types: Mask passes (generate data) vs. Intermediate/Composite passes (process/finalize).
- Performance: Only run when required; higher tiers add more passes for complexity.
📋 List of Render Passes
Your Outline System includes the following passes, organized by tier. Click for details.
Mask Passes (Generate Textures)
- Color Mask Pass: Renders basic silhouettes.
- Depth-Tested Color Mask Pass: Silhouettes with depth testing.
- Camera Color Copy Pass: Copies opaque scene color.
- Depth Mask Pass: Captures object depths.
- Normals Mask Pass: Renders view-space normals.
- Object ID Mask Pass: Assigns per-object IDs.
Intermediate Passes (Process Data)
- JFA Seeds Mask Pass: Generates UV seeds for Jump Flood Algorithm (JFA).
- JFA Copy/Jump Passes: Flood-fill steps for distance fields.
Final Pass
- Composite Pass: Blends masks into screen-space outlines.
🔄 Pass Flow Diagram
graph TD
A[Color Mask] --> B[Depth-Tested Color Mask]
B --> C[Camera Color Copy]
C --> D[Depth/Normals/Object ID Masks]
D --> E[JFA Seeds]
E --> F[JFA Flood Fill]
F --> G[Composite: Final Outline]
🏷️ Tier Usage
- Simple: Color Mask + Composite.
- Basic: Adds Depth/Normals.
- Advanced: Adds Object ID.
- Pro: Adds JFA for advanced effects.
- For setup, see Renderer Features. Questions? Check Troubleshooting.