aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFun Maker <funmaker95@gmail.com>2022-01-31 20:23:42 +0100
committerFun Maker <funmaker95@gmail.com>2022-01-31 20:23:42 +0100
commit8c5f88738dd9be9ca3458d610c34d39a85956d23 (patch)
tree6e291c197c7ab7bc154e760c25917b09aeb9979b /src
parentce3cf553c27d3fad6302dff7d196fccb953c2c33 (diff)
downloadrapier-8c5f88738dd9be9ca3458d610c34d39a85956d23.tar.gz
rapier-8c5f88738dd9be9ca3458d610c34d39a85956d23.tar.bz2
rapier-8c5f88738dd9be9ca3458d610c34d39a85956d23.zip
Fix rigid bodies falling asleep when linear/angular threshold is negative.
Diffstat (limited to 'src')
-rw-r--r--src/dynamics/island_manager.rs4
1 files changed, 2 insertions, 2 deletions
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 {