Hi there,
I have tried to render VDB volume with density and velocity from Houdini. Vray recognizes all my data, although it does not render what I expect.
I rendered the VDB data with Mantra, it worked as I hoped. So I would like to get results like Mantra did with Vray in terms of motion blur behavior.
The first image is from Mantra, second one is from Vray.
On top of that, I attached my test scene file and VDB caches, I hope it is helpful for you to find a solution.
Any news on this issue? We have the exact same problem. We are doing explosions, smoke from rocket engines, train smoke, etc. And we can’t get the motion blur of the volume grid to look right!
The issue from the first post is that the cache does not change its origin between frames, but the vdb data inside changes. Is this the case for your as well?
Would it be possible to send over a scene which is not working correctly for you so we can check what is going on?
I can send you one of the VDBs Link exclusivo para download | WeTransfer
Doesn’t look like I get any motion blur at all. If you over crank the motion blur the volume just gets thinner but the outer edges look almost not affected?
Did you try to increase the Motion Blur multiplier in the rendering rollout of the Volume Grid? Sometimes the scale between Maya and Houdini doesn’t match exactly so you will need to increase the multiplier.
If I change it to 10 I do get motion blur in here.
Yes I do get some kind of motion blur but it just doesn’t look right…
Just tried out Phoenix and I’m amazed how easy it is to use and the rendering looks perfect (and the motion blur looks like one would expect). I’ll probably use it for at least 50% of the smoke sims right away, but it would be so nice to also get the Houdini sims to look right.
Thank you Richard for following this up.
Regarding this, I had tested with a couple of settings but it changes something but didn’t look right, for example
- unit size scaling
- multiplying velocity on the original velocity volume
- increasing multiplier value in Vray
- matching velocity volume dimension with other volumes(eg, density, temperature and etc)
On top of that, the issue is not a case specific and happens generally in my case…
after some debugging with the colleagues, we managed to get to the bottom of this. So, in short, V-Ray calculates volumetric motion blur in one of two ways, both of which differ from Mantra:
1. By tracing the velocity for a specific voxel backwards and stretching the content for the newly found voxel at position (current voxel + velocity*-1). This is the closest to what Mantra seems to be doing, which is directly stretching the content for the currently shaded voxel. If you’d like to set up V-Ray to render volumetric motion blur this way, you need to set an option on the volume grid, like this: " setAttr “VRayVolumeGrid1.mbgrid” 1; ". By default, this is set to 0.
Please give the option above a shot. It won’t look exactly like Mantra but should produce good results. You may also need to tweak the Motion Blur Multiplier option.
2. The default option expects grid velocity information to be present around the content (e.g. density) of the blurred voxel. This works really well for simulations where the entire velocity grid’s bounding box contains velocity information but may give you trouble if you’ve generated a VDB with a random velocity field right around the edges of the density. In such cases, the density will be stretched as far as the velocity vectors go, and will abruptly end there.
Hi Gosho, thanks for checking and debugging it.
I tried to apply settings what you explained above, although I couldn’t find the attribute “***.mbgrid” in either transform or shape node of the VRayVolumeGrid node.(I checked with “listAttr” command but did not came up)
Our current VRay version is 3.60.04, so is the option available with later version?
Judging by this forum thread, it should be available in the nightlies for 3.60.05 starting from 20181003. I’ve checked with those builds and the option is available there.