Преглед на файлове

Fix TileMap drawing itself twice on creation

Adds a check before calling `item_rect_changed()` in
`_recompute_rect_cache()` of `scene/2d/tile_map.cpp`. Makes sure
TileMap is only redrawn if the rect is actually changed.
Fixes #69754
Vladislav Slobodenyuk преди 2 години
родител
ревизия
0b5c4216c8
променени са 1 файла, в които са добавени 3 реда и са изтрити 1 реда
  1. 3 1
      scene/2d/tile_map.cpp

+ 3 - 1
scene/2d/tile_map.cpp

@@ -995,9 +995,11 @@ void TileMap::_recompute_rect_cache() {
 		}
 	}
 
+	bool changed = rect_cache != r_total;
+
 	rect_cache = r_total;
 
-	item_rect_changed();
+	item_rect_changed(changed);
 
 	rect_cache_dirty = false;
 #endif