From 657b8f3a3b4cb40b294a6743ee6a99cdd0a66939 Mon Sep 17 00:00:00 2001 From: Portponky Date: Sat, 11 Mar 2023 15:21:53 +0000 Subject: [PATCH] Fix offset rounding for odd-sized tiles --- scene/2d/tile_map.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scene/2d/tile_map.cpp b/scene/2d/tile_map.cpp index 11e59d98582a..0ba93d3e2031 100644 --- a/scene/2d/tile_map.cpp +++ b/scene/2d/tile_map.cpp @@ -854,7 +854,7 @@ void TileMap::_update_dirty_quadrants() { q->self()->local_to_map.clear(); for (const Vector2i &E : q->self()->cells) { Vector2i pk = E; - Vector2i pk_local_coords = map_to_local(pk); + Vector2i pk_local_coords = map_to_local(pk).floor(); q->self()->map_to_local[pk] = pk_local_coords; q->self()->local_to_map[pk_local_coords] = pk; } @@ -1245,6 +1245,8 @@ void TileMap::_rendering_update_dirty_quadrants(SelfList::List tile_position.y += layers[q.layer].y_sort_origin + tile_data->get_y_sort_origin(); } + tile_position = tile_position.floor(); + // --- CanvasItems --- // Create two canvas items, for rendering and debug. RID ci;