You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Operating system or device - Godot version:
Godot 2 - 3.0
Issue description:
When a rigid body collides with a polygonal shape, edges that are between two faces forming a convex shape are not ignored but a collision with the edge is practically impossible. This causes a weird effect because if a rigid body momentarely penetrate the shape near the joining edge the body is unrealistically pushed on one side of the edge.
(Sorry my graphics tablet isn't working anymore, so I just used to mouse)
As you can see in image A the object hitting the flat plane made of two faces is pushed by the edge.
In image B I've drawn an edge and two faces. The edge is perpendicular to the screen. Now to understand that an edge has to be ignored we can look at the normals of the faces separated by the edge. If we compute the angle and this is greater or equal to 180 degrees then we ignore the edge.
Steps to reproduce:
Create a static body with a planar collision shape made of two faces, on the plan xz and put a spherical rigid body on top of the egde slighty off one side.
@pwab I think this issue is minor. The bug was raised against the Godot Physics Engine, not sure if this is a problem with bullet as well.
I also think the project is in the 2.1 format
There is no project file at all. 😅
Well you can still provide some working example for someone who wants to fix this for future releases (and it should be at least tested with Bullet too).
#29392 is probably a duplicate of this issue, but since this issue doesn't have a working minimal reproduction project, I'm closing this in favour of #29392.
Operating system or device - Godot version:
Godot 2 - 3.0
Issue description:
When a rigid body collides with a polygonal shape, edges that are between two faces forming a convex shape are not ignored but a collision with the edge is practically impossible. This causes a weird effect because if a rigid body momentarely penetrate the shape near the joining edge the body is unrealistically pushed on one side of the edge.
(Sorry my graphics tablet isn't working anymore, so I just used to mouse)
As you can see in image A the object hitting the flat plane made of two faces is pushed by the edge.
In image B I've drawn an edge and two faces. The edge is perpendicular to the screen. Now to understand that an edge has to be ignored we can look at the normals of the faces separated by the edge. If we compute the angle and this is greater or equal to 180 degrees then we ignore the edge.
Steps to reproduce:
Create a static body with a planar collision shape made of two faces, on the plan xz and put a spherical rigid body on top of the egde slighty off one side.
Link to minimal example project:
edge_bug.zip
The text was updated successfully, but these errors were encountered: