Guides:Constraint dampening: Difference between revisions

From VRChat Wiki
Patroll (talk | contribs)
Put image in thumb
Hackebein (talk | contribs)
m Manual: fix list
 
Line 13: Line 13:
[[File:Constraint dampening editor.webp|thumb|Editor setup example]]
[[File:Constraint dampening editor.webp|thumb|Editor setup example]]


1. Add the GameObject with the constraint as one of the sources in the Constraint component, and set its weight to 1.   
# Add the GameObject with the constraint as one of the sources in the Constraint component, and set its weight to 1.   
2. Use a second source for the target position
# Use a second source for the target position


===Automated===
===Automated===

Latest revision as of 13:45, 30 April 2025

V · ECommunity-written content
The following was created by the community. It may contain material not directly endorsed by the VRChat team. To learn more, consider reading Contributing to the VRChat Wiki.
Example effect of dampening

Constraint dampening, or self-referencing constraints, allows a constraint to follow its source gradually instead of snapping instantly. It’s most commonly used on avatars, but works in worlds too. The main constraint types are Parent, Position, Rotation, and Scale constraints. Keep weight% of source. 0 (0%) is an instant update to target, 0.2 (20%) - 0.3 (30%) is a good value to smooth out network updates.

The speed toward the target depends on:

  • Current distance to the target (larger gap ⇒ faster)
  • Frame rate (more frames per second ⇒ faster)
  • Damp weight (lower damp ⇒ faster)

Setup

Manual

Editor setup example
  1. Add the GameObject with the constraint as one of the sources in the Constraint component, and set its weight to 1.
  2. Use a second source for the target position

Automated

The VPM package from VRLabs automates this process. After adding it to your hierarchy, unpack the package and move the target object to its desired position.


Resources