Go to: Synopsis. Return value. Keywords.
Related. Flags.
Python examples.
bakePartialHistory([allShapes=boolean], [postSmooth=boolean], [preCache=boolean], [preDeformers=boolean], [prePostDeformers=boolean])
Note: Strings representing object names and
arguments must be separated by commas. This is not depicted in the
synopsis.
bakePartialHistory is undoable, queryable, and editable.
This command is used to bake sections of the construction history
of a shape node when possible. A typical usage would be on a shape
that has both modelling operations and deformers in its history.
Using this command with the -prePostDeformers flag will bake the
modeling portions of the graph, so that only the deformers remain.
Note that not all modeling operations can be baked such that they
create exactly the same effect after baking. For example, imagine
the history contains a skinning operation followed by a smooth.
Before baking, the smooth operation is performed each time the skin
deforms, so it will smooth differently depending on the output of
the skin. When the smooth operation is baked into the skinning, the
skin will be reweighted based on the smooth points to attempt to
approximate the original behavior. However, the skin node does not
perform the smooth operation, it merely performs skinning with the
newly calculated weights and the result will not be identical to
before the bake. In general, modeling operations that occur before
deformers can be baked precisely. Those which occur after can only
be approximated. The -pre and -post flags allow you to control
whether only the operations before or after the deformers are
baked. When the command is used on an object with no deformers, the
entire history will be deleted.
string |
name of shapes that were baked |
In query mode, return type is based on queried flag.
deformers, history, bake
listHistory, skinCluster
allShapes, postSmooth, preCache, preDeformers, prePostDeformers
Long name (short name) |
Argument types |
Properties |
prePostDeformers(ppt) |
boolean |
  |
|
Specifies baking of all modeling operations in the history
whether they are before or after the deformers in the history. If
neither the -prePostDeformers nor the -preDeformers flag is
specified, prePostDeformers will be used as the default. In query
mode, returns a list of the nodes that will be baked. |
|
preDeformers(pre) |
boolean |
  |
|
Specifies baking of any modeling operations in the history that
occur before the deformers. In query mode, returns a list of the
nodes that will be baked. |
|
preCache(pc) |
boolean |
  |
|
Specifies baking of any history operations that occur before
the caching operation, including deformers. In query mode, returns
a list of the nodes that will be baked. |
|
allShapes(all) |
boolean |
  |
|
Specifies that the bake operation should be performed on all
shapes in the entire scene. By default, only selected objects are
baked. |
|
postSmooth(nps) |
boolean |
  |
|
Specifies whether or not a smoothing operation should be done
on skin vertices. This smoothing is only done on vertices that are
found to deviate largely from other vertex values. The default is
false. |
|
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 cylinder with history to use as an example
#
cyl = cmds.polyCylinder()
cmds.polySmooth()
cmds.cluster()
cmds.select( cyl[0],r=True )
cmds.polyTriangulate()
# query what will be baked
#
cmds.bakePartialHistory( cyl[0],query=True,prePostDeformers=True )
# perform the bake, baking history from before and after the
# deformer
#
cmds.bakePartialHistory( cyl[0],prePostDeformers=True )
# Bake the history before the geometry cache on the cylinder.
# To actually demo, add a geometry cache before executing the command
# below.
#
cmds.select( cyl[0],r=True )
cmds.bakePartialHistory( cyl[0],preCache=True )