From e3fb4f71350a448eb5fa08b7b134d219d082d2c3 Mon Sep 17 00:00:00 2001 From: Jan Nils Ferner Date: Sat, 28 Jan 2023 00:30:20 +0100 Subject: Move main ground detection duty to snapping to ground --- src/control/character_controller.rs | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'src') diff --git a/src/control/character_controller.rs b/src/control/character_controller.rs index 438eab1..40338bb 100644 --- a/src/control/character_controller.rs +++ b/src/control/character_controller.rs @@ -193,8 +193,8 @@ impl KinematicCharacterController { let mut translation_remaining = desired_translation; - // Check if we are grounded at the initial position. - let grounded_at_starting_pos = self.detect_grounded_status_and_apply_friction( + // Apply friction + self.detect_grounded_status_and_apply_friction( dt, bodies, colliders, @@ -299,18 +299,17 @@ impl KinematicCharacterController { } // If needed, and if we are not already grounded, snap to the ground. - if grounded_at_starting_pos { - self.snap_to_ground( - bodies, - colliders, - queries, - character_shape, - &(Translation::from(result.translation) * character_pos), - &dims, - filter, - &mut result, - ); - } + self.snap_to_ground( + bodies, + colliders, + queries, + character_shape, + &(Translation::from(result.translation) * character_pos), + &dims, + filter, + &mut result, + ); + // Return the result. result -- cgit