The Muscle Rig object is the same set of handles and inner core found in a Muscle object.
When constructing a hybrid muscle (Franken Muscle), you can use the Muscle Rig object to draw an independent inner core for use with your arbitrary muscle geometry.
Use the muscle rig inputs to attach parents to the head and tail anchors of your inner core. You can do this manually by wiring objects directly into the inputs, or you can use the Attach To Bones shelf tool to attach multiple muscle rigs at once in your scene view.
For tool information see: Muscle Rig.
A tag used to identify this muscle asset within the muscle system. A muscle ID can be any string or numeral. The muscle ID is used by other muscle assets to group muscles that share a common muscle ID, or to keep muscle influence separate where muscle ID’s are unique. For example, the Muscle Deform SOP will treat muscles with a shared, common muscle ID as a single compound displacement tool. Also, Tissue Solver SOP will attach region constraints to muscles if the constraints and the muscles share common ID’s.
This parameter drives muscle flexing. A tension value of 0.0 will put the muscle in a fully relaxed state, while a value of 1.0 will be fully tensed. Other parameters like Contraction, Bias, Concentric Scale, and Tightness, can all be driven by varying this single Tension parameter.
Isometric Scaling is the scaling of a muscle along the axis of its inner core or fiber direction. This axial scaling has two controllable qualities: Bias and Contraction amount.
Driven by Tension (Bias)
If enabled, bias is driven by the Tension parameter. Use the High Tension Bias parameter to set this muscle characteristic when Tension is at its maximum.
Bias affects the relative localized scaling along the axis of a muscle. As a bias value approaches 0.0, a muscle will compress towards the head of the inner core. As the bias value approaches 1.0, the muscle will compress more towards the tail of the inner core. This parameter will affect the muscle bias directly and independent of the tension value.
High Tension Bias
When Driven by Tension is active, this parameter sets the bias response of the muscle when muscle tension is at its maximum.
Driven by Tension (Contraction)
If enabled, contraction is driven by the Tension parameter. Use the High Tension Contraction parameter to set this muscle characteristic when Tension is at its maximum.
The contraction scaling quality scales a muscle using compression from the ends of the inner core inwards towards the middle. As Contraction approaches 1.0, a muscle will squeeze along the axial direction of the inner core or muscle fiber. As the contraction value approaches 0.0, the axial scaling is more uniform along the length of the inner core.
High Tension Contraction
When Driven by Tension is active, this parameter sets the contraction response of the muscle when muscle tension is at its maximum.
Driven by Tension (Tightness)
If enabled, Tightness is driven by the Tension parameter. Use the High Tension Tightness parameter to set this muscle characteristic when Tension is at its maximum.
Tightness will affect muscles differently depending on whether you are using non-FEM or FEM simulated muscles. When muscles are solved using FEM dynamics, the tightness value is used to boost the overall scaling amount applied to the muscle fibers. This will have the effect of making a slack muscle go taught. When muscles are animated with a non-FEM workflow, the tightness value will mimic the effect of a tightening muscle by straightening any curvature along the inner core.
High Tension Tightness
When Driven by Tension is active, this parameter sets the tightness response of the muscle when muscle tension is at its maximum.
Concentric scale affects the scale of a muscle radially from the central inner core. Scaling of this type is only applicable in non-FEM workflows and meant to mimic the effects of volume preservation using a squash and stretch approach. In dynamics simulation, volume preservation will be calculated according to the physical properties of the muscle tissue, and therefore these settings will be ignored by the solver.
The radius xyz values affect the independent axis scaling applied to the muscle geometry during flexion. If you wish to keyframe the concentric scale of a muscle, using the Radius parameter will scale the muscle geometry without affecting the construction radius.
This dropdown menu determines how concentric scaling will be applied to your muscle.
Driven by Tension
The High and Low Tension Scale parameters will set the extents of the scaling in response to the Tension parameter. When Tension is low, the scaling will approach the Low Tension Scale value. When Tension is high, the scaling will approach the High Tension Scale value.
Driven by Length
The length of the muscle is used to scale the muscle radially. When the muscle’s length approaches the Compressed Length, the radial scale will approach the Compressed Scale. When the muscle’s length approaches the Stretched Length, the radial scale will approach the Stretched Scale.
The Radius scale values are interpreted directly without any additional squash or stretch.
If Concentric Scale is Driven by Tension…
High Tension Scale
Low Tension Scale
These are the scale factors mapped to the Tension amount. When Tension is 0.0, the Low Tension Scale is applied. When Tension is 1.0, the High Tension Scale is applied.
If Concentric Scale is Driven by Length…
These are the scale factors mapped to the length of the muscle. When the muscle is at or below the Compressed Length, the Compressed Scale is applied. When the muscle is at or above the Stretched Length, the Stretched Scale is applied.
These are the length minimum and maximum values that correspond to the Compressed Scale and Stretched Scale parameters respectively. When muscle rig’s length is at or below the compressed length, the Compressed Scale is applied. When the muscle rig’s length is at or above the stretched length, the Stretched Scale is applied.
This is the scale value applied to the muscle handles visible in the viewport. The handle scale is a visual aid only and does not affect any functional part of the muscle.
Keep Position When Parenting
When parenting relationships are changed, determine whether or not the world space position of the muscle will be maintained.
If any object node is wired to the output of this muscle asset, this parameter designates one of the muscle’s internal nodes as the source for the output transformation. For example, if this parameter is set to Center Handle, attaching a child node to the output of this muscle will transform the child along with the center handle.
Reset Handle Transforms
Activating this button will reset all transform values for a muscle and return the handles to their default positions.
The local translation and rotation values applied to each of the muscle handles.
Unlike a Muscle, a Muscle Rig does not have its own built-in geometry. However, a small subset of geometry parameters are required to be present here as they are pertinent to the interplay among this and other muscle assets.
The XYZ radii of the of a virtual muscle that is used to compute the radius of the inner core. This parameter exists to make internal nodes compatible with Muscles.
This ramp parameter represents the radius scaling of the muscle along its length. The final muscle is built using spheres that are a product of the profile shape, the construction radii, and the min/max radii.
The minimum value represented by the profile shape.
The maximum value represented by the profile shape.
A muscle’s geometry is first constructed using its build parameters in a static state, and then deformed into the "animated" or "live" position dictated by the muscle rig handles. An cage deformer is constructed by sweeping a cross section along the central curve of the inner core. This cage deformer is used to capture the muscle geometry in its rest state, or capture pose, and reshape the captured muscle according to the position and orientation of the muscle rig handles. The capture pose is subsequently an important aspect of a muscle’s rig configuration as the rest of the muscle system will rely on the existence of this pose as a base position for the initial orientation of muscle geometry.
Edit Capture Pose
When active, the musclerig will be displayed in its Capture Pose. When muscle rigs are displayed in the Capture Pose, they can easily be distinguished from "live" muscle rigs by their appearance. The muscle rig handles will change from the being "round" to being "boxy".
Handles can be manipulated in the viewport when this mode is active, however, each handle node will be transformed independently of its sibling nodes. This contrasts the "live" behavior of the handles where manipulating the end handles will affect the handles transformations on the interior.
Set Capture Pose
This button will record the muscle rig’s current position and construction parameters into the capture state and use the current appearance of the muscle as the Capture Pose.
Copy Capture Pose to Current Pose
This button does the inverse of the Set Capture Pose button. The stored capture state parameters are extracted from the Capture Pose. The current pose is set to match the capture pose.
The inner core is comprised of a central spline curve that is governed by the handle locations, and, a hull built by sweeping a cross section along this spline. The hull acts as a deformation cage that becomes part of a biharmonic capture mesh, which ultimately deforms the static rest state of a muscle into its animated, live position.
Rows and Columns
The number of cross sections used to construct the inner core.
The number of longitudinal divisions in the inner core.
The number of concentric rings in the cross section that is swept along the central spline. Sometimes, extra control points are needed to capture/deform thinner muscle geometry. This parameter may help in those situations by increasing the number of hull points along the interior of the capture cage.
Inner Copy Scale
The interior concentric rings are obtained by scaling the outer ring of the cross section by this amount.
The world space transformations of the muscle rig handles are stored here to record the Capture Pose. These parameters are not generally meant to be modified manually. Use the Set Capture Pose button to record the muscle rig handle transformations into these parameters.
These parameters are the recorded construction settings of the muscle to complete the definition of the Capture Pose. These parameters are not generally meant to be modified manually. Use the Set Capture Pose button to record the muscle construction settings into these parameters.
Jiggle applies overshoot and springback to the interior handle positions when the end handles are animated. Jiggle makes use of the Jiggle Chop to achieve this effect. See the Jiggle Chop for detailed help on these parameters. This effect is used primarily in non-FEM workflows. When using FEM dynamics, the physical properties of a muscle will determine the elasticity of a muscle’s behavior.
Enables the Jiggle.
How tight the jiggle is. Values closer to zero will cause the translate values to stray more from their original values. Values closer to one will result in very close solutions.
The amount of damping on jiggle oscillations. More damping reduces oscillating around abrupt changes in direction.
This controls how far away the point is allowed to stray from the original value before it starts being pulled towards it.
This controls a post-scaling effect on the values of the channel.
In order for the Jiggle Chop to achieve its effect, the input translation channels of the handle must be sampled over a time interval. By limiting the frame range of this interval to a minimum, a performance improvement can be obtained. This parameter specifies the number of seconds to add to the current time step to define the time interval.
Anchor regions are used to constrain a muscle and affix it to a parent transformation when simulated with dynamics.
In a conventional muscle setup, the end handles of a muscle rig each carry a constraint region that affects freedom of movement of the muscle geometry nearby. The scale of this constraint region will encapsulate more or less of the nearby muscle geometry. The geometry contained with the bounds of the anchor region will be constrained using the strength and damping parameters found on the containing asset of the muscle geometry.
Muscle Rig assets only supply the constraint regions with their corresponding radii.
Toggle this parameter to display the scale of the muscle anchor regions. The regions are located at either end handle. Once displayed, the regions can be selected and scaled interactively in the viewport.
Head / Tail Radius
The anchor region radius.
The initial spline curve of a muscle rig can be defined by a stroked polyline projected on a surface geometry. Pressing this button will enter into the Muscle Stroke State. If a projection geometry is already specified in the parameter below, then state is entered directly and a new stroke can be made. If the projection parameter is blank, you will be prompted to first select a projection surface before entering the state.
The surface geometry to apply strokes onto.
Use this toggle to control the display visibility of this muscle rig asset in the viewport.
Display toggle for the muscle rig handles.
Display toggle for the inner core.
Display inner Core as Wires
The inner core can optionally be displayed as a polygonal cage, or as flow lines from end to end.
Optionally display the inner core as the central spline only.
The color ramp applied to muscle geometry. This parameter is for compatibility with other muscle assets.