From 8c5f88738dd9be9ca3458d610c34d39a85956d23 Mon Sep 17 00:00:00 2001 From: Fun Maker Date: Mon, 31 Jan 2022 20:23:42 +0100 Subject: Fix rigid bodies falling asleep when linear/angular threshold is negative. --- src/dynamics/island_manager.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/dynamics/island_manager.rs b/src/dynamics/island_manager.rs index 53f803d..631cf7a 100644 --- a/src/dynamics/island_manager.rs +++ b/src/dynamics/island_manager.rs @@ -352,8 +352,8 @@ impl IslandManager { } fn update_energy(activation: &mut RigidBodyActivation, sq_linvel: Real, sq_angvel: Real, dt: Real) { - if sq_linvel < activation.linear_threshold * activation.linear_threshold - && sq_angvel < activation.angular_threshold * activation.angular_threshold + if sq_linvel < activation.linear_threshold * activation.linear_threshold.abs() + && sq_angvel < activation.angular_threshold * activation.angular_threshold.abs() { activation.time_since_can_sleep += dt; } else { -- cgit