diff --git a/src/camera.rs b/src/camera.rs index 1ad754b..daaf74d 100644 --- a/src/camera.rs +++ b/src/camera.rs @@ -133,7 +133,8 @@ fn run_camera_controller( if actor.v[i].abs() < threshold { actor.v[i] = 0.0; } - else if (actor.v[i] < 0.0 && actor.v[i] + acceleration_total[i] > 0.0) || (actor.v[i] > 0.0 && actor.v[i] + acceleration_total[i] < 0.0) { + else if actor.v[i].signum() != (actor.v[i] + acceleration_total[i]).signum() { + // Overshoot actor.v[i] = 0.0; acceleration_total[i] = 0.0; }