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

View File

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