Help with The Rigging Toolbox

Help! The Rigging Toolbox

The Rigging Toolbox is a set of tools designed to aid in the process of rigging articulated characters. Use individual tools from the Toolbox to aid in your personal rigging process or use the auto-rig functionality to fully rig characters with features including IK/FK switching and foot roll attributes.

The Rigging Toolbox allows for the creation of custom control rigs and includes many control shapes, control shape positioning and naming options, the ability to create rigs with ‘zeroed-out’ controls and the ability to set custom control colors. The result is a custom rig with immediate user familiarity.

Additional resources: YouTube Channel

The Toolbox


Joints

Skeleton Library — A unique tool that allows for the saving and loading of skeletons in a proprietary format independent of a Maya’s file formats. Save and load skeletons between versions of Maya or quickly load skeletons for rigging.

Note: The Rigging Toolbox will save and load skeletons from a skeleton configuration file (TheRiggingToolbox_skeletons.cfg) stored in the active Maya project. Please set your Maya project before running RTB. You may transfer the contents of ‘TheRiggingToolbox’ folder or the folder itself before running RTB if you’d like to transfer your skelton library between projects. Alternatively, you could add all skeletons to a single skeleton config file by editing the skeleton config file with a text editor.

Scale Skeleton — A toggle switch, field and slider for quickly scaling skeletons without creating a pesky transform node. Also scales partial joint chains.

Create Joints — The standard Maya ‘Joint Tool.’

Build Hierarchy — Creates a hierarchy based on selection and selection order.

Example of use: Press ‘Build Hierarchy’ after selecting individual joints to build an ordered hierarchy from the selection. Useful for building a quick hierarchy out of individual joints without bones.

Break Joint Hierarchy — A toggle switch that breaks a hierarchy into individual objects, then rebuilds the hierarchy when toggled again. You must have a single joint from the hierarchy selected to rebuild it.

Example of use: Select the root of a joint chain and press ‘Break Joint Hierarchy’ to break the chain into individual joints without bone connections. This allows you to position each joint without affecting joints down-chain. Press ‘Rebuild Joint Hierarchy’ to rebuild the chain.

Edit Joint Orientation — Toggles in and out of a mode that allows for the editing of individual joint orientation.

Example of use: Select a joint or joint hierarchy and press ‘Edit Joint Orientation.’ While in rotate transform mode, select a joint rotation axis and rotate as desired. When you are done, toggle back to the default Maya ‘Object Mode’ by pressing ‘Edit Joint Orientation’ again.

Flip 90/Rot 90 — While in ‘Edit Joint Orientation Mode,’ use these options to flip or rotate the orientation of a joint. This is useful for maintaining consitent orientation across a joint chain. This affects the ‘Joint Orient’ of each joint, not the RotateTransfrom Attribute for each joint which keeps joint rotation at zero.

Joint Display Size – All — Changes the display size of all joints in the scene.

Joint Radius – Selected — Changes the radius of a selected individual joint or joint hierarchy. Toggle on the ‘Hierarchy’ checkbox to affect all joints down-chain and toggle ‘Hierarchy’ off to affect only selected joints.


Controls

Make Controls

Creates the following single node NURBS curves to be used as control objects:

  • Circle
  • Cube
  • Ball
  • Pin
  • Barbell
  • Arrow
  • 4 Way Arrow
  • 180 Arrow
  • Arrow on Ball
  • Cone
  • Cylinder
  • IKFK Text Object (used to contain IKFK controls and switches)
  • Hand (omni directional)
  • Foot (omni directional)

Options

Align on Creation — Aligns each created control object (and optional Z-Node) to the selected object in the scene.

Example of use: Select a joint in the scene. Toggle on the ‘Align on Creation’ checkbox. Build a control and/or associated Z-Node by pressing any of the buttons in the ‘Make Controls’ rollout. The control is aligned, both in postion and orientation to the selected object. Useful for creating FK and IK controls.

Z-Node — Creates an additional root-level tranform node parent for each control that maintains transfom information, allowing the control node to remain ‘zeroed-out.’ Set the ‘Z-Node Prefix’ to automatically add a naming prefix to all created Z-Nodes.

Inherit Name on Align — Created control objects (and optional Z-Nodes) inherit the name of the currently selected object they are aligned to on creation.

Shape Name — Created control objects (and optional Z-Nodes) maintain their shape name on creation.

Rename — Renames control objects (and optional Z-Nodes) on creation based on text box entry.

Prefix/Suffix — Adds a prefix and/or suffix to all naming options for control objects (and optional Z-Nodes.)

Transform Controls

Rotate X/Y/Z — Rotates a control curve object 45 degrees in one axis around the desired axis. This tool always works on the control curve object and will ignore any Z-Node selection.

Example of use: Create a control curve with ‘Align on Creation’ checked on. The control curve is created and aligned to the selected object but may not be in a desired orientation. Select the control curve and press ‘X’, ‘Y’ or ‘Z’ in the rotate section to orient the control curve as desired.

Scale +/- — Scales a control curve object up or down. This tool always works on the control curve object and will ignore any Z-Node selection.

Select Shape — Selects all CVs of any selected control curve objects. Allows for the positioning of a control curve without affecting the position or orientation of it’s axis.

Example of use: Create a hand shape that is aligned to the wrist joint. To reposition the hand shape but keep it’s axis aligned to the wrist joint, select the hand shape control curve, press ‘Select Shape,’ then position and rotate the hand shape as desired.


Rigging

Auto-Rig

IK/FK Arm — Rigs an arm or mirrored set of arms with an IK/FK switch or blend attribute. ‘Switch’ creates an animatable on/off switch for switching between IK and FK. ‘Blend’ allows for blending between IK and FK controls over time. When an IK/FK arm is auto-rigged in The Rigging Toolbox the arm will default to FK and the IK controls are hidden. Controls are hidden/displayed automatically when switching between IK and FK. An IK/FK visibility attribute is attached to the IK/FK control which allows you to override the visibility of the arm controls.

Instructions for use:

  1. Match the ‘Target’ list on the left by adding scene objects — in this case joints and control curves — to the ‘Match’ list on the right.
  2. Select the ‘Switch’ or ‘Blend’ option.
  3. If you want to mirror the control scheme, make sure no arm joints exist on the opposite side and check the ‘Mirror +X to -X’ box. Mirroring currently only functions along the X axis (positive to negative) so your character needs to be facing the positive Z direction.
  4. While not required, it’s a good idea to make sure all mirrored joints have a valid ‘Search for’ and ‘Replace with’ text string. This guarantees consistent and unique naming.
  5. While in IK mode, Stetchy IK will allow the joints to stretch beyond their maximum extension by lengthening the two primary bones of the IK chain.
  6. If you would like your pole vector automatically positioned to guarantee that the joints will not shift during creation of the IK chain, make sure the ‘Position Pole Vector’ box is checked. The pole vector will be positioned in roughly the same location as you have it but will be on the plane of IK rotation plane.
  7. Press the ‘Rig It!’ button to complete the arm rig.

IK/FK Leg w/Foot Roll — Rigs a leg or mirrored set of legs with IK or IK/FK switch/blend and a ‘foot roll’ setup. Foot roll control attributes include: Heel Roll, Heel Twist, Ball Roll, Toe Twist, Toe Roll, Toe Tap.

Instructions for use:

  1. Match the ‘Target’ list on the left by adding scene objects — in this case joints and control curves — to the ‘Match’ list on the right. Please choose ‘IK’ or ‘IK/FK’ options before adding objects to the match list – these option each require a different number of targets.
  2. If you want to mirror the control scheme, make sure no leg joints exist on the opposite side and check the ‘Mirror +X to -X’ box. Mirroring currently only functions along the X axis (positive to negative) so your character needs to be facing the positive Z direction.
  3. While not required, it’s a good idea to make sure all mirrored joints have a valid ‘Search for’ and ‘Replace with’ text string. This guarantees consistent and unique naming.
  4. If you would like your pole vector automatically positioned to guarantee that the joints will not shift during creation of the IK chain, make sure the ‘Position Pole Vector’ box is checked. The pole vector will be positioned in roughly the same location as you have it but will be on the plane of IK rotation plane.
  5. Stetchy IK will allow the joints to stretch beyond their maximum extension by lengthening the two primary bones of the IK chain.
  6. Press the ‘Rig It!’ button to complete the leg rig.

Hips — Creates a hip rig that allows the hips to rotate and twist indepently from the spine and legs.

Instructions for use:

  1. Match the ‘Target’ list on the left by adding joints and controls to the ‘Match’ list on the right.
  2. Press ‘Rig It!’ to build a hip control rig.

Note: This operation works best when the hip control curve pivot is located at the first spine joint (the first joint after the root.)

Spine — Creates an FK spine rig. Can also be used for neck and head FK controls.

Instructions for use:

  1. Add joints to the top ‘Match’ list on the right. Starting with the root of the spine (usually the root of the skeleton hierarchy), add each spine joint in order. You may also include any head and neck joints that require FK controls (neck, then head, in order.)
  2. Add control curves to the bottom ‘Match’ list on the right. Starting with the control curve for the root of the spine, add each spine control curve in order, moving up the spine chain. You may also include any head and neck joints that require FK controls. Make sure you have a control curve for each joint you added to the upper joint list.
  3. Press ‘Rig It!’ to build a spine FK control rig.

Connect Rigged — Completes the rigging process by connecting all individually rigged elements together. This includes: IK/FK Arms, IK Legs, Hips and Spine. When using the Auto-Rig functions, The Rigging Toolbox will automatically capture required joints and controls required by the ‘Connect Rigged’ operation. If you completed the Auto-Rig operations in order and have not closed The Rigging Toolbox, the ‘Match’ list should already be filled in. If any of the boxes are empty, you may populate them manually.

* The Tether Pole Vectors option will build pole vector control object tether switches that can be switched between several different control objects during animation.

Note: The master control will always need to be added manually. Select a control object you wish to use as a master control and ‘replace’ the blank slot in the match list with the selected object by pressing the ‘replace’ button.

Connect Fingers — Ties finger controls into the IK/FK switch/blend system allowing fingers to follow the IK control when IK is active and the FK control when FK is active.

Instructions for use:

  1. Match the top left ‘Target’ list by adding joints and controls to the ‘Match’ list on the right.
  2. Add the root control curve for each finger to the ‘Match’ list on the lower right.
  3. Press ‘Connect Fingers’ to connect the fingers to the arm rig.

Control Chains

Control create a chain of controls based on the selection of a single or multiple hierarchies of objects or joints. Control chains are useful for creating controls for long chains of bones or for toes/fingers, tails, ears, etc.

Instructions for use:

  1. Select a the root of a single hierarchy or the roots of multiple hierarchies in any order.
  2. Select a control curve shape from the ‘Shape’ drop down list. Control curve names will based on the setting in the Controls -> Options rollouts — set these options as desired.
  3. ‘End Control’ will create a control on the last object in the hierarchy. You may or may not want this — for example, it is not always useful to have controls for the last joint in a FK chain.
  4. Press ‘Build Control Chain’ to create the control curves. Control curves will be aligned to each object in each hierarchy and will be named accordingly.
  5. Without changing the current selection, ‘Rotate’ and ‘Scale’ the set of control curves to desired position and scale.
  6. Press ‘Connect Hierarchy’ to create contraints (based on the checkbox settings ‘Orient Constrain’ and ‘Point Constrain’) and build the necessary hierarchies from the control curves and their Z-Nodes.

Note: Control chains were originally created for building FK controls for fingers.


Utilities

Constrain — The standard Maya Point, Orient, Parent and Pole Vector constraints.

Align — Aligns the position and/or orientation of one object to another. Select the object that you want the object aligned to, then select the object you want aligned.

Freeze Transformations — Freezes transformations of all selected objects.

Scene Edit — Scene edit is one of the more powerful and useful utilities in The Rigging Toolbox. Scene Edit creates a list of scene objects by selection and/or by type and provides utilites for processing selections within the list. Selecting objects by type allows you to process hidden objects without having to make them visible.

Scene Edit list box — Displays the active list of elements. Scene Edits works based on selection within this list, NOT on selection within the scene.

Get Info — Provides information about a single element selected from the scene edit list.

Gather By Type — Replaces all objects in the scene edit list with the type of object as selected in the ‘Type’ drop down list.

Add — Adds selected elements from the scene to the scene edit list. If an object is already in the list it will not be added again.

Remove — Removes objects selected in the scene edit list from the list.

Add Hi — Selecting the root of any hierarchy and pressing ‘Add Hi’ will add the entire hierarchy to the scene edit list.

Clear List — Clears the scene edit list.

Select in Scene — Selects any element in the scene that is selected in the scene edit list.

Select in List — Selects and element in the list that is selected in the scene.

Delete — Similar to the standard Maya delete function but works based on list selection.

Delete Special— Deletes elements in the scene based on list selection but does not delete objects further down a hierarchy chain. For example, if you select the root of a joint chain and use Maya standard delete (delete key) it will delete the entire chain. Scene Edit ‘Delete Special’ will first unparent the element to be deleted from a chain, then delete the element. Useful for deleting joints and objects in the middle of a chain without regard to their hierarchy status.

Delete Attribute — Deletes list items that were gathered using Gather By Type->User Defined Attributes. This delete function only works on user defined attributes and is very useful for removing the attributes created in the rigging process.

-> — Adds a single selection in the scene edit list to the rename box. Useful if you only want to change part of a name and don’t want to type the entire name.

Rename (text field)– When the rename button is pressed the selected element in the scene edit list will be renamed. Only works when a single element is selected.

Search for / Replace with — Replaces all selected object in the scene edit list with ‘Search for’ and ‘Replace with’ text if the text is found in the name of the selected elements. Can also be used for removing unwanted text from a large group of names by keeping the ‘Replace with’ field blank.

Prefix / Suffix — Adds a prefix and/or suffix to the name of each element selected in the scened edit list. Works indpendently or in conjunction with the ‘Search for’ and ‘Replace with’ fields.

Increment Suffix — Renames all elements in the list selection to the text in the ‘Rename’ text field and increments each by one based on the starting number in the ‘Suffix’ field. Useful for renaming long joint chains or fingers without having to increment the names individually.

To use: Select several objects in the scene edit list. Enter a name in the ‘Rename’ text field. Check on the box ‘Increment Suffix.’ Enter a starting number (integer) in the ‘Suffix’ text field. Press ‘Rename’ button to apply the name and incremented suffix to each selection. Also works in conjunction with ‘Prefix’

Rename (button) — Applies the renaming operation to the scene edit list selection.

C — Clears all rename text fields.

Set Shape Color — Applies the active color to the shape node of each element selected in the scene edit list. Color can be chosen either with the palette presets or the color index slider. Color to be applied is indicated by the swatch in the color index slider. Note: This operation affects only the drawing override color of the element’s shape node, not the material applied to the element.

FBX Export — Exports skeletal meshes and animations to the Unity game engine.

Unity Skinned Mesh — Exports a skinned mesh to the Unity game engine in the FBX format. Select the root joint of the skeleton followed by each skinned mesh.

Unity Animation — Exports an animated skleton minus the skinned mesh. Use this option to keep skinned meshes and animations separate. Select the root of the skeleton only.

* Note: These exporters also work with UDK but have not yet been fully tested.