Knowledge Base
HomeProductsCommunityReviewsSocial
Toolkit for Unity
Toolkit for Unity
  • Welcome
  • Physics
    • Introduction
    • Ballistics
      • API.Ballistics
      • Ballistics Aim
      • Ballistic Path
      • Ballistic Path Follow
      • Ballistic Path Line Render
      • Ballistics Data
      • Ballistic Targeting
      • Trick Shot
      • Trick Shot Constant Acceleration
      • Trick Shot Line
    • Verlet (Physics Transform)
      • Scaled Animation Curve
      • Verlet Transform Node
      • Verlet Transforms
      • Verlet Transform Tree
      • Verlet Transform Tree Settings
    • Old KB
  • User eXperience
    • Introduction
    • Old KB
Powered by GitBook
On this page
  • Public Fields
  • Constant Acceleration
  • Drag
  • Damping
  • Elasticity
  • Stiffness
  • Collision Layers
  • Collision
  • Angle
  • Example Usage
  • Creating a Settings Asset
  • Curve Tuning Example
  1. Physics
  2. Verlet (Physics Transform)

Verlet Transform Tree Settings

PreviousVerlet Transform TreeNextIntroduction

Last updated 2 days ago

A ScriptableObject asset defining physics parameters and limiter curves for a VerletTransformTree. Used to configure per-depth simulation behaviour such as drag, damping, and collision influence.

The VerletTransformTreeSettings asset allows designers to fine-tune the physics behaviour of a transform hierarchy using a set of scaled curves. These curves are sampled per node based on relative depth, enabling smooth transitions from root to tip in drag, elasticity, angle limits, and collision responses.


Public Fields

Constant Acceleration

public float3 constantAcceleration = new Vector3(0, -9.81f, 0);

A constant force applied to all nodes each simulation step. Typically represents gravity.


Drag

public ScaledAnimationCurve drag;

Controls how much velocity is reduced per step. A higher drag value causes the node to lose energy more quickly.


Damping

public ScaledAnimationCurve damping;

Applies smoothing to motion between nodes, helping prevent jitter and overshooting.


Elasticity

public ScaledAnimationCurve elasticity;

Defines how much a node tries to return to its rest position. Higher values increase spring-like behaviour.


Stiffness

public ScaledAnimationCurve stiffness;

Controls how rigidly nodes maintain their length from parent nodes. High stiffness enforces fixed bone lengths.


Collision Layers

public LayerMask collisionLayers = 0;

Defines which layers are checked during node collision tests. Used when collision response is enabled via the collision curve.


Collision

public ScaledAnimationCurve collision;

Controls how strongly each node responds to collisions. Typically increases toward tips of chains or leaves.


Angle

public ScaledAnimationCurve angle;

Limits the angle between a node’s forward vector and its rest orientation. Useful for constraining extreme bending.


Example Usage

Creating a Settings Asset

  1. Right-click in the Project window

  2. Select Create → Variables → Verlet Transform Tree Settings

  3. Assign the asset to a VerletTransformTree component


Curve Tuning Example

  • Set drag to increase with depth to dampen motion further from the root

  • Set collision to 0 at the root and 1 at the tips to enable impact response only on free ends

  • Set angle curve to gently enforce pose limits on mid-chain nodes