private static bool AreEdgesIntersecting(Edge edge1, Edge edge2) { Vector2 l1_p1 = new Vector2(edge1.v1.position.x, edge1.v1.position.z); Vector2 l1_p2 = new Vector2(edge1.v2.position.x, edge1.v2.position.z); Vector2 l2_p1 = new Vector2(edge2.v1.position.x, edge2.v1.position.z); Vector2 l2_p2 = new Vector2(edge2.v2.position.x, edge2.v2.position.z); bool isIntersecting = Intersections.AreLinesIntersecting(l1_p1, l1_p2, l2_p1, l2_p2, true); return(isIntersecting); }