-
-
Notifications
You must be signed in to change notification settings - Fork 21.9k
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
[GodotPhysics] CharacterBody3D gets stuck on flat ends of static cylinders #57476
Comments
I noticed that this problem doesn't occur if the collider is a polygonal cylinder, like with a CSG cylinder. |
The problem is related to the contact points returned by the engine, it seems to occur only with this rotation, this could be caused by a bad separation axis. In the following image you can see the contact points as pink dots:: Same scene but using a CSG Cylinder: As in the first one, there is no contact point in the cylinder, the body cannot slide and ends up being stuck. |
I believe I am encountering something similar but with more than just cylinders, I've been getting it with all collision shapes. Sliding against them just seems very failure-prone and leads to objects getting stuck all the time. |
@novaplusplus could you share a minimal reproduction project, just the bare minimum with the default script movement? |
I am having similar problem.. |
Same thing is happening to me. Brush up against a wall? Stuck. |
@akien-mga was this closed intentionally? I'm still seeing CharacterBody3D getting stuck agaisn't edges on 4.0.2, including on the above example by prominentdetail |
I can confirm the issue still occurs with @prominentdetail's MRP in 4.0.2. I would recommend testing #68958 locally and see if it resolves the issue. |
having this issue on 4.1. both cylinder and capsule playershapes get stuck on walls and corners of staticbody3ds. |
Confirmed still issue in 4.1.1 As far as I can tell so far, this issue doesn't appear to be reproducible when using godot-jolt physics 🤞 . cc godotengine/godot-proposals#7308 |
I tested @prominentdetail's MRP in v4.1.1.stable.official [bd6af8e] with godot-jolt physics and it's working flawlessly. |
I have this problem with the characterbody3d node as well. But my set up does not involve walls. It simply gets stuck moving on a flat surface. I'm using the Kenney Starter Kit for 3D Platformers (https://github.com/KenneyNL/Starter-Kit-3D-Platformer), which includes a platform prefab that I'm using with my own characters made from scratch. I can dislodge my character by jumping. However, I'm not sure how to resolve the problem. I actually think timing might have something to do with it. It seems to happen after 17 seconds of game play. I will move my character back and forth over the platform, and every 17 seconds, it will get caught on the floor, and I have to jump to dislodge it. I have attached a video of this happening: godot.s.weird.bug.mp4Is it possible that it is my computer? |
I'm still getting bodies with cylinder as collision shapes stuck while sliding against the wall on v4.3.beta3.official [82cedc8]. |
@wapcaf This should be resolved in 4.4.beta if you switch the 3D physics engine to Jolt Physics in the Project Settings. If not, please open a new issue with a minimal reproduction project attached. |
Bugsquad note: This issue has been confirmed several times already. No need to confirm it further.
Godot version
4.0
System information
Windows 10
Issue description
Moving a CharacterBody3D along the flat end of a cylinder does not behave the same as sliding along a flat wall. The CharacterBody3D can even become stuck in place and unable to move away form the cylinder once it reaches the edges of the cylinder's flat surface

.
Steps to reproduce
(For some reason if the cylinder has its scale set to (2.8, 2, 2.8) and is placed about 1 unit above the surface of the floor the issue is more present)
Minimal reproduction project
CharacterAndCylinderIssue.zip
The text was updated successfully, but these errors were encountered: