mirror of https://github.com/godotengine/godot
Cylinder contact points generation is adjusted to make it more stable when standing on triangle meshes. Point-Circle: Switched to simpler plane projection as it's done for Point-Face contact points. It solves some cases where discrepancies between the two points caused the cylinder to jump. Edge-Circle: Same as before, the case for edge has just been moved from Face-Circle to a specific method. Face-Circle: The previous method was clipping edges against the circle, and then tried to add contact points when there wasn't enough support and failed in some cases. Now using a different algorithm which adds proper contact points around the circle more consistently. First, by clipping edges against circle segments using Face-Face algorithm. Second, by clipping edges against the circle plane. |
||
|---|---|---|
| .. | ||
| joints | ||
| SCsub | ||
| area_3d_sw.cpp | ||
| area_3d_sw.h | ||
| area_pair_3d_sw.cpp | ||
| area_pair_3d_sw.h | ||
| body_3d_sw.cpp | ||
| body_3d_sw.h | ||
| body_pair_3d_sw.cpp | ||
| body_pair_3d_sw.h | ||
| broad_phase_3d_basic.cpp | ||
| broad_phase_3d_basic.h | ||
| broad_phase_3d_sw.cpp | ||
| broad_phase_3d_sw.h | ||
| broad_phase_octree.cpp | ||
| broad_phase_octree.h | ||
| collision_object_3d_sw.cpp | ||
| collision_object_3d_sw.h | ||
| collision_solver_3d_sat.cpp | ||
| collision_solver_3d_sat.h | ||
| collision_solver_3d_sw.cpp | ||
| collision_solver_3d_sw.h | ||
| constraint_3d_sw.h | ||
| gjk_epa.cpp | ||
| gjk_epa.h | ||
| joints_3d_sw.h | ||
| physics_server_3d_sw.cpp | ||
| physics_server_3d_sw.h | ||
| physics_server_3d_wrap_mt.cpp | ||
| physics_server_3d_wrap_mt.h | ||
| shape_3d_sw.cpp | ||
| shape_3d_sw.h | ||
| space_3d_sw.cpp | ||
| space_3d_sw.h | ||
| step_3d_sw.cpp | ||
| step_3d_sw.h | ||