Solved Setting volume as dirty doesn't refresh in S22 or R23.

I have a VolumeObject that is returned as a call to GetVirtualObjects.

Inside GetVirtualObjects I load in a new vdb file from disk and call the following...

_volumeObject->SetVolume(volume);

_volumeObject->SetDirty(DIRTYFLAGS::ALL);

This work for R20 and R21. But not in S22 or R23.

Any ideas what might be wrong? Is there some other flag I need to set to make the viewport detect a change to the VolumeObject and make it update?

How does the VolumeLoader update the viewport when it loads in a new VDB? I will need to do the same thing for my Object.

What flags does the VolumeLoader set when it is registered? Perhaps I need to add a new flag?

Thanks,
Kent

Hi @kbar I'm able to reproduce the issue and I've opened a new bug report about it.
The only workaround is to return a new VolumeObject each time.

Cheers,
Maxime.