From afb4ce8d2d637b0a2cb56c0450c6b3c5d10aa47f Mon Sep 17 00:00:00 2001 From: Juan Linietsky Date: Sat, 28 Apr 2018 08:16:26 -0300 Subject: [PATCH] Reduce false positives in interior detection by adding a small offset to raycast, fixes #18476 --- modules/csg/csg.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/csg/csg.cpp b/modules/csg/csg.cpp index f399466fe5f..761a3097519 100644 --- a/modules/csg/csg.cpp +++ b/modules/csg/csg.cpp @@ -1216,7 +1216,7 @@ void CSGBrushOperation::MeshMerge::mark_inside_faces() { center /= 3.0; Plane plane(points[faces[i].points[0]], points[faces[i].points[1]], points[faces[i].points[2]]); - Vector3 target = center + plane.normal * max_distance; + Vector3 target = center + plane.normal * max_distance + Vector3(0.0001234, 0.000512, 0.00013423); //reduce chance of edge hits by doing a small increment int intersections = _bvh_count_intersections(bvh, max_depth, max_alloc - 1, center, target, i);