revert character controller gravity being gravity dependent (from 822) (#857)

This commit is contained in:
Thierry Berger
2025-07-24 16:36:31 +02:00
committed by GitHub
parent f4b659ed02
commit f9c986428c
2 changed files with 10 additions and 10 deletions

View File

@@ -50,7 +50,7 @@ pub fn update_character(
fn character_movement_from_inputs(
gfx: &TestbedGraphics,
mut speed: Real,
artificial_gravity: Option<Real>,
artificial_gravity: bool,
) -> Vector<Real> {
let mut desired_movement = Vector::zeros();
@@ -77,8 +77,8 @@ fn character_movement_from_inputs(
desired_movement *= speed;
if let Some(artificial_gravity) = artificial_gravity {
desired_movement += Vector::y() * artificial_gravity;
if artificial_gravity {
desired_movement -= Vector::y() * speed;
}
desired_movement
@@ -91,7 +91,7 @@ fn update_pid_controller(
pid: &mut PidController,
speed: Real,
) {
let desired_movement = character_movement_from_inputs(gfx, speed, None);
let desired_movement = character_movement_from_inputs(gfx, speed, false);
let character_body = &mut phx.bodies[character_handle];
@@ -129,7 +129,7 @@ fn update_kinematic_controller(
controller: &KinematicCharacterController,
speed: Real,
) {
let desired_movement = character_movement_from_inputs(gfx, speed, Some(phx.gravity.y));
let desired_movement = character_movement_from_inputs(gfx, speed, true);
let character_body = &phx.bodies[character_handle];
let character_collider = &phx.colliders[character_body.colliders()[0]];

View File

@@ -49,7 +49,7 @@ pub fn update_character(
fn character_movement_from_inputs(
gfx: &TestbedGraphics,
mut speed: Real,
artificial_gravity: Option<f32>,
artificial_gravity: bool,
) -> Vector<Real> {
let mut desired_movement = Vector::zeros();
@@ -88,8 +88,8 @@ fn character_movement_from_inputs(
desired_movement *= speed;
if let Some(artificial_gravity) = artificial_gravity {
desired_movement += Vector::y() * artificial_gravity;
if artificial_gravity {
desired_movement -= Vector::y() * speed;
}
desired_movement
@@ -102,7 +102,7 @@ fn update_pid_controller(
pid: &mut PidController,
speed: Real,
) {
let desired_movement = character_movement_from_inputs(gfx, speed, None);
let desired_movement = character_movement_from_inputs(gfx, speed, false);
let character_body = &mut phx.bodies[character_handle];
// Adjust the controlled axis depending on the keys pressed by the user.
@@ -139,7 +139,7 @@ fn update_kinematic_controller(
controller: &KinematicCharacterController,
speed: Real,
) {
let desired_movement = character_movement_from_inputs(gfx, speed, Some(phx.gravity.y));
let desired_movement = character_movement_from_inputs(gfx, speed, true);
let character_body = &phx.bodies[character_handle];
let character_collider = &phx.colliders[character_body.colliders()[0]];