Remove overzealous ground-snapping

This commit is contained in:
Jan Hohenheim
2023-02-04 19:41:01 +01:00
parent 6c5713aa0c
commit b461d028df

View File

@@ -193,7 +193,7 @@ impl KinematicCharacterController {
let mut translation_remaining = desired_translation; let mut translation_remaining = desired_translation;
self.detect_grounded_status_and_apply_friction( let grounded_at_starting_pos = self.detect_grounded_status_and_apply_friction(
dt, dt,
bodies, bodies,
colliders, colliders,
@@ -294,18 +294,19 @@ impl KinematicCharacterController {
break; break;
} }
} }
// If needed, and if we are not already grounded, snap to the ground.
// If needed, snap to the ground. if grounded_at_starting_pos {
self.snap_to_ground( self.snap_to_ground(
bodies, bodies,
colliders, colliders,
queries, queries,
character_shape, character_shape,
&(Translation::from(result.translation) * character_pos), &(Translation::from(result.translation) * character_pos),
&dims, &dims,
filter, filter,
&mut result, &mut result,
); );
}
// Return the result. // Return the result.
result result