2D motion vector pass messing up


#1

Hi all.

Is just me?? or sometimes if you add a 2D motion vector pass to a render layer, the output render for that layer will be 0.2 frames slipped out of place… if you make a render for frame X it will do a render for X.2

I’m in a hurry so I had to add the same vector pass to all other layers to match things up but would be nice to know the right way to deal with this… Anybody with the same problem??


#2

Set the custom offset in the rendersettings to 0 for the layer that you apply motionvectors to. You have to enable motionblur, enable custom offset, set it to zero, keep custom offset enabled but disable the motionblur again. That way mray will enable the moblur when you render the vectors but take the custom offsets into account and everything should match.
There are several other ways, but i think this should work.


#3

If you have several render layers it whould be better to render them all without MB and for the vectors create separate render layer. Aply black surface shader to all objects, turn raytracing and lights off. It whould render fast. Everything will match. You could use build in maya pass system for this layer- you need “2D motion vector” pass.


#4

Set the custom offset in the rendersettings to 0 for the layer that you apply
motionvectors to. You have to enable motionblur, enable custom offset, set it to
zero, keep custom offset enabled but disable the motionblur again. That way mray
will enable the moblur when you render the vectors but take the custom offsets
into account and everything should match.
There are several other ways, but i
think this should work.

Thanks derMarkus.
I did what you sayd and now it’s rendering on a 0.6 slipped factor, so i think is just a matter to find the right values.
If you know another way to resolve this i would like to know it.

Thanks Kiryha.
Im actually using the maya pass system with the “2d motion vector” but it is rendering all the frames slipped on a 0.2 factor, while all the other render layers are rendering at the exact frame number.


#5

So far i found that you have to set the “motion back offset” to 1, in order to force MR to start calculating the motion factor from behind and stop calculating at the exact frame number to render.

It’s working nice, but the problem is that it’s supposed that for better results you should calculate 50% behind and 50% in front of the frame, but this way the rendered frame will be in front of the exact frame you need.


#6

I believe the problem is caused by the fact that evaluation during a frame happens at different places (QMC) and can be independent on different layers.

When rendering with actual motion blur this isn’t a problem.

So like others have mentioned, add motion blur to all layers and zero out the shutter open and close (choose the same time point like 0.5)

This is sort of a hammer approach but I know it works. It calculates the motion data but it doesn’t render so it’s not really a speed hit.

Or render actual motion blur with Unified Sampling (mental ray 3.9)


#7

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.