aboutsummaryrefslogtreecommitdiff
path: root/src/control
diff options
context:
space:
mode:
Diffstat (limited to 'src/control')
-rw-r--r--src/control/character_controller.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/control/character_controller.rs b/src/control/character_controller.rs
index 1b5a792..ec0e04e 100644
--- a/src/control/character_controller.rs
+++ b/src/control/character_controller.rs
@@ -328,20 +328,20 @@ impl KinematicCharacterController {
result: &mut EffectiveCharacterMovement,
) -> Option<(ColliderHandle, TOI)> {
if let Some(snap_distance) = self.snap_to_ground {
- let snap_distance = snap_distance.eval(dims.y);
if result.translation.dot(&self.up) < 1.0e-5 {
- let offset = self.offset.eval(dims.y);
+ let snap_distance = snap_distance.eval(dims.y);
if let Some((hit_handle, hit)) = queries.cast_shape(
bodies,
colliders,
character_pos,
&-self.up,
character_shape,
- snap_distance - offset,
- false,
+ snap_distance,
+ true,
filter,
) {
// Apply the snap.
+ let offset = self.offset.eval(dims.y);
let snap_distance = hit.toi - offset;
if snap_distance.abs() > 1.0e-5 {
result.translation -= *self.up * snap_distance;