Skip to main content

rigid_body_damping

Damping lets you slow down a rigid-body automatically. This can be used to achieve a wide variety of effects like fake air friction. Each rigid-body is given a linear damping coefficient (affecting its linear velocity) and an angular damping coefficient (affecting its angular velocity). Larger values of the damping coefficients lead to a stronger slow-downs. Their default values are 0.0 (no damping at all).

This damping coefficients can be set when the rigid-body is created or after its creation:

/* Set damping when the rigid-body bundle is created. */
commands.spawn(RigidBody::Dynamic).insert(Damping {
linear_damping: 0.5,
angular_damping: 1.0,
});
/* Set damping inside of a system. */
fn modify_body_damping(mut dampings: Query<&mut Damping>) {
for mut rb_damping in dampings.iter_mut() {
rb_damping.linear_damping = 0.5;
rb_damping.angular_damping = 1.0;
}
}