This is a dependency node that calculates the necessary
NURBS surface to create a new muscle. Effectively, this node outputs
the current shape of the muscle based on input curves and other
attributes.
Below are descriptions
of the attributes in the cMuscleCreator node.
- Cross Sections
-
Sets the number of cross
sections on the final NURBS geometry muscle. Note this is different than
the actual cross section curves/controls. Cross section curves/controls
can only be set before creation in the Muscle Creator window.
- Sides
-
Sets the number of points
around the NURBS muscle.
- Tolerance
-
Sets the precision the
cMuscleCreator node uses internally for dealing with things like
muscle length. Defaults to 24. Higher values are more precise. You
do not have to change this value.
- Up Axis
-
Since the cMuscleCreator
node automatically drives the attach points, it needs to know how to
handle twisting/rotation. This attribute determines which cross
axis is used. If you observe problems with flipping, you can change this
axis to adjust the orientation of the controls.
Flat Cross Sections
Sets whether the cross
section curve points drive the surface based only on their X-Z locations,
or their 3D positions.
- on
-
The cross section curves,
even if modeled in 3D, only affect the muscle in a flat way.
- off
-
Moving a cross section
point along the length of the muscle also sculpts the muscle points
along its length.
- Show Controls
-
Turns the visibility
of the related controls for the muscle on and off.
- Show Rest Movers
-
Turns the visibility
of the related rest shapes for the muscle on and off.
- Show Squash Movers
-
Turns the visibility
of the related squash shapes for the muscle on and off.
- Show Stretch Movers
-
Turns the visibility
of the related stretch shapes for the muscle on and off.
- Gravity Strength
-
Each “Attach Rest” control
for the muscle has a gravity attribute to set how much each cross section
is affected by gravity. This attribute is a multiplier to make the
muscle move due to gravity.
- Gravity Jiggle
-
Causes the muscle to
move more in the direction of gravity when jiggle occurs.
- Gravity Cycle
-
Affects the cycle rate
of the muscle as it moves towards gravity to make it appear slower
at the top.
- GravityX/Y/Z
-
Set the direction of
gravity. Defaults to negative Y.
Based On
Sets how the muscle determines
what state it is in (rest, squash or stretch).
- length
-
Only the length of the
muscle (based on the attach controls) drives the state of the muscle.
- pose
-
Only the pose data set
(if you have stored poses using the Rest, Squash, Stretch buttons)
are used.
- pose or length
-
Length is used until
the pose buttons have been stored, then the pose data is used instead.
This is the default state.
Interp Mode
Sets how the muscle state
interpolates between the three states.
- linear
-
Gives linear interpolation.
This is the default.
- smooth-step
-
Gives a smoother interpolation
of the states.
- animCurve
-
Lets you adjust an Sq
and St curve using Maya’s Graph Editor to
set the rate at which the muscle state changes from rest to squash
or rest to stretch.
- Pose Uses
-
If you are using the
pose state of the muscle, (you have used the pose buttons rather
than length of the curve), this determines how the state is read.
The pose can be determined by the angle of the child bone to the
parent, the relative position, or both.
- Pose Read Axis
-
Sets which axis of the
bones to use for reading the pose.
- Pose Use Twist
-
Sets whether or not twisting
away from the pose state returns the muscle to the default state. Defaults
to off.
- Def Width Start/Def Width
End
-
The default distances
for the start/end locators of the muscle. These can be automatically
set using the Reset Width button in the Pose
section of the window. This information is used when autoWiden is
used.
- Len Default/Len Squash/Len
Stretch
-
Represent the distance
of the implied muscle curve based on the positions of the muscle attach
controls. When using “length” to determine the state of the muscle,
these values inform the muscle which state it is in.
- Auto Rotate
-
Sets the muscle controls
and attach curves so that the controls can automatically rotate
as needed.
- Auto Widen
-
Moving the original attach
points at either end of the muscle make the last span of the muscle stretch.
If you want to have the entire muscle widen or narrow based on this
distance, you can turn autoWiden up.
This causes the entire muscle to scale out if the start/end attach
points move.
- Dampen On Squash/Dampen
On Stretch
-
Cause muscle jiggle and
cycle to dampen as the muscle goes into a squash or stretch state
to help simulate tension in the muscle.
- Manual Sq St
-
An animation control
that lets you manually scale the muscle into its squash or stretch
cross sections regardless of the pose it is in. Negative values
cause it to stretch, positive values cause it to squash.
- Linear Auto Squash/Linear
Auto Stretch
-
Even if you have set
or adjusted the attach positions for the muscle, you can override
your settings with these attributes. This causes the muscle cross
sections to go into a linear position from start to end as the state
of the muscle hits the squash or stretch pose.
- User Scale
-
This attribute can be
connected into the main scaling node of your rig to support a rig
scale on the muscles.
- Reset Frame
-
Sets the frame at which
jiggle starts. Jiggle is disabled at any frame on or before this
value. You can animate this with a stepped key so that if you are
animating multiple shots in one Maya file and the character moves
suddenly, you do not get unwanted jiggle.