KinematicBody CollisionShape (3D) appears to be bigger than it is

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By GreyMiller

I’m making a pinball game with a rigid body as ball, static table and kinematic flippers.
Using a spherical collision shape for the ball, concave polygon for the table and convex for flippers (why is it said not to use concave for kinematic bodies?)
The ball rolls perfectly on the table, but when it comes to flippers it looks like the ball is hovering over them not touching the meshes, as if collision shapes of flippers are bigger than meshes (though in editor they have the same size), the ball doesn’t even fall between the flippers, however the distance between them is greater than the size of the ball. The same happens if i change flippers’ type to rigidbody and set it to kinematic mode.
P.s. tried to switch to godot physics, but then the ball acts totally crazy like passing through objects or getting stuck inside a flipper
P.s. What really helps is replacing a convex collision polygon with concave one, but Godot warns that concave is “not supported to be kinematic”. Why is that so, what are the drawbacks of this method?

Debug with visible collisions shapes on and see if they are the problem.

ra45 | 2020-10-25 20:51

I know this is response to an old post. I ran in to a similar issue when working on my game. I found at least in my case that working with too small of a unit or scale the collision margin begins to have too much influence. How I solved the issue in my game was to fix scaling before export to the engine or scale the mesh and adjust the extents on the collision shapes.

maincomputer | 2021-01-18 20:09