-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
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
Bumpy RigidBody2D collision at TileMap seams #65204
Comments
Duplicate of #32138. |
Would the current workaround be writing my own collision handling with |
It may not fix the issue, as collision results will still return unreliable normals. I think the only 100% robust solution is to write your own physics in GDScript (or C#), using AABBs which are often sufficient for 2D arcade games. Instead of using one collision shape per tile, generating a 2D convex hull for the whole tilemap and using this for collision is also an option. Maybe using a concave collision shape could work, so you don't have to write your own physics. Generating the shape based on the entire tilemap probably won't be trivial though. |
Using the convex and concave hulls might work for me, but you're right, it won't be trivial. Is this issue something that could feasibly be fixed? Or is it something core to the physics that cannot be altered? |
The issue can be fixed in core, but it's not easy to figure out and fix without introducing regressions elsewhere. We have a general lack of physics contributors, so any help is appreciated here 🙂 |
Godot version
v4.0.alpha15.official [432b25d]
System information
Windows 11
Issue description
When a RigidBody2D moves across the point where two tiles in a TileMap meet, the collision becomes unpredictable. This makes it very difficult to make a physics based game such as golf without having unpredictable behaviour which would annoy the player.
Rolling on the ground the ball can bounce randomly:
bumpy01.mp4
When landing the ball can stop dead for no reason:
bumpy02.mp4
Steps to reproduce
Minimal reproduction project
tilemap_collision.zip
The text was updated successfully, but these errors were encountered: