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

Synopsis

freeze([allNodes=boolean], [displayLayers=boolean], [downstream=boolean], [frozen=boolean], [invisible=boolean], [noFreeze=boolean], [unfreeze=boolean], [upstream=boolean])

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

freeze is undoable, queryable, and NOT editable.

When a node is frozen none of its inputs will be requested when they change, the node will use the inputs that existed at the time of freezing until such time as the node is unfrozen. A node can be frozen in one of two ways; either directly, via setting the "frozen" attribute on the node to be true, or indirectly, via setting the "frozenAffected" extension attribute on the node to be true. This command lets you freeze nodes based on various criteria. See the flags for the types of criteria the command uses to decide what to freeze or unfreeze. The nodes you select will be considered to be frozen directly. Those affected by it, as dictated by the argument settings, will be considered to be frozen indirectly. If the frozen attribute, visibililty, or display layer mode has an input connection then the frozen state will not propagate as we can't be sure the node won't unfreeze or become visible at playback time. In query mode this command will find the nodes with each of the frozen states set (frozen, frozenAffected, and neither).

Return value

string[]in query mode the list of currently frozen or unfrozen nodes. The list is in three parts separated by an empty string; nodes with frozen state (un)set, nodes with frozenAffected state (un)set, and the rest of the selected nodes
string[]the list of nodes whose frozen state was set by the command. The list is in two parts separated by an empty string; nodes with frozen state set, and nodes with frozenAffected state set

In query mode, return type is based on queried flag.

Keywords

evaluation, manager, DG, runtime

Flags

allNodes, displayLayers, downstream, frozen, invisible, noFreeze, unfreeze, upstream
Long name (short name) Argument types Properties
allNodes(all) boolean createquery
This flag lets you select which nodes are to be used for the operation. If it is not set then the selection list will be used, otherwise all nodes in the scene will be used. This flag can be used in query mode to find the set of frozen nodes in the scene. It can also be used in create mode with filters (displayLayers, invisible, or frozen) to target a specific subset of nodes in your scene.
displayLayers(dl) boolean createquery
If this flag is enabled then the display layers on the list to be processed will be walked. Any nodes they control will be added to the processing list, providing the display layer visibility control is off and not connected. Note: Animated visibility or enabled states will be treated as matches to be thorough. No attempt is made to check for static animation.
downstream(dn) boolean createquery
If this flag is enabled then the frozen state will attempt to propagate downstream from the selected nodes. e.g. the mesh shape deformations being controlled by a skeleton rig.
frozen(f) boolean createquery
If this flag is enabled then the list of nodes to be processed will be filtered out so that only nodes with the frozen attribute already set are included. Otherwise all nodes being processed will first have their frozen attribute set before propagating the frozen state. This flag would only be used if you had previously frozen the desired nodes and are just using the command to propagate the frozen state through the graph.
invisible(i) boolean createquery
If this flag is enabled then the invisible nodes on the list to be processed will be walked. Any nodes below them in the DAG hierarchy will be added to the processing list, providing the visibility attribute is not connected. Note: Animated visibility states will be treated as a match to be thorough. No attempt is made to check for static animation.
noFreeze(n) boolean createquery
This flag previews the nodes that will be frozen without actually freezing them.
unfreeze(uf) boolean createquery
If this flag is enabled then the nodes being processed will have their frozen state turned off instead of on. All of the same filtering and propagating will be done when deciding which nodes to modify. In query mode this flag switches from returning the already-frozen nodes to returning the unfrozen nodes.
upstream(up) boolean createquery
If this flag is enabled then the frozen state will attempt to propagate upstream through the selected nodes. e.g. the param curves feeding into a frozen transform. Heuristics are applied to this propagation to ensure that upstream nodes that are still used by unfrozen nodes will stay unfrozen themselves.

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

import maya.cmds as cmds
# Set all selected nodes to be frozen
cmds.freeze()
# Result: ['node1', 'node2', 'node3']
# Set all nodes in the scene to be unfrozen
cmds.freeze( all=True, unfreeze=True )
# Result: ['node1', 'node2', 'node3', 'nodeAlreadyFrozen']