Go to: Related nodes. Attributes.

This node takes geometry as input and deforms it based on pairs of target shapes and weight values, to produce a new shape that is the specified blending of the input shapes.

Node nameParentsClassificationMFn typeCompatible function sets
blendShapeweightGeometryFilterdeformerkBlendShapekBase
kNamedObject
kDependencyNode
kGeometryFilt
kWeightGeometryFilt
kBlendShape

Related nodes

lattice, cluster, jointCluster, nonLinear, skinCluster, boneLattice, wrap, wire, ffd, jointFfd, sculpt, jointLattice, flexorShape, deformFunc, deformSquash, deformTwist, deformBend, deformWave, deformFlare, deformSine, baseLattice, clusterHandle

Attributes (79)

The following quick index only shows top-level attributes (too many attributes to show them all): baseOrigin (3), cacheSetup, deformationOrder, icon, inbetweenInfoGroup (8), inputTarget (31), localVertexFrame, midLayerId, midLayerParent, nextNode, nextTarget, offsetDeformer (3), origin, paintWeights, parallelBlender, parentDirectory, supportNegativeWeights, symmetryEdge, targetDirectory (6), targetOrigin (3), targetParentVisibility, targetVisibility, topologyCheck, useTargetCompWeights, weight

Long name (short name)TypeDefaultFlags
baseOrigin (bo) double3outputinputconnectablestorable
When the origin flag is userDefined, the origin of the base shape is computed with respect to this point.
baseOriginX (bx) distance (double)0.0cmoutputinputconnectablestorable
X position of baseOrigin.
baseOriginY (by) distance (double)0.0cmoutputinputconnectablestorable
Y position of baseOrigin.
baseOriginZ (bz) distance (double)0.0cmoutputinputconnectablestorable
Z position of baseOrigin.
cacheSetup (csp) ctypeDatan/aconnectablehidden
Internal data structure, do not change
deformationOrder (dfo) enum0outputinputconnectablestorable
kPreDeformation: The blendshape is created before any exsiting deformers. kPostDeformation: The blendshape is created before the mesh shape.
icon (icn) stringnullptrarrayinputconnectablestorable
The name of a file containing an icon per target shape (not currently supported).
inputTarget (it) compoundn/aarrayoutputinputconnectablestorable
Bundled list of target info for a shape that is being deformed. The array index of this attribute corresponds to the array index of the input attribute, meaning that this target info is used to deform a given input shape.
inputTargetGroup (itg) compoundn/aarrayoutputinputconnectablestorable
Bundled group of target information for a particular target weight. The array index of this attribute corresponds to the array index of the weight attribute, meaning that the corresponding weight value controls this target.
inputTargetItem (iti) compoundn/aarrayoutputinputconnectablestorable
Collection of all targets in a sequential target chain. The array index of this attribute is used to control which two target items we are interpolating between with the relationship: index = wt * 1000 + 5000. Thus a weight of 1 corresponds to the index 6000. An inbetween placed at a weight of 0.5 would be at the index 5500.
inputGeomTarget (igt) geometrynullptroutputinputconnectable
The target geometry input
inputRelativePointsTarget (irp) pointArraynullptroutputinputconnectablestorable
Relative delta values for points in a target geometry.
inputRelativeComponentsTarget (irc) componentListnullptroutputinputconnectablestorable
Component list for points with delta relative to hero target in a target geometry.
inputPointsTarget (ipt) pointArraynullptroutputinputconnectablestorable
Delta values for points in a target geometry.
inputComponentsTarget (ict) componentListnullptroutputinputconnectablestorable
Component list for points in a target geometry.
targetWeights (tw) float1.0arrayoutputinputconnectablestorable
The weights themselves, in the same order as the components deformed by the deformation.
normalizationId (nid) integer0outputinputconnectablestorable
The ID of the normalization group that includes this target, or zero for no normalization.
postDeformersMode (pdm) enum0outputinputconnectablestorable
kNone: The normal case, delta is not encoded neither tangent space nor transform space. kTangentSpace: The delta will become relative to the tangent space of the surface, when the mesh rotates the target will still lock "correct" in that the delta is relative to the movement of the surface. kTransformSpace: The delta will become relative to transform space.
targetBindMatrix (bmx) matrixidentityoutputinputconnectablestorable
The inclusive matrix inverse of the driving transform at the time of bind.
targetMatrix (tmx) matrixidentityoutputinputconnectablestorable
Driving transforms matrix.
baseWeights (bw) float1.0arrayoutputinputconnectablestorablehidden
The weights associated with the base shape, in the same order as the components deformed by the deformation.
normalizationGroup (ng) compoundn/aarrayoutputinputconnectablestorable
Bundled group of normalization information for a particular normalization group ID.
normalizationUseWeights (nuw) boolfalseoutputinputconnectablestorable
Controls whether this normalization group uses the normalizationWeights in the normalization calculation.
normalizationWeights (nw) float1.0arrayoutputinputconnectablestorable
The normalization weights, in the same order as the components deformed by the deformation.
paintTargetWeights (pwt) float1.0arrayoutputinputconnectablehidden
Temporarily stores the weights for one of the targets during painting.
paintTargetIndex (pti) integer0outputinputconnectablehidden
Tracks which target is being painted. The value corresponds to the index of the inputTargetGroup or normalizationGroup attribute. If value < 0, normalization group (-value) is indicated.
sculptTargetIndex (sti) integer-1outputinputconnectablestorablehidden
Tracks which target is being sculpted.
sculptInbetweenWeight (siw) double-1.0outputinputconnectablestorablehidden
Tracks which inbetween target is being sculpted.
sculptTargetTweaks (stt) compoundn/aoutputinputconnectablehidden
Temporarily stores tweak values for input targets
vertex (vt) float3arrayoutputinputconnectable
amounts to move the vertices
xVertex (vx) distance (float)0.0cmoutputinputconnectablekeyable
X value of a vertex
yVertex (vy) distance (float)0.0cmoutputinputconnectablekeyable
Y value of a vertex
zVertex (vz) distance (float)0.0cmoutputinputconnectablekeyable
Z value of a vertex
controlPoints (cp) double3arrayoutputinputconnectable
amounts to move the control points
xValue (xv) distance (double)0.0cmoutputinputconnectablekeyable
X value of a control point
yValue (yv) distance (double)0.0cmoutputinputconnectablekeyable
Y value of a control point
zValue (zv) distance (double)0.0cmoutputinputconnectablekeyable
Z value of a control point
deformMatrix (dmx) 4dDblMatrixArraynullptroutputinputhidden
Temporarily stores matrix for inverting delta
deformMatrixModified (dmxm) boolfalseoutputinputhidden
Mark the deform matrix has been modified or not
inbetweenInfoGroup (ibig) compoundn/aarrayoutputinputconnectablestorablehidden
The array of inbetween target group
inbetweenInfo (ibi) compoundn/aarrayoutputinputconnectablestorablehidden
The array of inbetween target item
inbetweenTargetType (ibtt) enum0outputinputstorable
Describe the inbetween target item is relative to hero target or not. Valid values are 0 = "absolute", 1 = "relative".
inbetweenTargetName (ibtn) stringTmultiSharedObject::create<TdataString>"IB"outputinputstorable
The name of inbetween target item
interpolation (itp) enum0outputinputconnectablestorable
The type of interpolation
interpolationCurve (itc) float2arrayoutputinputstorable
The control points array of interpolation curve.
curvePosition (cvp) float0outputinputstorable
The position of control point in interpolation curve.
curveValue (cvv) float0.5outputinputstorable
The value of control point in interpolation curve.
inbetweenVisibility (ibvs) booltrueoutputinputstorable
Visibility of the inbetween target
localVertexFrame (lvf) booltrueoutputinputconnectablestorablehidden
Use local vertex frame instead of the maya tangents for tangent space target.
midLayerId (mlid) integerINT_MINoutputinputstorablehidden
The ID to identify this node in shape editor midlayer
midLayerParent (mlpr) integer-1outputinputconnectablestorable
Parent directory of the node in the midLayer
nextNode (nxnd) integerINT_MINoutputinput
Next node or directory in the midLayer directory
nextTarget (nxtg) integerINT_MINarrayoutputinputhidden
Next target or directory in the directory
offsetDeformer (ofm) double3outputinputhidden
Temp offset for calculating deform matrix
offsetX (ofx) distance (double)0.0cmoutputinputconnectablestorable
Offset X value
offsetY (ofy) distance (double)0.0cmoutputinputconnectablestorable
Offset Y value
offsetZ (ofz) distance (double)0.0cmoutputinputconnectablestorable
Offset Z value
origin (or) enum1outputinputconnectablestorable
Specifies the space in which point deltas are calculated. Valid values are 0 = "world", 1 = "local", 2 = "user".
paintWeights (ptw) doubleArrayemptyoutputinputconnectablehidden
Legacy attribute left in to provide file format compatibility with Maya 2012 Gold/Hotfix 1.
parallelBlender (pb) bool0outputinputstorablehidden
This is true if the blendShape is used to blend parallel deformations.
parentDirectory (pndr) integer-1arrayoutputinputstorablehidden
Parent directory of the target
supportNegativeWeights (sn) bool0outputinputstorablehidden
Set to true if weights below -5 will be used in a target group. When this is off, blending between in-between shapes only supports weights >= -5.0. Enabling this attribute allows interpolation to in-betweens at numbers less than -5.0.
symmetryEdge (syme) stringTmultiSharedObject::create<TdataString>""arrayoutputinputstorable
The symmetry edge of each input geometry
targetDirectory (tgdt) compoundn/aarrayoutputinputconnectablestorablehidden
The array of shape editor target directories
childIndices (cid) intArrayemptyoutputinputstorable
Child directory and target indices of the directory
parentIndex (pnid) integer0outputinputstorable
Parent directory of the directory
directoryName (dtn) stringTmultiSharedObject::create<TdataString>"Group"outputinputstorable
The directory name
directoryVisibility (dvs) booltrueoutputinputstorable
Visibility of the directory, or visibility of the blendShape node if multiIndex of targetDirectory is 0.
directoryParentVisibility (dpvs) booltrueoutputinputconnectable
Visibility of the directory parents, or visibility of the blendShape parents if multiIndex of targetDirectory is 0.
directoryWeight (dwgh) float1outputinputconnectablestorablekeyable
Weight of the directory
targetOrigin (to) double3outputinputconnectablestorable
When the origin flag is userDefined, the origin of the target is computed with respect to this point.
targetOriginX (tx) distance (double)0.0cmoutputinputconnectablestorable
X position of targetOrigin.
targetOriginY (ty) distance (double)0.0cmoutputinputconnectablestorable
Y position of targetOrigin.
targetOriginZ (tz) distance (double)0.0cmoutputinputconnectablestorable
Z position of targetOrigin.
targetParentVisibility (tpvs) booltruearrayoutputinputstorable
Visibility of the target parents
targetVisibility (tgvs) booltruearrayoutputinputstorable
Visibility of the target
topologyCheck (tc) booltrueoutputinputconnectablestorable
Should the deformation check to see if the input topologies match?
useTargetCompWeights (itcw) booltrueoutputinputhidden
This attribute is used internally to enable/disable the use of the per target component weights during evaluation
weight (w) float0arrayoutputinputconnectablestorablekeyable
The array of weight values (one per target shape)