Go to: Synopsis. Return value. Flags. Python examples.
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.
string | The name of the created rig container, if the createRig flag is set |
containerName, createControls, createJoints, createRig, flattenControls, flattenJoints, moduleTerminals, optimizeModules, setupMethod, syncedContainer
Long name (short name) |
Argument types |
Properties |
|
containerName(ctn)
|
string
|
|
|
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
|
|
|
Can be used with "createRig". Specifies whether or not to create the rig's controls.
This is enabled by default.
|
|
createJoints(cj)
|
boolean
|
|
|
Can be used with "createRig". Specifies whether or not to create the rig's joints.
This is enabled by default.
|
|
createRig(cr)
|
boolean
|
|
|
Creates a rig from Bifrost rigging modules.
|
|
flattenControls(fc)
|
boolean
|
|
|
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
|
|
|
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
|
|
|
Enables or disables the terminal Diagnostic flag on rigging module nodes.
|
|
optimizeModules(om)
|
boolean
|
|
|
Optimizes rigging modules by disabling the "edit_mode" and "profile_evaluation" ports on rigging
module nodes.
|
|
setupMethod(sm)
|
string
|
|
|
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
|
|
|
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.
|
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)