diff options
author | smix8 <52464204+smix8@users.noreply.github.com> | 2023-04-05 02:15:25 +0200 |
---|---|---|
committer | smix8 <52464204+smix8@users.noreply.github.com> | 2023-05-11 07:38:16 +0200 |
commit | 7e1a261cc661ddbefb90208b94a6828c50750237 (patch) | |
tree | 648741a5ffdbc28fab4268aa9ecc9fba9800b290 /modules/navigation/nav_map.cpp | |
parent | c80a2b4fe99dcd0bba6fc24ed2748b1474b24448 (diff) | |
download | redot-engine-7e1a261cc661ddbefb90208b94a6828c50750237.tar.gz |
Prevent unnecessary navigation map synchronizations
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
Diffstat (limited to 'modules/navigation/nav_map.cpp')
-rw-r--r-- | modules/navigation/nav_map.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/navigation/nav_map.cpp b/modules/navigation/nav_map.cpp index b76295db86..57d702e846 100644 --- a/modules/navigation/nav_map.cpp +++ b/modules/navigation/nav_map.cpp @@ -54,21 +54,33 @@ } void NavMap::set_up(Vector3 p_up) { + if (up == p_up) { + return; + } up = p_up; regenerate_polygons = true; } void NavMap::set_cell_size(real_t p_cell_size) { + if (cell_size == p_cell_size) { + return; + } cell_size = p_cell_size; regenerate_polygons = true; } void NavMap::set_edge_connection_margin(real_t p_edge_connection_margin) { + if (edge_connection_margin == p_edge_connection_margin) { + return; + } edge_connection_margin = p_edge_connection_margin; regenerate_links = true; } void NavMap::set_link_connection_radius(real_t p_link_connection_radius) { + if (link_connection_radius == p_link_connection_radius) { + return; + } link_connection_radius = p_link_connection_radius; regenerate_links = true; } |