From 0e052ed7c5094fd488f52a4c21e688abc390c049 Mon Sep 17 00:00:00 2001 From: DokaDoka Date: Fri, 13 Jan 2023 16:01:29 +1100 Subject: [PATCH] fix(client/zones): get diagonal offsets in 2d avoids floating point weirdness with the z coord --- imports/zones/client.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/imports/zones/client.lua b/imports/zones/client.lua index 03cb668..dc627b8 100644 --- a/imports/zones/client.lua +++ b/imports/zones/client.lua @@ -44,9 +44,10 @@ local function getTriangles(polygon) local a, b, c = 1, 2, 3 local len = #points + local zValue = polygon[1].z while len - #triangles > 2 do - if polygon:containsSegment(glm.segment.getPoint(polygon[a], polygon[c], 0.01), glm.segment.getPoint(polygon[a], polygon[c], 0.99)) then + if polygon:containsSegment(vec3(glm.segment2d.getPoint(polygon[a].xy, polygon[c].xy, 0.01), zValue), vec3(glm.segment2d.getPoint(polygon[a].xy, polygon[c].xy, 0.99), zValue)) then triangles[#triangles + 1] = mat(polygon[a], polygon[b], polygon[c]) points[b] = false