Use the absolute value of the up attribute when calculating side_extent

This commit is contained in:
Linentio
2023-09-30 13:27:50 +02:00
parent fa2be3fc9c
commit 6c901d5774

View File

@@ -522,7 +522,7 @@ impl KinematicCharacterController {
fn compute_dims(&self, character_shape: &dyn Shape) -> Vector2<Real> { fn compute_dims(&self, character_shape: &dyn Shape) -> Vector2<Real> {
let extents = character_shape.compute_local_aabb().extents(); let extents = character_shape.compute_local_aabb().extents();
let up_extent = extents.dot(&self.up.abs()); let up_extent = extents.dot(&self.up.abs());
let side_extent = (extents - *self.up * up_extent).norm(); let side_extent = (extents - (*self.up).abs() * up_extent).norm();
Vector2::new(side_extent, up_extent) Vector2::new(side_extent, up_extent)
} }