Table of Contents
This node computes the rotation of a wheel if travelling along a distance. The distance is based on the movement of an item.
Use this control to enter the radius of the wheel to rotate. This value can currently not be enveloped because that would require evaluating the whole envelope up to the current frame every time the node is evaluated.
The reference item to use to compute a travelled distance. This may be the wheel itself if “Use World Distance” is used.
The direction (in local coordinates) on the Movement Reference that will be designated as forward in the direction of travel.
Use World Distance
Use the world coordinates of the Movement Reference item to compute the travelled distance. If disabled, the local movement of the item is used.
Use X/Y/Z Distance
Toggle which axis positions are used to compute the travelled distance.
This aligns the wheel to the rotation of travel. The wheel may travel backwards as well. If that happens, the alignment will not flip (it also shouldn't either).
Travelling backwards is detected by the motion changing by more than 90° from one frame to the next.
If Align is active, the plugin will assume a default orientation for the wheel. The forward direction is -Z, it will rotate around the pitch and the alignment modifies the heading.
How far the plugin will look ahead to compute the alignment.
Samples per Frame
If the movement has intricate turns, increasing the number of samples will increase the accuracy of the computed distance - but will also slow down evaluating it.
First Frame / Override
Last Frame / Override
This controls allow you to limit the frames where the plugin is active. Multiple plugins can be daisy chained via the Rotation input and using Add as a Channel Replacement option to allow for multiple slices in time where the plugins are active. A similar effect can be achieved by animating the Rotation Multiplier.
These envelope is evaluated as the travelled distance for the wheel is computed. A value of less than 100% will slow down the wheel rotation (0% is a complete standstill), a value higher than 100% speed up the rotation. This can be used to lock wheels or overcrank them.
This determines the rotation channel the wheel rotation will be copied to if the Rotation Vector output is used.
If a Rotation vector is connected to the input, this control defines how the Rotation Channel will modify the respective rotation channel on the input vector. This allows for the daisy chaining of multiple wheel nodes.
If this option is enabled, the plugin will use a cache for the wheel rotation which can massively speed up scenes with multiple wheels or long scenes.
The Alignment is not cached.
Updates the cache. This is required if any of the items that influence the current wheel have been edited.
Due to technical limitations, the cache can not be updated automatically if any of the items that influence the current wheel have been changed.
We have provided the Wheel Rotation Control plugin to make this process easier.
Saves the cache with the node settings, effectively baking it.
If save is off, the cache will be re-created when the node is loading (i.e. when a scene is loaded).
The rotation of a wheel travelling the path of the Movement Reference item up to the current frame.
The total distance travelled by the Movement Reference item up to the current frame.
The distance travelled by the Movement Reference item up to the current frame taking the Rotation Multiplier into account.
Rotation (Input) / Rotation Vector (output)
The Rotation input is passed through to the Rotation output. Any computed wheel rotation will replace the rotation channel selected by the Rotation Channel Control
This plugin is our Plugin of the Month for October 2020 and December 2020, made possible by the finest patrons on Patreon.
Sponsored by Mikael “Cageman” Burman.