Browse Source

Merge pull request #92763 from markdibarry/parallax2d_cull_fix

Fix incorrect cull boundary for scaled and repeated Parallax2D children
Rémi Verschelde 1 year ago
parent
commit
7571f82bea
1 changed files with 3 additions and 2 deletions
  1. 3 2
      servers/rendering/renderer_canvas_cull.cpp

+ 3 - 2
servers/rendering/renderer_canvas_cull.cpp

@@ -272,8 +272,9 @@ void RendererCanvasCull::_cull_canvas_item(Item *p_canvas_item, const Transform2
 		ci->repeat_times = repeat_times;
 
 		if (repeat_size.x || repeat_size.y) {
-			rect.size += repeat_size * repeat_times / final_xform.get_scale();
-			rect.position -= repeat_size * (repeat_times / 2);
+			Size2 scale = final_xform.get_scale();
+			rect.size += repeat_size * repeat_times / scale;
+			rect.position -= repeat_size / scale * (repeat_times / 2);
 		}
 	}