-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discussion of CharacterBody behavior #50732
Comments
For testing purpose, I've made a 3.x version of the same project that can be used to test backported features: It's mostly okay, but I had problems converting render meshes from 4.0 to 3.x so I had to recreate them and I took shortcuts so they are not all looking exactly the same. Physics and controls should be setup the same way. |
@pouleyKetchoupp I opened two proposals for solving the collision between StaticBody and CharacterBody. |
@pouleyKetchoupp #30311 was closed, so I tested Moving-Slope. It no longer slid down, but I encountered two problems.
2021-08-11.5.12.41-1.mov
2021-08-11.5.12.412-1.mov |
@TokageItLab Thanks for testing and letting me know! I've noticed the one with the slowdown earlier today, I'm going to have a look to both. |
@pouleyKetchoupp Currently, some methods such as Edited: |
@pouleyKetchoupp @fabriceci @fire Updated the sample project. The movement on the moving slope is now perfect. Excellent! However, the jittering slope problem still occurs in 3D.
|
@TokageItLab For the remaining jittering on the slope, I think it makes sense it's still there because #51027 was made just for 2D for now. We'll keep an eye on this case when porting those changes to 3D. |
@pouleyKetchoupp @fabriceci In relation to the slope jittering, it reminded me of #51874. |
Godot version
4.0
System information
Any
Issue description
This issue is a tracker that summarizes some of the issues that occur with the current physics behavior of
CharacterBody
.Since the way characters are required to move varies from game to game, the implementation should be as minimalistic as possible.
The problems that occur can be divided into two categories: engine-side problems and user-side problems. However, even for user-side problems, it is possible to provide solutions as add-ons or tutorials. Then, I suggest that the implementation should try to be as uncomplicated as possible so that the user can understand what is going on.
I prepared a sample project that looks like this.
is_on_floor()
is jittering when going up the steep slope as wall from floor #50756apply_velocity_on_leave
inCharacterBody3D
is may not working correctly #52957CharacterBody3D
causes slipping when going up the slope with slanting to it #52958CharacterBody
's gravity calculation on steep slope in air is undesirable #51874StaticBody
is_inside_solid_geometry()
inCharacterBody
Steps to reproduce
Play scene.
Minimal reproduction project
https://github.com/TokageItLab/3d-platform-test-for-godot4
The text was updated successfully, but these errors were encountered: