diff --git a/modules/terrain/terrain_modifier.cpp b/modules/terrain/terrain_modifier.cpp index a2eb3673..df9dfc9c 100644 --- a/modules/terrain/terrain_modifier.cpp +++ b/modules/terrain/terrain_modifier.cpp @@ -311,6 +311,9 @@ float TerrainModifierPath::evaluate_at(Vector2 world_coordinate, float before) { for (int i{ 0 }; i < count; i++) { Vector3 const ipos{ this->points[i] }; Vector3 const next_pos{ this->points[Math::wrapi(i + 1, 0, this->points.size())] }; + if (ipos == next_pos) { + continue; + } float dot, distance, percentage; bool const is_start{ !this->closed && i == 0 }, is_end{ !this->closed && i == count - 1 }; float height{ evaluate_line(ipos, is_start, next_pos, is_end, world_coordinate, dot, distance, percentage) };