Quick answer: Check that each parameter in your Volume override has its checkbox enabled, the Volume’s priority is higher than any competing Volume, the camera’s Volume Layer Mask includes the Volume’s layer, and for local Volumes, a Collider is present to define the bounds.

Here is how to fix HDRP Volume profiles not applying in Unity. You added a Volume component, assigned a profile with Bloom and Color Adjustments, pressed play, and the scene looks exactly the same as before. No bloom, no color shift, no post-processing at all. The Volume Inspector shows your overrides are listed, but nothing is visually different. This problem has multiple possible causes, each silent and independent of the others.

The Symptom

You create a Volume (global or local) and add overrides like Bloom, Vignette, or Tonemapping. In play mode, the camera renders the scene without any of these effects. The Volume component is enabled, the profile is assigned, and no errors appear. In some cases, the effect works briefly and then vanishes when you load an additional scene. In other cases, it works in Scene view but not in Game view.

What Causes This

1. Override parameters are not enabled. Every parameter in a Volume override has an individual checkbox. Adding a Bloom override to the profile does not automatically enable any of its parameters. You must explicitly check the Intensity, Threshold, and other fields you want to control. Unchecked parameters are treated as “do not override” and fall through to the default profile.

2. Volume priority is too low. If another Volume with a higher priority exists (including the Default Volume in the HDRP Global Settings), its values win. The default profile often has conservative settings that override your artistic intent.

3. Camera Volume Layer Mask excludes the Volume’s layer. The HDRP Camera has a Volume Layer Mask setting that determines which layers of Volumes it evaluates. If your Volume is on a layer not included in this mask, the camera ignores it entirely.

4. Local Volume has no Collider. A non-global Volume must have a Collider (typically a BoxCollider) to define its spatial extent. Without one, the Volume has zero bounds and the camera can never enter it.

The Fix

Step 1: Enable override parameters. Select the Volume, expand each override in the profile, and check the boxes next to the parameters you want to control. Use the “All” shortcut at the top of each override to enable everything at once.

Step 2: Set a high priority. On the Volume component, set Priority to a value higher than any other Volume in the scene. Use the Volume debug panel to verify which Volume is currently winning:

// Check which Volume is affecting the camera at runtime
using UnityEngine.Rendering;

void Update()
{
    var stack = VolumeManager.instance.stack;
    var bloom = stack.GetComponent<UnityEngine.Rendering.HighDefinition.Bloom>();

    if (bloom != null)
    {
        Debug.Log($"Bloom active: {bloom.active}, Intensity: {bloom.intensity.value}");
    }
    else
    {
        Debug.Log("No Bloom override found in current volume stack");
    }
}

Step 3: Fix the camera layer mask. Select the Camera object, find the HDRP Camera component, and check Volume Layer Mask. Ensure it includes the layer your Volume is on. The default is “Default” only — if your Volume is on a custom “PostProcessing” layer, add it.

Step 4: Add a Collider for local Volumes. If the Volume is not set to Is Global, add a BoxCollider to the same GameObject. Scale it to cover the area where the effect should apply. The camera must be inside this collider for the Volume to take effect:

// Verify the camera is inside the Volume bounds at runtime
void OnDrawGizmosSelected()
{
    var col = GetComponent<BoxCollider>();
    if (col != null)
    {
        Gizmos.color = new Color(0, 1, 0, 0.3f);
        Gizmos.DrawCube(col.bounds.center, col.bounds.size);
    }
}

“The Volume Framework is a layered override system, not a simple toggle. Think of it like CSS specificity: the most specific, highest-priority rule wins for each individual parameter.”

Why This Works

HDRP’s Volume Framework evaluates all active Volumes every frame and blends their parameters based on priority and spatial influence. Each parameter is resolved independently — Bloom intensity might come from Volume A while Vignette intensity comes from Volume B. Parameters without their checkboxes enabled are skipped entirely, falling through to whatever lower-priority Volume has them enabled. This per-parameter granularity is powerful for blending between zones but makes debugging hard because the final result is a composite of multiple sources.

Related Issues

If your Volume works but the bloom looks wrong or washed out, the issue may be tonemapping settings in the default HDRP profile overriding your exposure. Check the HDRP Global Settings default profile.

For multi-scene setups where Volumes from additively loaded scenes conflict, ensure each scene’s Volumes have explicit priorities rather than all defaulting to zero.

Check the checkbox. Check the priority. Check the layer mask. In that order.