Go to: Synopsis. Return value. Flags. Python examples.

Synopsis

bifrostRigging( [bifrostGraphShape, bifrostBoard, ...] , [containerName=string], [createControls=boolean], [createJoints=boolean], [createRig=boolean], [flattenControls=boolean], [flattenJoints=boolean], [moduleTerminals=boolean], [optimizeModules=boolean], [setupMethod=string], [syncedContainer=boolean])

Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.

bifrostRigging is undoable, NOT queryable, and NOT editable.

The bifrostRigging command's main purpose is to create a Maya rig from the Bifrost rigging modules inside Bifrost graphs. The command also lets you operate on Bifrost rigging modules to do things such as enabling or disabling terminal flags, or optimizing modules. This command's positional arguments are the Bifrost graph nodes to process. If no graph nodes are specified, the command will process all Bifrost graph nodes in the scene.

Return value

stringThe name of the created rig container, if the createRig flag is set

Flags

containerName, createControls, createJoints, createRig, flattenControls, flattenJoints, moduleTerminals, optimizeModules, setupMethod, syncedContainer
Long name (short name) Argument types Properties
containerName(ctn) string create
Can be used with "createRig". Specifies the name of the container for the Maya rig to be created. The default name is "bifrostRig".
createControls(cc) boolean create
Can be used with "createRig". Specifies whether or not to create the rig's controls. This is enabled by default.
createJoints(cj) boolean create
Can be used with "createRig". Specifies whether or not to create the rig's joints. This is enabled by default.
createRig(cr) boolean create
Creates a rig from Bifrost rigging modules.
flattenControls(fc) boolean create
Can be used with "createRig". Specifies whether the rig's controls are built in a flat (non-hierarchical) or full hierarchical structure. A flat structure improves performance by reducing transformation processing but may limit features such as Selection Walking. This is disabled by default.
flattenJoints(fj) boolean create
Can be used with "createRig". Specifies whether the rig's joints are built in a flat (non-hierarchical) or full hierarchical structure. A flat structure improves performance by reducing transformation processing but may limit features such as Selection Walking, or may not be suitable for exporting the skeleton. This is disabled by default.
moduleTerminals(mt) boolean create
Enables or disables the terminal Diagnostic flag on rigging module nodes.
optimizeModules(om) boolean create
Optimizes rigging modules by disabling the "edit_mode" and "profile_evaluation" ports on rigging module nodes.
setupMethod(sm) string create
Can be used with "createRig". Specifies the scene setup for the rig's objects and connections to be created. The available methods are:

  • "cycleFree": Creates the rig in a cycle-free manner. For each Bifrost transform, two Maya objects are generated: a primary control or joint (output) and an operator transform (input). This method prevents cyclic dependencies, ensuring predictable evaluation and enhanced performance, but disrupts the interaction behavior in Maya, as the selection is rerouted from the primary objects to the operator transforms, and custom manipulators are used for interaction.

  • "native" (default): Creates the rig using Maya's native interaction approach by generating a single Maya object per Bifrost transform. While this offers a familiar workflow, it introduces cycles in the scene, which may lead to slight evaluation delays and increased overhead due to extra matrix operations.
syncedContainer(sc) boolean create
Can be used with "createRig". Creates the Maya rig in a synced container. The container automatically deletes and recreates its content when Maya is idle and if any module setup is updated. This provides interactive feedback during rig construction but will remove any manual modifications or connections on the rig objects. This is disabled by default.

Flag can appear in Create mode of command Flag can appear in Edit mode of command
Flag can appear in Query mode of command Flag can have multiple arguments, passed either as a tuple or a list.

Python examples

import maya.cmds as cmds

# Create a rig with default options from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True)

# Create a rig  with default options only from specified Bifrost graph nodes.
cmds.bifrostRigging("bifrostGraphShape1", "bifrostGraphShape2", createRig=True)

# Create a "myRig" rig with default options from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True, containerName="myRig")

# Create a rig using the "native" setup method from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True, setupMethod="native")

# Create a "mySyncedRig" rig within a synced container from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True, containerName="mySyncedRig", syncedContainer=True)

# Create a rig containing only controls from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True, createJoints=False)

# Create a rig with controls and joints flattened from all Bifrost graph nodes in the scene.
cmds.bifrostRigging(createRig=True, flattenControls=True, flattenJoints=True)

# Optimize all rigging modules in the scene.
cmds.bifrostRigging(optimizeModules=True)

# Disable the terminal Diagnostic flag on all rigging modules in the scene.
cmds.bifrostRigging(moduleTerminals=False)