View Full Version : Motion blur with auto resize broken?
01-20-2011, 02:53 AM
When rendering my auto resize fluid with motion blur, it only renders intermittent frames of the fluid and black frames with nothing there at all.
If I turn off motion blur then all is fine
I'm using 2011 hotfix 2. Does sp1 fix this issue?
01-20-2011, 07:35 AM
I almost never use the motion blur inside of Maya unless I'm outputting vectors. I almost swear by this plugin. http://www.revisionfx.com/products/rsmb/ It does an outstanding job with motion blur.
01-20-2011, 08:06 AM
True that. Unfortunately rsmb only works well with motion vector data. Fluids dont output that unless u mesh them as far as I know anyways. Even if they did, the frame offsetting done in order to calculate those vectors would probably not output them because of this weird bug. :sad:
01-20-2011, 09:19 PM
Any one try to motion blur auto resized fluids yet?
01-20-2011, 10:46 PM
dont fluids still blur based on the Bounding box not the actual fluid? I know 2011 boasts motion blurred fluids but i thought on meshed fluids only. could be wrong tho.
01-20-2011, 11:37 PM
Well if they do blur based on bounding box, that method would inherently fail with the way auto resize works wouldn't it? Considering it's constantly changing. Maybe Duncan would have some insight into this bug :curious:
01-20-2011, 11:56 PM
you got it! so i think the only method for motion blurring fluids is to convert the fluid to geo and use the uvw per vertex motion blur in 2011.
01-21-2011, 07:34 PM
They will normally blur even though the blur doesn't account for the vortices etc. Problem is that I've got fast moving cameras and spaceships. Holdouts, debris etc which are motion blurred and need to line up. A regular fluid container blurs no problem with the temporal offset that motion blur does. Not the case with auto resize. Kind of ironic since everything read about the auto resize feature boasts " ideal for fast moving fluids".
01-24-2011, 09:34 PM
The cache interpolation currently fails when the resolution of the fluid between frames is different ( due to auto resize ). A workaround can be to enable Custom Motion Offsets and set the motionBackOffset to 1.0. This ensures the cache is only sampled at integer frames and not inbetween ones, and thus avoids the cache interpolation problem.
02-09-2011, 02:52 AM
i must be getting old: what is uvw motion blur?
How do i use it?
>>you got it! so i think the only method for motion blurring fluids is to convert the fluid to geo and use the uvw per vertex motion blur in 2011.
Velocity Per Vertex, a fluidShape node attribute, generates data from the fluid object by mapping fluid velocity values to R, G, and B color values
am i supposed to see those?
Is converting fluid to mesh the right thing to do, hellish slow for real scenes?
02-09-2011, 04:34 AM
Honestly, I'd rather watch paint dry than convert fluids to polys. Not the most useful feature. Using particles that are affected by the fluid as a field, then motion vectoring them is the only way right now.
02-09-2011, 10:53 PM
Lower the fluid mesh resolution on the fluid to make it faster(you may even wish to make it lower than 1.0). The fluid must be cached with velocity for it to work. If you are using an auto resize fluid then you additionally need to set the motionBackOffset to 1, so it does not attempt to evaluate the cached fluid at a non-integer frame (cache interpolation currently fails with fluids when the resolution changes between frames). Having a somewhat higher than default surface threshold can help, because the fluid velocity at the outer boundary may be less than that inside the denser regions. Also the motion blur only works with Mental Ray.
The standard motion blur works by comparing mesh vertex positions at different points in time, but this only works if the topology does not change between frames. With fluid to poly this is rarely true so we use the velocity from the fluid grid for the motion blur vectors.
Also I think velocityPerVertex (which must be enabled for the motion blur) was confused above with UvwPerVertex, which is for texturing the output mesh.
02-09-2011, 11:19 PM
i figured all that out after some trial but the mesh has no motion blur in mental ray as advertised. Am i missing a step? maybe my fluids werent cached at all (i tried with something really small). Is it a requirement? Ended up rendering motion vectors on it.
We still see a need to write our own output shader for motion vectors. Velocities on the vertices are world space by the way?
Ah, and sorry for the OT: cacheFileExample.py and cacheFileConverter.py form the devkit are broken which makes it really hard (no other docs) to develop for fluids...
03-16-2011, 06:47 PM
Can you make motion blur work better with fluids by making the fluid cache sample subframes?
Sometimes my high speed simulations would just become a mess by sampling once per frame so I use fluid cache at like 0.1, 0.2, or 0.25 rates.
This helps with the fluid when some kind of faster motion is required. I assumed this also helps the motion blur?
Or does mental ray even try to see these subframe samples when calculating motion blur?
03-16-2011, 06:47 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.