Thursday 2 August 2012

Tech Tips: frame offset with mental ray mv2DToxik pass

I've been having all sorts of problems whereby passes from any render layers which aren't my "main" layer (in this case AO and mattes) didn't line up with the passes from my main layer. They appeared to have a temporal offset of a fraction of a frame.

I've read a few forum threads and this is what I think was happening . . . 

In order to calculate vector information the motion vector pass renders with a 1/2 frame shutter offset (I think it's 1/2 a frame but don't quote me on that - I'm going to read up on the maths behind this when I have more time). All the other passes in that layer are rendered with the same offset (in my case that was beauty, spec, reflection, shadow etc etc). However, any layers without an MV pass associated still render on whole frames (my AO and matte passes). Hence the offset in my comp!

The solution:

Number 1:
In render globals under the Quality Tab turn on Motion Blur (temporarily). Go to the "Motion Offsets" tab. Check "Custom Motion Offsets" ON. From there set the "Motion Back Offset" to 0.00. Finally, just turn off Motion Blur. This disables the 1/2 frame offset on any layers with the mv2d render pass.

Number 2:
Under the Options Tab, expand the "Mental Ray Overrides" tab. Scroll down to the "Performance" Tab. If you check "Force Motion Vector Computation" ON, it forces that offset on all your render layers, even if you don't have that mv2d pass associated with that render layer.

Thanks to the following for helping me figure this one out:

http://forums.cgsociety.org/archive/index.php/t-971568.html
http://aloedesign.com/2008/12/maya-2d-motion-vectors-tutorial/3/

No comments:

Post a Comment