Table of contents
- Fields
- Bones
- Root (Transform)
- Exclusions (List of Transforms)
- End Length (Float) - Default: 0
- End Offset (Vector3) - Default: 0, 0, 0
- Simulation
- Update Rate (Float) - Default: 60
- Update Mode (Enum) - Default: Normal
- Blend Weight (Float) - Default: 1
- Visibility Culling
- Physics
- Dampening (Float) - Default: 0.1
- Dampening Curve (AnimationCurve)
- Elasticity (Float) - Default: 0.1
- Elasticity Curve (AnimationCurve)
- Stiffness (Float) - Default: 0.1
- Stiffness Curve (AnimationCurve)
- Inertia (Float) - Default: 0.1
- Inertia Curve (AnimationCurve)
- Max Angle (Float) - Default: 180
- Max Angle Curve (AnimationCurve)
- Gravity (Vector3) - Default: 0, 0, 0
- Force (Vector3) - Default: 0, 0, 0
- Collision
- Methods
Fields
Bones
Root (Transform)
The root bone for the simulation.
Exclusions (List of Transforms)
Bones that should be excluded from the simulation. They will inherit the motion of their parent bone.
End Length (Float) - Default: 0
Extra length at the end of the chain, used for colliders.
End Offset (Vector3) - Default: 0, 0, 0
Directional extra length at the end of the chain, used for colliders.
Simulation
Update Rate (Float) - Default: 60
How many times per second the simulation updates.
Update Mode (Enum) - Default: Normal
Changes how the simulation updates.
Normal
Standard updates.
FixedUpdate
Runs on FixedUpdate instead, useful for animating bones connected to the simulated chain.
UnscaledTime
Unaffected by timescale.
Blend Weight (Float) - Default: 1
Blending between animation and simulation. Higher values shift the weighting towards the simulation, lower values towards animation.
Visibility Culling
Enable Culling (Bool) - Default: False
Whether to stop the simulation based on if the main meshes are visible or not.
Visible Renderers (List of SkinnedMeshRenderers)
The renderers used for the culling. If these aren't visible, the simulation stops.
If you have LODs, these should be your primary LODs, the highest quality ones. The simulation will stop if these LODs are not visible.
Physics
Dampening (Float) - Default: 0.1
Controls how quickly the bone's motion loses energy. Higher values make the simulation settle faster and reduce swinging and oscillation.
Dampening Curve (AnimationCurve)
Controls the dampening based on the bone's position along the chain.
Elasticity (Float) - Default: 0.1
Controls how strongly bones are pulled back toward their original position. Higher values make the chain resist being displaced and return to its resting pose more strongly.
Elasticity Curve (AnimationCurve)
Controls the elasticity based on the bone's position along the chain.
Stiffness (Float) - Default: 0.1
Controls how strongly each bone attempts to maintain its original direction relative to its parent. Higher values make the chain more rigid and less flexible.
Stiffness Curve (AnimationCurve)
Controls the stiffness based on the bone's position along the chain.
Inertia (Float) - Default: 0.1
Controls how much the bones resist changes in their current motion. Higher values make the chain feel heavier and more sluggish when the parent moves.
Inertia Curve (AnimationCurve)
Controls the inertia based on the bone's position along the chain.
Max Angle (Float) - Default: 180
The maximum angle a bone is allowed to rotate away from its resting direction. A value of 0 prevents the bone from rotating, while 180 allows it to rotate freely.
Max Angle Curve (AnimationCurve)
Controls the maximum angle based on the bone's position along the chain.
Gravity (Vector3) - Default: 0, 0, 0
A constant force applied to the simulation in world space. This is used to make bones naturally fall or hang in a particular direction.
Force (Vector3) - Default: 0, 0, 0
A constant force applied to the simulation in world space. Unlike Gravity, Force is intended for arbitrary directional forces.
Collision
Collision Radius (Float) - Default: 0
The radius around the bone for collider interactions.
Collision Radius Curve (AnimationCurve)
Controls the collision radius based on the bone's position along the chain.
Colliders (List of SecondaryMotionColliders)
The colliders that the chain will interact with.
Methods
SetWeight(float weight)
Should be used for changing Blend Weight in runtime.