diff options
| author | Sébastien Crozet <developer@crozet.re> | 2022-03-06 22:45:28 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-06 22:45:28 +0100 |
| commit | 7703333781ccb19e533c25eb53f19a01e51858f7 (patch) | |
| tree | b4eb7fa9817bcf8aab15f146f2606edc6bc91651 | |
| parent | 8acacd39c7d4cb382464558086c3d33718b03abe (diff) | |
| parent | 8c5f88738dd9be9ca3458d610c34d39a85956d23 (diff) | |
| download | rapier-7703333781ccb19e533c25eb53f19a01e51858f7.tar.gz rapier-7703333781ccb19e533c25eb53f19a01e51858f7.tar.bz2 rapier-7703333781ccb19e533c25eb53f19a01e51858f7.zip | |
Merge pull request #286 from funmaker/sleep_fix
Fix rigid bodies falling asleep when linear/angular threshold is negative
| -rw-r--r-- | src/dynamics/island_manager.rs | 4 |
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 { |
