HDRP Global Settings Volume Profiles not properly override

Unity 2021.3.14f1

While working on my project,
I confirmed that an incomprehensible phenomenon occurs intermittently
For a clear comparison of the problem, I simplified HDRP Setting, Scene objets

There are two Profile Assets in the project
Default Volume Profile Asset and Scene Volume

Default Volume Profile Asset

    • Visual Environment : PBS
    • PBS : only use Ground Tint Yellow
    • Do not use all other options

Scene Volume

Scene Volume is enabled, and Ground Tint works well with Blue.

When i disabled SceneVolume
there is no other volume in the scene, so the default global setting is applied

But.

What happened? Scene view and Game view are different.
Scene view is normal
However, the status of the game view is strange.

If i re-enable Scene Volume,
The Ground Tint of the default setting, which should not be applied this time, is affecting game view

8647467--1163283--bug1.gif

What’s more incomprehensible is that when the camera moves to a specific position,
it refreshes and changes.
This problem does not always occur.
Even in exactly the same state, just restarting the play mode doesn’t happen, or it starts to happen again

It is not easy to create a sample project or reproduce the problem.
Have these issues been reported?

I don’t have an answer, but it reminds me of temporal accumulation problems I have had at times. If I understand, in the game window the tint color is not changing immediately when the volume changes (causing the ground tint to change). Examples of temporal changes are clouds take a while to morph between settings, TAA on the main camera takes a while to adjust, etc. Or is it when the camera is in a certain position, things change unexpectedly…

If it was me, I would try with two volumes at different priorities as well. I have got suspicious of the global default volume. No proof, but I had strangeness going on at times. So I always drop a global volume with priority -1 into scenes now rather than rely on the global settings.

Also, you could try adjusting weights instead of enabling/disabling objects. I wonder if there is something being cached going on which enable/disable is encountering. Adjusting weights is a different code path if nothing else.

I also had a strange case that I never understood when the camera was looking in a certain location in a certain direction. Most things turned blank. I never worked it out. I ended up creating a completely new scene with all the same prefabs and it worked perfectly. No idea why, but I just shrugged, accepted it, and moved on.

1 Like

That’s interesting.
I didn’t think test it by changing the weight.
There must have been an interesting result.

I was using the same method as you.
Default Global Setting set to almost empty
and each scene was required to set its own Global Scene Asset.

This must be a different use than the design intent.
(Although it works well, of course)

And the problem appears to have been successfully evaded

TAA: considered in the testing process.
I changed it to SMAA, It’s still the same symptom.

Or is it when the camera is in a certain position, things change unexpectedly…
→
Even this cannot be answered clearly.
Clearly, the symptoms change based on some boundary.
(For example, in the uploaded gif, the situation changes when the height changes by jumping.)

but.
The baseline for this is not clear.

I just think…
Perhaps internally, something’s buffer didn’t clear properly, and it felt like it wasn’t updated. (refresh)
This problem was similarly refreshed by enabling/disabling certain parameters without enabling/disabling the volume itself.
Perhaps, in the refresh process of some parameters, something initialization seemed to be resolved.
However, this was only an additional effect, and could not be a cause or a solution.

I spent my day on this
When I simply confirmed that the workaround worked,
I decided to just accept it. :slight_smile:

but I just shrugged, accepted it, and moved on.
→ I agree. :slight_smile: :slight_smile: :slight_smile:

very interesting
one thing to consider is that PBS has to precompute on most if not all param changes, much like if you were trying to volume blend with different PBS values, you’d lag speak for a moment.

Disabling the local volume to create the fallback
may not precompute the scene/game views equally for the ambient probe update.

IIRC, PBS has update options at the bottom that default OnChanged, this may not recompute SS or Ambient probes using weight sliders or turning off and on.

1 Like

Additional Information
changing the weight : Even if only a very small value is changed, the status changes at once.

As you say, it seems to be a problem like PBS’s update mode.
However, even if i set it to RealTime, the same problem appears and disappears in a moment.
It doesn’t work out perfectly.
I don’t know why an overridden value that shouldn’t be applied is being referenced