Go to: Related nodes. Attributes.

A skinCluster node allows you to associate a percentage per joint/transform for each CV in the geometry. In Maya, this creates the effect known as smooth skinning.

The weights can be queried and edited using the skinPercent command, the skin weight painting tool, or the component editor.

Node nameParentsClassificationMFn typeCompatible function sets
skinClustergeometryFilterdeformerkSkinClusterFilterkBase
kNamedObject
kDependencyNode
kGeometryFilt
kSkinClusterFilter

Related nodes

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

Attributes (34)

baseDirty, basePoints, bindMethod, bindPose, bindPreMatrix, bindVolume, blendWeights, deformUserNormals, driverPoints, dropoff, dropoffRate, geomMatrix, heatmapFalloff, influenceColor, influenceColorB, influenceColorG, influenceColorR, lockWeights, maintainMaxInfluences, matrix, maxInfluences, normalizeWeights, nurbsSamples, paintArrDirty, paintTrans, paintWeights, skinningMethod, smoothness, useComponents, useComponentsMatrix, weightDistribution, weightList, weights, wtDrty

Long name (short name)TypeDefaultFlags
skinningMethod (skm) enum0outputinputconnectablestorablekeyable
An Enum to set the algorithm method used. Classical is the linear vector blended skinning. Dual quaternion uses a joint space non-linear blend. Blended use a weight set to linear interpolate between them.
blendWeights (bw) double0.0arrayoutputinputconnectablestorable
The blend weights per vertex for blending between dual quaternion and classic skinning.
weightList (wl) compoundn/aarrayoutputinputconnectablestorable
Bundle of weights for each CV
weights (w) double0.0arrayoutputinputconnectablestorablekeyable
weights for each target
bindPreMatrix (pm) matrixidentityarrayoutputinputconnectablestorable
The inclusive matrix inverse of the driving transform at the time of bind
geomMatrix (gm) matrixidentityoutputinputconnectablestorablehidden
The inclusive matrix of the geometry path at the time of the bound
matrix (ma) matrixidentityarrayoutputinputconnectablestorable
Driving transforms array
dropoffRate (dr) double4.0outputinputconnectable
Old dropoff rate, kept around temporarily for compatibility purposes
dropoff (dpf) double4.0arrayoutputinputconnectablestorable
Rate of weight value dropoff per influence object (1 for linear, 2 for quadratic, etc. )
smoothness (smt) double0.0arrayoutputinputconnectablestorable
Controls how smooth the deformation resulting from the a poly mesh influence object will be
lockWeights (lw) boolfalsearrayoutputinputconnectablestorable
Indicates whether the weights of the corresponding influence are allowed to change
maintainMaxInfluences (mmi) boolfalseoutputinputconnectablestorable
When true, the skinCluster will not allow a vertex to be weighted to more then "maxInfluences" transforms, as defined by the maxInfluences attribute.

When this attribute is switched on, the skinCluster will not immediately reassign all of its skin weights. Instead, the skinCluster will begin enforcing the max influences as weights are edited. Alternatively, the attribute editor "Update Weights" button or the corresponding skinCluster command can be used to reassign all of the weights at once.

Note that locked influences take precedence over max influences. Therefore, if more the maximum number of influences are locked and weighted, the weights are over-constrained. In this case, the max influences cannot be maintained unless you remove some of the locks on the influences.

maxInfluences (mi) integer2outputinputconnectablestorable
When the related attribute 'obeyMaxInfluences' is true, this attribute specifies the maximum number of transforms that can influence a point. When the related attribute 'obeyMaxInfluences' is false, this attribute specifies the number of influences at the time the skin was bound.
bindMethod (bm) integer1outputinputconnectablestorable
Stores the method by which the skinCluster was bound where 1 = ClosestDistance, 2 = Closest Joint, 3 = Heat Map Diffusion
driverPoints (drp) geometryNULLarrayoutputinputconnectablestorable
The world space coordinates of the driver influence geometry
basePoints (bsp) geometryNULLarrayoutputinputconnectablestorable
The world space coordinates of the base influence geometry
baseDirty (bsd) Messagen/aoutputinputconnectable
Set to dirty when the world space coordinates of one of the base influence geometries change
paintWeights (ptw) doubleArrayemptyoutputinputconnectable
Temporarily stores the weights for one of the influences
paintTrans (ptt) Messagen/aoutputinputconnectable
Identifies the influence whose weights are used in the paintWeights attribute
paintArrDirty (pad) Messagen/aoutputinputconnectable
Gets marked dirty when the values in paintWeights change
useComponents (uc) bool0outputinputconnectablestorablekeyable
If set to true then moving the components of the influence objects will affect the skin deformation
nurbsSamples (ns) integer10arrayoutputinputconnectablestorable
The number of samples to be taken on influence curves/surfaces
useComponentsMatrix (ucm) boolfalseoutputinputconnectablestorable
This attribute is obsolete and is unused in versions past Maya 8.0. This attribute is only used when the useComponents attribute is true. When this attribute is true, we use the new algorithm for component-type influence objects so that the matrix of the influence object is taken into account in addition to the tweaks on any influence components. This means that the joints and the influence object can be scaled as a group without modifying the deformation behavior. This attribute is false by default in order to not change any existing scenes.
normalizeWeights (nw) enumtrueoutputinputconnectablestorablekeyable
When this attribute is interactive, any time that the weight of a point is modified, all of the other weights on the point are changed such that the total of all the weights for the point sum to 1.0. When this attribute is none, the weights are not normalized, and will not sum to 1.0 unless the user specifically makes them sum to 1.0. Note: a "false" value for -nrm/-normalize flag on the skinPercent command overrides this attribute value. However, a "true" value for the -nrm/-normalize flag on the skinPercent command does not override this attribute value.
weightDistribution (wd) enum0outputinputconnectablestorable
When normalizeWeights is in effect, and a weight has been reduced or removed altogether, the sum is usually brought back up to 1.0 by increasing the contributions of the other non-zero weights. However, if there are no other non-zero weights, the algorithm has to create some weights from thin air and distribute the residual weight between them. This attribute controls how that is done. "Distance" - the algorithm calculates weights from the world-space distances from the component to the transforms. "Neighbors" - the algorithm calculates weights from the weights on the neighboring components. Note "Neighbors" only works for polygon meshes - other shapes always use "Distance".
deformUserNormals (dun) booltrueoutputinputconnectablestorablekeyable
If set to true then the deformation will affect user normals
wtDrty (wtd) Messagen/aoutputinputconnectable
Gets marked dirty when the point weights need to be recomputed
bindPose (bp) Messagen/aoutputinputconnectablehidden
The bind pose will be connected to this attribute to indicate that it is the bind pose for the skin.
bindVolume (bc) Messagen/aoutputinputconnectablehidden
The bind volumes will be connected to this attribute to indicate that it is the initial binding volumes for the skin.
heatmapFalloff (hmf) double0.0outputinputconnectablestorablehidden
This attribute is only relevant when skin was bound using the heatmap method. Stores the heatmap falloff value because weights can be updated through the AE.
influenceColor (ifcl) float3arrayoutputinputconnectablestorablehidden
the skin cluster to the inflence color
influenceColorR (ifcr) float0.0outputinputconnectablestorable
The red component of influence object color.
influenceColorG (ifcg) float0.0outputinputconnectablestorable
The green component of influence object color.
influenceColorB (ifcb) float0.0outputinputconnectablestorable
The blue component of influence object color.