Merge pull request #41200 from madmiraal/fix-38001-3.2

[3.2] Mark the first shape as inside, not the second shape, when CSG shapes are co-planer.
This commit is contained in:
Rémi Verschelde 2020-10-01 13:50:19 +02:00 committed by GitHub
commit 0a26217579
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -596,8 +596,8 @@ bool CSGBrushOperation::MeshMerge::_bvh_inside(FaceBVH *facebvhptr, int p_max_de
// Check if faces are co-planar.
if ((current_normal - face_normal).length_squared() < CMP_EPSILON2 &&
is_point_in_triangle(face_center, current_points)) {
// Only add an intersection if checking a B face.
if (face.from_b)
// Only add an intersection if not a B face.
if (!face.from_b)
_add_distance(intersectionsA, intersectionsB, current_face.from_b, 0);
} else if (ray_intersects_triangle(face_center, face_normal, current_points, CMP_EPSILON, intersection_point)) {
real_t distance = (intersection_point - face_center).length();