Mark the first shape as inside, not the second shape, when CSG shapes are

co-planer.
This commit is contained in:
Marcel Admiraal 2020-08-12 07:27:31 +01:00
parent abf019d810
commit 557dce8e72

View file

@ -588,8 +588,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();