Contact Support

Generating Motion Vectors

The Smart Vector toolset generates motion vectors once, up front, to reduce overheads later on. The SmartVector node writes motion vectors to the .exr format, which are then used to drive the VectorDistort node.

Warning:  Due to VFX Platform library changes, vectors generated by the Nuke 11 SmartVector toolset do not match legacy versions. For example, vectors generated by Nuke 11.0v1 do not match those generated by Nuke 10.5v4.

To generate motion vectors:

1.   Read in your source sequence and then connect the SmartVector node to the Read node.
2.   Double-click the SmartVector node to open its properties and enter a valid file path.

Note:  You can only write motion vectors to the .exr format. Don't forget to add frame padding in the form of hashes or printf notation, depending on your Preferences > Behaviors > File Handling settings.

3.   Set the frame range to render vectors for using the range, from, and to controls.
4.   Set the vector detail control to the required detail level. The default value of 0.3 is sufficient for sequences with low detail and movement, but you may want to increase the detail to improve the vector quality in some cases.

For example, if the area you're working on is relatively small, the default value of 0.3 might not capture movement properly. Try increasing the control to 1.0 to capture more detail.

Note:  High detail vectors take longer to render, but can improve the results you get from the VectorDistort node.

5.   Click Render to write out your motion vector .exr files.

You can examine the vectors produced by connecting a Viewer to the SmartVector node and switching the channels control above the Viewer to smartvector.

6.   If you want the render to run in the background, so that you can keep working in the Node Graph, enable Output to Write and click Export Write to automatically create a Write node with suitable .exr settings.
7.   Enter a file path in the Write node's controls and then click Render.
8.   In the Render dialog, make sure Render using frame server is enabled, and then click OK.

Note:  SmartVector does not currently output motion, forward, and backward channels by default. If you require these channels, add a VectorToMotion node after the SmartVector node. VectorToMotion converts the vectors to motion that can be used with VectorBlur to create motion blur, without using a VectorGenerator.

9.   Proceed to Adding Paint to the Source or Adding an Image to the Source