diff options
author | mennomax <mennomax@outlook.de> | 2021-04-08 16:26:14 +0200 |
---|---|---|
committer | Aaron Franke <arnfranke@yahoo.com> | 2021-10-15 20:49:42 -0500 |
commit | b4eeeb315a74682d299c7ec1555ce06a9dc2641a (patch) | |
tree | 4efb789ff3d5673c38dc439eb91127870183f392 /servers/physics_3d/collision_solver_3d_sat.cpp | |
parent | 96410f55b24e47af045e3ad31545331ce124d999 (diff) |
Swap args of Plane(point, normal) constructor
Now (normal, point)
Diffstat (limited to 'servers/physics_3d/collision_solver_3d_sat.cpp')
-rw-r--r-- | servers/physics_3d/collision_solver_3d_sat.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/servers/physics_3d/collision_solver_3d_sat.cpp b/servers/physics_3d/collision_solver_3d_sat.cpp index 76738bb746..86150f41a0 100644 --- a/servers/physics_3d/collision_solver_3d_sat.cpp +++ b/servers/physics_3d/collision_solver_3d_sat.cpp @@ -183,7 +183,7 @@ static void _generate_contacts_edge_circle(const Vector3 *p_points_A, int p_poin real_t circle_B_radius = circle_B_line_1.length(); Vector3 circle_B_normal = circle_B_line_1.cross(circle_B_line_2).normalized(); - Plane circle_plane(circle_B_pos, circle_B_normal); + Plane circle_plane(circle_B_normal, circle_B_pos); static const int max_clip = 2; Vector3 contact_points[max_clip]; @@ -299,7 +299,7 @@ static void _generate_contacts_face_face(const Vector3 *p_points_A, int p_point_ Vector3 clip_normal = (edge0_B - edge1_B).cross(plane_B.normal).normalized(); // make a clip plane - Plane clip(edge0_B, clip_normal); + Plane clip(clip_normal, edge0_B); // avoid double clip if A is edge int dst_idx = 0; bool edge = clipbuf_len == 2; @@ -385,7 +385,7 @@ static void _generate_contacts_face_circle(const Vector3 *p_points_A, int p_poin // Clip face with circle plane. Vector3 circle_B_normal = circle_B_line_1.cross(circle_B_line_2).normalized(); - Plane circle_plane(circle_B_pos, circle_B_normal); + Plane circle_plane(circle_B_normal, circle_B_pos); static const int max_clip = 32; Vector3 contact_points[max_clip]; @@ -522,7 +522,7 @@ static void _generate_contacts_circle_circle(const Vector3 *p_points_A, int p_po } } - Plane circle_B_plane(circle_B_pos, circle_B_normal); + Plane circle_B_plane(circle_B_normal, circle_B_pos); // Generate contact points. for (int i = 0; i < num_points; i++) { @@ -1194,7 +1194,7 @@ static void _collision_box_capsule(const Shape3DSW *p_a, const Transform3D &p_tr } //Vector3 axis = (point - cyl_axis * cyl_axis.dot(point)).normalized(); - Vector3 axis = Plane(cyl_axis, 0).project(point).normalized(); + Vector3 axis = Plane(cyl_axis).project(point).normalized(); if (!separator.test_axis(axis)) { return; @@ -1303,7 +1303,7 @@ static void _collision_box_cylinder(const Shape3DSW *p_a, const Transform3D &p_t // Points of A, cylinder lateral surface. for (int i = 0; i < 8; i++) { const Vector3 &point = vertices_A[i]; - Vector3 axis = Plane(cyl_axis, 0).project(point).normalized(); + Vector3 axis = Plane(cyl_axis).project(point).normalized(); if (!separator.test_axis(axis)) { return; @@ -1985,7 +1985,7 @@ static void _collision_cylinder_face(const Shape3DSW *p_a, const Transform3D &p_ // Points of B, cylinder lateral surface. for (int i = 0; i < 3; i++) { const Vector3 &point = vertex[i]; - Vector3 axis = Plane(cyl_axis, 0).project(point).normalized(); + Vector3 axis = Plane(cyl_axis).project(point).normalized(); if (axis.dot(normal) < 0.0) { axis *= -1.0; } |