Note: All information on this page is based on the 2012 Extension 1 release.
Motion Vectors are the result of an analysis telling you where every pixel of the current frame is going to or is coming from (in the previous or following frame). There can be 2 types of Motion Vectors: Forward (next frame) and Backward (previous frame). Forward vectors are more frequent, and when no information is provided as to whether it is forward or backward, you can assume it is forward.
The way motion vectors are stored is through the Red and Green channels of an image, and there are essentially two formats: Absolute and Normalized.
Absolute Motion Vectors
Absolute Motion Vectors is the format that all tools that support motion vectors inside of Flame and Smoke are expecting and generating. This format implicitely means that the vectors are stored in a float or half-float image format (Open EXR), and the particularity is that the pixel no movement is set to 0 in the Red and Green channel, with colour information being positve and negative using the whole float colour range, so colour values can get way beyond what your monitor can display. The usage of a histogram is necessary to understand what is going on with these types of files. The main advantage is that they can be of a really high precision and are self contained in terms of vector magnitude.
Normalized Motion Vectors
Normalized Motion Vector need to be converted to the Absolute format to be used with any Flame and Smoke tools supporting Motion Vectors. There are currently two tools applying the conversion: Motion Convert and Motion Blur. In both tools, the conversion requires manual interaction because, in essence, normalized vectors signify that the pixel displacement has been compressed in a limited colour range, so you have to manually tell the conversion mechanism what the scale of the displacement is, with the Maximum Displacement field, which acts basically as a multiplier.
Normalized Motion Vectors can be found in any bit-depth type of file including half or full float. Its particularity is that the pixel no movement is half of the colour range, so for example, in float it will mean 0.5 (for 8-bit it will mean no movement to 128), and the colour range is clipped in between 0 and 1.
Normalized Motion Vectors can also support information in the blue channel, allowing you to set the pixel displacement magnitude automatically. If this is the case, you need to select the Blue Channel Magnitude option instead of using the Maximum Displacement field.
How do I know what Motion Vector format I'm dealing with?
Where do I get Motion Vector information?
What can I do with Motion Vectors?
The Motion Blur node and module require a Forward Motion Vector input to perform its Motion Blur effect.
The 3D Blur Batch node can do Motion Blur as well as a Depth of Field type of Blur, and also requires a Forward Motion Vector input.
The Timewarp node and module can take Forward and Backward Motion Vector input to use the Motion Frame Interpolation mode. If no inputs are provided, it will generate its own based on the Motion Analysis settings found in the Frame Interpolation section. When the timewarp value is below 100% it will use that information to create new frames to allow you to create smooth slow motion timewarps; and if the value is above 100% it will then use the same information for frame interpolation and Motion Blur trails effects.
The Vector Warp mode requires a Forward Motion Vector to allow pixel warping of the input.
What problems can I encounter with Motion Vectors?