RigNode

v1.4Maya 2025 & 2026

RigNode

RigNode (Rig Toolkit) is a set of rigging workflow tools for Maya 2025 and 2026, in one Python file. It speeds up everyday rigging tasks, but it is not an auto-rigger.

Copyright (c) 2026 Enzo Freminet. All rights reserved.

Install

  1. Unzip RigNode.zip, then drag RigNode.py from your file browser into the Maya viewport.
  2. Maya copies the file to your user scripts folder (Documents/maya/<version>/scripts), adds a button with the Rig Toolkit logo to the current shelf, and opens the toolkit.

The logo is stored inside the Python file, so you only need that one file. Install once for each Maya version.

To update: restart Maya, then drop the new file. Maya keeps the old version loaded until you restart. The shelf button is replaced, not duplicated, if you drop the file on the same shelf.

Launch

Click the Rig Toolkit button on the shelf, or run this in a Python tab of the Script Editor:

import rig_toolkit; rig_toolkit.show()

Running it again replaces the open window. The window can be docked anywhere in Maya. When it floats, its height adjusts to the current tab, so there is no empty space. When docked, it takes the size of the dock.

How the window works

  • The top panel is always visible and holds the tools you use most.
  • The five tabs below it group everything else: Controls, Shapes, Rename, Transform and Rig.
  • Hover over any button to see what it does. Small gray text under a heading tells you what to select.
  • Every action can be undone in one Ctrl+Z. If the selection is wrong, a message appears in the viewport and nothing changes.

Top panel

Match

Select the driver first, then the targets. The targets move to the driver.

ButtonWhat it does
T / R / S checkboxesChoose what Match All copies: translation, rotation and scale.
Match AllMatches the checked channels.
TranslateMatches position only.
RotateMatches rotation only.

Quick tools

ButtonWhat it does
FreezeFreezes translate, rotate and scale on the selection.
HistoryDeletes construction history on the selection.
PivotCenters the pivot of the selected objects.
LRAToggles the local rotation axis display on the selected objects or joints.
CVsSelects all CVs of the selected curves.
CtrlCreates a size 1 circle controller, ctrl_<name> inside grp_offset_<name>, matched to each selected object. With nothing selected, it creates one at the origin. For other shapes and options, use the Controls tab.
JointCreates a joint named jnt_<name> on each selected object, or at the center of the selected vertices, edges or faces. With nothing selected, it creates one at the origin. New joints are not parented.
Show/HideShows or hides all joints in every viewport.
Joint size sliderSets the display size of all joints.

Controls tab

Creates NURBS controllers and colors them. Each controller is named ctrl_<name> and sits inside an offset group named grp_offset_<name>, so its channels start at zero.

Clicking a shape creates the controller straight away. You get one per selected object, matched to its position and rotation, or one at the origin if nothing is selected. New controllers are left selected, so you can click a color next.

Options

OptionWhat it does
NameBase name of the controller. If blank, it uses the selected object's name without its ctrl_, grp_offset_, jnt_, geo_ or loc_ prefix. With several objects selected, a number is added: ctrl_arm_01, ctrl_arm_02.
SizeController size in scene units.
AxisThe axis the controller faces.

Shape

Hover over a picture to see its name. The shapes are Circle, Square, Cube, Sphere, Diamond, Arrow, Double Arrow, Cross, Pin, Gear, Axis, Box, Cone, Cross Arrow, Curved Cross, Circle Arrows, Square Arrows, Aim, Rotate, Dial, Arcs, Pill, Switch, Eyes and Crescent.

Text

Type some text, then click Create or press Enter to draw it as an Arial curve controller. The letters are merged into one controller, centered, and as tall as Size. If Name is blank, the controller is named after the text: IK gives ctrl_IK.

Color

Colors are set as overrides on the shape nodes of the selected controllers.

ButtonWhat it does
SwatchesApply a Maya color index.
Custom RGB...Opens a color picker and applies any color.
Reset ColorRemoves the color override.

Shapes tab

Line width

Sets the Line Width attribute of the selected curve shapes, which controls their thickness in the viewport.

ButtonWhat it does
ApplySets the entered value on the selected curves.
ResetGoes back to Maya's default line width.

Mirror across X

Sides are found from L_ / R_ or _L / _R in the name.

ButtonWhat it does
Mirror ShapeCopies the shape of the selected controllers onto their existing other side, mirrored. The other side keeps its color.
Mirror ControllerCreates the other side of the selected controllers, with its offset group. It is skipped if the other side already exists.
Behavior orientationOn: new controllers are oriented like Mirror Joint with Behavior. Off: world-aligned controllers stay world-aligned, which suits IK feet, for example.

Copy and flip

ButtonWhat it does
Copy ShapeSelect the source first, then the targets. Copies the shape, and each target keeps its color.
Flip DirectionReverses the direction (normal) of the selected curves.
Flip X / Y / ZFlips the shape across its local axis. The transform does not change.

Scale shape

Enter a value, then click Bigger to multiply the shape size by it, or Smaller to divide by it. Only the CVs move, so the transform does not change.

Rename tab

Choose Selected, or Selected + hierarchy to include all children. Nodes are renamed from the deepest child up, so duplicate short names are safe. The final names are printed in the Script Editor.

ToolWhat it does
Quick prefixAdds ctrl_, grp_offset_, jnt_, geo_ or loc_, unless the name already has it.
Swap L / RSwaps L_ and R_, or _L and _R. Swapping both sides at once is safe.
Add textAdds a prefix or a suffix.
Search and replaceReplaces text in each name. Leave Replace blank to remove the text.
Remove charactersRemoves a number of characters From Start or From End.
Auto-numberNumbers names in selection order. Set the base name (blank keeps the current names), the number of digits and the first number.
Select by nameSelects all objects whose name contains the text. * works as a wildcard.

Transform tab

Pivot

Joints are skipped, because moving a joint's pivot breaks its transform.

ButtonWhat it does
To Selected Vertex / Edge / FaceMoves the pivot to the center of the selected components, on the object selected with them or else on their own object.
ResetPuts the pivot back on the object's own origin.
CenterPuts the pivot at the center of the object.
WorldPuts the pivot at the world origin.
BottomPuts the pivot at the bottom center of the object's bounding box.

Offset groups

ButtonWhat it does
Create OffsetAdds a grp_offset_ group above each selected object, at the same place in the hierarchy, without creating a controller. The object's channels become zero.
Zero OutMoves each selected controller's transform into a new offset group, so its channels become zero.

Channels

Check Translate, Rotate, Scale or Visibility, then use the buttons on the selection.

ButtonWhat it does
Lock + HideLocks the checked channels and hides them from the Channel Box.
Unlock + ShowUnlocks the checked channels and shows them in the Channel Box.

Locators

ButtonWhat it does
At CenterCreates one locator at the center of the selected objects and components.
On Each ObjectCreates one locator per selected object, with its position and rotation.

Rig tab

Constraints

Select the driver first, then the targets. Check Maintain offset to keep the targets where they are instead of snapping them to the driver.

ButtonWhat it does
ParentAdds a parent constraint from the first selected object to the others.
PointAdds a point constraint.
OrientAdds an orient constraint.
ScaleAdds a scale constraint.

Joints

ButtonWhat it does
Orient to WorldAligns the selected joints with the world axes. Children stay in place.
Aim at Next JointAims X at the next joint with Y up. End joints align with their parent.
Show Axes / Hide AxesShows or hides the local axes of the selected joints and their child joints.
Rotation orderSets the rotation order on the selected objects or joints, keeping their current orientation.

License

Copyright (c) 2026 Enzo Freminet. All rights reserved.

Still stuck?

Send a message with your Maya version and the error from the Script Editor. I read every one.

Contact