summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/navigation/nav_region.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/navigation/nav_region.cpp b/modules/navigation/nav_region.cpp
index 357ee80d42..302b881eb5 100644
--- a/modules/navigation/nav_region.cpp
+++ b/modules/navigation/nav_region.cpp
@@ -105,10 +105,16 @@ void NavRegion::update_polygons() {
return;
}
+#ifdef DEBUG_ENABLED
if (!Math::is_equal_approx(double(map->get_cell_size()), double(mesh->get_cell_size()))) {
ERR_PRINT_ONCE("Navigation map synchronization error. Attempted to update a navigation region with a navigation mesh that uses a different `cell_size` than the `cell_size` set on the navigation map.");
}
+ if (map && Math::rad_to_deg(map->get_up().angle_to(transform.basis.get_column(1))) >= 90.0f) {
+ ERR_PRINT_ONCE("Navigation map synchronization error. Attempted to update a navigation region transform rotated 90 degrees or more away from the current navigation map UP orientation.");
+ }
+#endif // DEBUG_ENABLED
+
Vector<Vector3> vertices = mesh->get_vertices();
int len = vertices.size();
if (len == 0) {