summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-04-25 12:11:13 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-04-25 12:11:13 +0200
commitf819c77d274ba4a40c5261bab3dcb9f13460e263 (patch)
tree510b91b8bad4dd70675bb1b088b8856e33bbb219
parente0f58a31946800635501fc4f6f8c4f74c5c5e321 (diff)
parent80c600d86b6fed05fdb35d5dd95267a8a95fe74d (diff)
downloadredot-engine-f819c77d274ba4a40c5261bab3dcb9f13460e263.tar.gz
Merge pull request #90915 from rburing/no_more_speedrun
Fix `move_and_slide` wall slide acceleration (3D)
-rw-r--r--scene/3d/physics/character_body_3d.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/scene/3d/physics/character_body_3d.cpp b/scene/3d/physics/character_body_3d.cpp
index b13c279234..dda3ea9cca 100644
--- a/scene/3d/physics/character_body_3d.cpp
+++ b/scene/3d/physics/character_body_3d.cpp
@@ -232,7 +232,7 @@ void CharacterBody3D::_move_and_slide_grounded(double p_delta, bool p_was_on_flo
} else {
// Travel is too high to be safely canceled, we take it into account.
result.travel = result.travel.slide(up_direction);
- motion = motion.normalized() * result.travel.length();
+ motion = result.remainder;
}
set_global_transform(gt);
// Determines if you are on the ground, and limits the possibility of climbing on the walls because of the approximations.