Unity HDRP Advanced Rendering

Screen-space effects, ray/path tracing, post-processing and AOV export

Chapter 10: Screen Space Effects

This is Part 4 of the Unity HDRP production guide, continuing from Part 3: Cinematic Lighting. This installment goes deep on advanced rendering: screen-space effects, ray tracing, path tracing, denoising, and post-processing/export for production.

10.1 How Screen-Space Techniques Work

Screen Space techniques analyze what's visible on screen - depth, normals, colors - to simulate complex phenomena in real time, trading some accuracy for a strong performance/quality balance. Their shared advantages: fast, screen-data-based computation; dynamic results that react to motion; compatibility with non-static objects. Their shared limitations: they only see what's currently on screen; they produce artifacts at screen edges (missing information); and quality depends on resolution and viewing angle.

10.2 SSAO (Screen Space Ambient Occlusion)

SSAO darkens areas ambient light struggles to reach - corners, crevices, surface intersections - adding depth and volume to objects. Add an Ambient Occlusion override to a Volume, then tune:

ParameterDescriptionRecommended value
IntensityOcclusion strength0.5 - 1.5
RadiusSample distanceDepends on scene scale
Direct Lighting StrengthInteraction with direct light0.5 - 1.0
QualitySample countMedium for real time

SSAO is recommended for nearly every scene - its relatively low cost and strong visual impact make it close to mandatory, improving shape readability and depth perception.

10.3 SSR (Screen Space Reflections)

SSR computes real-time reflections from on-screen depth information - ideal for reflective surfaces. Enable it globally (HDRP Settings → Lighting → Screen Space Reflection), then add an override in a Volume. Key parameters: Screen Edge Fade Distance, Max Ray Steps (reflection precision), Object Thickness (assumed object thickness), Min/Max Smoothness (which surfaces are affected).

Important limitations: off-screen objects can't be reflected, visible cutoffs appear at screen edges, quality varies with viewing angle, and very smooth surfaces can show artifacts. For reflections without these limits, consider Ray-Traced Reflections (Chapter 11) on compatible hardware.

10.4 SSGI (Screen Space Global Illumination)

SSGI simulates indirect lighting by analyzing visible surfaces - light bounces off surfaces and lights adjacent areas, producing realistic color bleeding. Enable it globally (HDRP Settings → Lighting → Screen Space Global Illumination), add a Global Illumination override in a Volume, and select the Screen Space mode. Parameters: Quality (Low/Medium/High), Full Resolution (expensive), Max Ray Steps, Denoise.

Advantages over baking: fully dynamic indirect lighting, works with non-static objects, no precompute time, reacts immediately to lighting changes. Limitations: performance-expensive, screen-based (a surface not visible contributes nothing), and lower quality than baked lightmaps for static environments.

10.5 Combining and Optimizing

TechniqueCostVisual impactPriority
SSAOLowHigh1 (always enable)
SSRMediumMedium-high2 (if reflective surfaces)
SSGIHighHigh3 (if budget allows)

For real-time production (games, interactive): SSAO yes, SSR yes (Medium quality), SSGI optional depending on hardware. For cinematic production: enable all three at high quality, or replace them with ray tracing.

Chapter 11: Ray Tracing in HDRP

11.1 Hardware and Software Requirements

ElementMinimumRecommended
GPUNVIDIA RTX 20xx / AMD RX 6000RTX 30xx+ / RX 7000+
VRAM8 GB12 GB+
OSWindows 10Windows 11
APIDirectX 12DirectX 12
Unity2021.2+2022.2+ (LTS)

To enable: add DirectX 12 first under Player Settings → Other Settings → Graphics APIs, then turn on Ray Tracing under HDRP Global Settings → Frame Settings → Lighting, and enable individual effects as needed.

Careful - if Ray Tracing doesn't show up, check GPU compatibility, drivers, and that the graphics API is DX12 (mandatory).

11.2 Available Ray-Traced Effects

Ray-Traced Reflections (RTR) replace SSR with physically correct reflections, including for off-screen objects. Configure via Volume → Add Override → Lighting → Screen Space Reflection, Mode: Ray Traced. Parameters: Layer Mask (Everything), Ray Length (50-200 depending on scene), Sample Count (8-16 for real time), Bounce Count (1-2), Denoise (enable). Advantages over SSR: correct reflections even off-screen, no edge cutoffs, accurate inter-object reflections, native transparency support.

Ray-Traced Global Illumination (RTGI) gives physically correct indirect lighting, replacing SSGI and potentially lightmaps. Configure via Volume → Add Override → Lighting → Global Illumination, Mode: Ray Traced. Parameters: Ray Length (100-500), Sample Count (16-32 for real time), Bounce Count (1-2), Denoise (mandatory). Fully dynamic indirect lighting with realistic color bleeding, no baking needed.

Ray-Traced Ambient Occlusion (RTAO) gives physically correct AO without screen-space artifacts. Configure via Volume → Add Override → Lighting → Ambient Occlusion, Mode: Ray Traced. Parameters: Ray Length (2-10), Sample Count (8-16), Denoise (enable).

Ray-Traced Shadows give physically correct shadows with no shadow-mapping bias or artifacts, configured directly on the Light component (not a Volume): Shadow Map set to Ray Traced, Sample Count controlling soft-shadow sharpness. Advantages: physically correct soft shadows for Area Lights, no shadow-mapping artifacts, perfect contact shadows, colored transparency inside shadows.

Recursive Rendering enables recursive reflections and refractions through transparent objects. Configure via Volume → Add Override → Rendering → Recursive Rendering: Max Depth (2-4), Ray Length. Used for face-to-face mirrors, diamonds, thick glass, stacked transparent objects.

11.3 Denoising

Ray tracing inevitably produces noise from limited sampling - denoising is essential for a clean result. A Spatial Denoiser (built in) analyzes neighboring pixels to smooth noise, fast and real-time-friendly - it's the Denoise parameter on each RT effect. A Temporal Denoiser accumulates successive frames for better quality, but can ghost with fast camera movement (the Temporal Filtering option in advanced settings).

Best practices: always enable denoise on real-time RT effects; for offline path tracing, prefer raising the sample count instead; use temporal filtering only for slow or static cameras; and a slight residual grain can look more natural than aggressive denoising.

11.4 Shader Compatibility

Not every HDRP shader supports ray tracing:

ShaderRT CompatiblePT Compatible
LitYesYes
Layered LitYesYes
FabricYesYes
EyeYesNo
HairYesNo
UnlitPartialPartial
Careful - a mesh using a material without the HDRenderPipeline tag won't appear in ray-traced or path-traced renders.

11.5 Choosing Between Rasterization, Ray Tracing and Path Tracing

A practical decision path: if there's no RTX/RDNA2+ GPU available, use pure rasterization (SSAO + SSR + SSGI, with baked GI). If ray tracing hardware is available and the target is real time (games/interactive), the FPS budget decides how far to go - at 60+ FPS, stick to light RT (RT Shadows only, SSR for reflections, SSGI or baked GI); at 30 FPS, go hybrid (RTR Medium + RTAO, SSGI or low RTGI); with no strict frame budget, go full RT (RTR High + RTGI + RTAO + denoising). For offline rendering, standard quality still suits full RT, but cinematic quality calls for Path Tracing with high sample counts (1000+), Max Depth 8, and automatic denoising.

Chapter 12: Path Tracing

12.1 Ray Tracing vs. Path Tracing

AspectRay TracingPath Tracing
ApproachHybrid (raster + selective RT)Full light simulation
PerformanceReal time possibleNot real time (offline)
QualityVery goodCinematic
ConvergenceImmediateProgressive
Use caseGames, interactive appsFinal renders, ArchViz

Path Tracing exhaustively simulates every possible light path in the scene - each frame adds samples that progressively improve the image until convergence, replacing every other lighting system (SSGI, classic RT, lightmaps) with one unified, physically correct calculation.

12.2 Configuration

Enable via HDRP Global Settings → Lighting → Path Tracing, then Frame Settings → Path Tracing, and on the Camera: HD Additional Camera Data → Enable Path Tracing.

ParameterDescriptionRecommendation
Maximum SamplesConvergence limit1,000-10,000
Minimum SamplesMinimum sample count64-128
Maximum DepthMaximum bounces4-8

Accumulation mode is either Auto (recommended) or Manual (explicit sample-count control). To render, hit Play in the editor - the image progressively improves as noise decreases.

12.3 Advantages of Path Tracing

Complete global illumination (every light bounce simulated), caustics (light concentration through glass/water), physically correct subsurface scattering, perfectly soft shadows and penumbras, complex inter-object reflections, and quality comparable to Arnold, V-Ray or Cycles. Ideal for architectural presentation renders, cinematics and pre-rendered sequences, marketing and product visualization, and any context where quality matters more than speed.

12.4 Limitations and Workarounds

ElementStatus
Eye and Hair shadersNot supported
TessellationNot available
Volumetric CloudsNot rendered
HDRP Water SystemNot supported
Local Volumetric FogNot supported
3D TextMeshProNot visible
Streaming Virtual TexturingNot compatible

Workarounds: for characters, use hybrid RT for renders with detailed hair and eyes, reserving PT for environments; for vegetation, favor static meshes over terrain painting; for 3D text, replace it with textures on planes. Production strategy: keep two scene configurations - one for real time with hybrid RT, another optimized for offline PT.

12.5 Recommended Hybrid Workflow

The most efficient workflow combines both approaches: hybrid ray tracing for fast feedback during editing and previsualization, then path tracing for maximum quality on final renders. Both modes share the same base setup (materials, lights), making it easy to switch between them.

Chapter 13: Post-Processing and Export

13.1 Post-Processing in HDRP

Post-processing applies after the scene renders, directly on the final image, configured via overrides in a Volume (Global or Local). HDRP applies effects in a fixed order: Exposure → Color Adjustments/White Balance → Tonemapping → Bloom → Depth of Field → Motion Blur → Vignette → Film Grain.

13.2 Essential Effects

Exposure controls the image's overall exposure: Fixed (manual value), Automatic (adapts to brightness, with Metering Mode, Adaptation speed, and Limit Min/Max), Curve Mapping (custom curve), or Physical Camera (based on camera parameters).

Tone Mapping converts HDR values to LDR for display, defining the image's final "look": None (rarely used), Neutral (balanced, general use), ACES (cinema standard, cinematic look), Custom (a custom curve).

Important - Tone Mapping is essential. Without it, HDR values display incorrectly, with blown-out or crushed areas.

Bloom simulates glow from intense light sources - Threshold (minimum intensity to trigger it), Intensity, Scatter (halo diffusion), Tint. Use it to make lights and emission more convincing, but sparingly.

Color Adjustments - Post Exposure, Contrast, Color Filter (multiplicative), Hue Shift, Saturation. White Balance - Temperature (warm/yellow to cool/blue), Tint (green to magenta). Vignette darkens the image edges progressively - Intensity, Smoothness, Rounded (circular vs. rectangular) - used to frame attention and add a cinematic feel. Motion Blur - Intensity, Sample Count, Camera Motion Blur toggle. Depth of Field - see Chapter 8 for full configuration. Film Grain adds organic-looking grain - Type (Thin, Medium, Large), Intensity, Response (a luminance curve); modern productions often keep it around 0.15-0.25, nearly invisible but enough to break up an overly clean CG look.

Three more effects round out the creative toolkit. Chromatic Aberration simulates color fringing at lens edges - subtle at 0.3-0.5 intensity, a strong creative effect near 1.0, useful for security-camera or CRT looks, altered-perception moments, or paired with motion blur for an impact hit; it tires the eye fast if overused. Lens Distortion bends the image like a wide or fisheye lens - negative values barrel, positive values pincushion - good for action-cam POVs, drone or robot vision, or a vertigo effect, but too much reads as nauseating, especially in VR or during fast motion. Split Toning tints shadows and highlights separately (distinct from White Balance's single global tint) and is what gives a color grade a specific emotional temperature - sickly blue-green shadows against dirty orange highlights read as horror, deep violet against luminous gold reads as fantasy.

13.3 Advanced Color Grading

Lift Gamma Gain gives separate control over shadows (Lift), midtones (Gamma) and highlights (Gain). Shadow Midtones Highlights is a more intuitive alternative with explicit separation. Curves give total control via Hue vs. Hue (retarget a specific hue), Hue vs. Sat (saturate/desaturate a hue), Sat vs. Sat (saturation by intensity), and Lum vs. Sat (saturation by luminance). LUTs (3D Look-Up Tables) let you import external, predefined looks.

Combining these into a coherent grade is where a scene's genre actually reads. Three starting points:

LookKey moves
Survival horrorPost-exposure -0.5, contrast +25, saturation -30, hard vignette (0.6), coarse film grain, sickly blue-green/orange split toning, chromatic aberration 0.4
FantasyPost-exposure +0.3, saturation +15, bloom threshold 0.8 with a violet-blue tint, violet/gold split toning, soft rounded vignette
CyberpunkPost-exposure -0.3, contrast +30, bloom threshold 1.2 with a cyan tint so only neons bloom, custom crushed-shadow tonemap curve, chromatic aberration 0.6 for a glitchy edge

13.4 Unity Recorder and Export

Install via Window → Package Manager → Unity Recorder, then access it via Window → General → Recorder → Recorder Window.

TypeDescriptionFormat
Image SequenceSequence of imagesPNG, JPEG, EXR
MovieVideo fileMP4, WebM
Animation ClipAnimation clip.anim
AOV Image SequenceSeparate render passesEXR

To export images: Add Recorder → Image Sequence; set Capture (Game View, Target Camera, etc.); Output Resolution (HD, Full HD, 4K, Custom); Media File Format (PNG for quality, EXR for HDR); enable Include Alpha for transparency.

AOVs (Arbitrary Output Variables) are separate render passes for external compositing:

PassContent
BeautyFinal composited image
DepthZ-depth
NormalSurface normals
AlbedoDiffuse color without lighting
Ambient OcclusionIsolated AO
Motion VectorsMotion vectors
SpecularSpecular highlights
DiffuseDiffuse lighting

To configure: Add Recorder → AOV Image Sequence, select the passes to export, and use 32-bit EXR as the format. In compositing, these passes give total post-production control: adjusting lighting without re-rendering, modifying depth of field, per-pass color grading, and post motion blur. Compatible with Nuke, After Effects, DaVinci Resolve, Photoshop.

Part 4 Summary

ChapterSkills covered
Ch. 10 - Screen SpaceSSAO, SSR, SSGI - configuration and optimization
Ch. 11 - Ray TracingActivation, RT effects, denoising, compatibility
Ch. 12 - Path TracingConfiguration, limitations, hybrid workflow
Ch. 13 - Post-ProcessingTone Mapping, Color Grading, Recorder, AOV

Key takeaways: screen-space techniques give a good quality/performance balance; ray tracing meaningfully improves quality on compatible hardware; path tracing produces cinematic results but isn't real time; denoising is essential for both RT and PT; Tone Mapping (ACES or Neutral) is essential for a correct-looking render; and AOV passes give total post-production control.

Part 5, next, moves into environments: terrain creation, the GAEA workflow, vegetation, and atmosphere.