diff options
| author | PouleyKetchoupp <pouleyketchoup@gmail.com> | 2021-03-11 20:33:46 -0700 |
|---|---|---|
| committer | PouleyKetchoupp <pouleyketchoup@gmail.com> | 2021-03-18 09:04:17 -0700 |
| commit | d5ea4acd2dddfe13ad7989aa54d9cb5739e678d5 (patch) | |
| tree | b449378f779a24659f22c83be8e93c60e977a0e8 /servers/physics_3d/collision_solver_3d_sat.cpp | |
| parent | 01851defb5e43803bbcd6d8221a25ebbdd963119 (diff) | |
| download | redot-engine-d5ea4acd2dddfe13ad7989aa54d9cb5739e678d5.tar.gz | |
SoftBody support in GodotPhysics 3D
- Fixed SoftBody surface update with new rendering system
- Added GodotPhysics implementation for SoftBody
- Added support to get SoftBody rid to interact with the physics server
- Added support to get SoftBody bounds from the physics server
- Removed support for unused get_vertex_position and get_point_offset
from the physics server
- Removed SoftBody properties that are unused in both Bullet and
GodotPhysics (angular and volume stiffness, pose matching)
- Added RenderingServerHandler interface to PhysicsServer3D so the physics servers don't need to reference the class from SoftBody node directly
Diffstat (limited to 'servers/physics_3d/collision_solver_3d_sat.cpp')
| -rw-r--r-- | servers/physics_3d/collision_solver_3d_sat.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/servers/physics_3d/collision_solver_3d_sat.cpp b/servers/physics_3d/collision_solver_3d_sat.cpp index 651961433c..187e08e00e 100644 --- a/servers/physics_3d/collision_solver_3d_sat.cpp +++ b/servers/physics_3d/collision_solver_3d_sat.cpp @@ -74,9 +74,9 @@ struct _CollectorCallback { _FORCE_INLINE_ void call(const Vector3 &p_point_A, const Vector3 &p_point_B) { if (swap) { - callback(p_point_B, p_point_A, userdata); + callback(p_point_B, 0, p_point_A, 0, userdata); } else { - callback(p_point_A, p_point_B, userdata); + callback(p_point_A, 0, p_point_B, 0, userdata); } } }; @@ -680,7 +680,7 @@ public: return true; } - static _FORCE_INLINE_ void test_contact_points(const Vector3 &p_point_A, const Vector3 &p_point_B, void *p_userdata) { + static _FORCE_INLINE_ void test_contact_points(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) { SeparatorAxisTest<ShapeA, ShapeB, withMargin> *separator = (SeparatorAxisTest<ShapeA, ShapeB, withMargin> *)p_userdata; Vector3 axis = (p_point_B - p_point_A); real_t depth = axis.length(); |
