Weight Driver for Maya
The weightDriver node manages driving relationships either through a vector angle reader or a RBF solver.
RBF
The RBF mode (Radial Basis Function) delivers the best way of interpolating an arbitrary number of values based on any number of poses. This way it’s possible to basically drive anything from anything. A common application for a RBF solver is the blending of corrective shapes or blend shapes in general. Especially when it comes to problematic areas like the shoulder, wrist or hip area. The RBF mode can easily blend between different corrective shapes based on the orientation of the joint.
Vector Angle
This is a cone based pose reader to avoid many rotational issues due to Euler rotations. While simple rotation dependencies can be mostly solved with expressions or set driven keys more elaborate setups are bound to fail when two or more axes are involved. A vector angle reader is usually a good and inexpensive solution in these cases.
Watch the RBF Mode Video
Watch the video about the Vector Angle Setup
Compatibility
Linux 64 bit
OS X
Windows 64 bit
Maya 2020, 2022, 2023, 2024, 2025
Version
4.0.1
Installation
All files of the toolset are combined as a module. This allows for an easy installation and keeps all necessary files in one location.
To install unzip the download and drag the provided dragDropInstaller.py in the main Maya window. Depending on the type of chosen installation all files will be created and placed automatically. Also, a log file will be created documenting the installation.
Make sure you unzip before dragging the installer into the Maya window.
If you need help during the installation see the included installation guide which can also be opened from the installer window.
It's recommended to use the default installation path. Only use a custom path if you know how modules are handled in Maya.
After the installation restart Maya. Load the weightDriver plug-in from the plug-in manager.
Command
weightDriverEditRBF
This command automatically loads the plug-in and opens the Weight Driver Editor
createNode weightDriver
Creates a new weightDriver node manually.
Usage RBF
In most cases using the designated editor to create or edit a RBF setup is sufficient and the preferred way. However, in some cases it might be necessary to manually setup the weightDriver in RBF mode. In general, the following should be considered:
- Rest Poses
Rest poses, if needed, should come first in the post list.
The reason for this is that Maya stores sparse arrays for it’s attributes, which means that if an array attribute contains a zero, it won’t get stored in the file. Rest poses often have many zeros and thus aren’t stored correctly. This can cause false RBF behavior when loading a scene file. If a pose, with zero values for the input and pose values is placed at the end of the pose list the weight driver is unable to tell how many poses there are when loading a scene file.
- Successive Pose IDs
When connecting attributes manually without the Weight Driver Editor all connections should be made in successive order, starting at index 0. Indices should not be skipped. When using the editor, this is not an issue, because even if poses get deleted the resulting setup will always have the poses in successive order.
Again, this has to do with Maya’s sparse arrays. Manually skipping one or more indices can lead to a false RBF behaviour.
Usage Vector Angle
In order to make the node work correctly you need to establish two connections.
The first tells the node the reference point for the vector calculation and is usually the transform node of the weightDriver shape node. The second connection comes from the node which serves as the target point for the vector, such as a locator, joint or other node.
- connect the weightDriver transform node worldMatrix to the weightDriverShape readerMatrix
(depending on the editor you use you might have to display hidden attributes in oder to see the reader and driver inputs) - create a locator and connect the locator transform node worldMatrix attribute to the weightDriverShape driverMatrix
- with both connections established the weightDriver node now displays the driver name and weight, which is the outWeight attribute you can now connect to any attribute you want to drive, for example a blend shape channel.
For an explanation of all weightDriver attributes please refer to the video Understanding the weight driver.
weightDriver is under the terms of the MIT License
You'll get a Maya node which manages driving relationships either through a RBF solver or vector angle reader.