浏览代码

Merge pull request #56169 from dkaste/fix-clip-rects

Fix canvas items being drawn outside clip rects
Rémi Verschelde 3 年之前
父节点
当前提交
586a973b6b
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      servers/rendering/renderer_canvas_cull.cpp

+ 4 - 0
servers/rendering/renderer_canvas_cull.cpp

@@ -261,6 +261,10 @@ void RendererCanvasCull::_cull_canvas_item(Item *p_canvas_item, const Transform2
 	if (ci->clip) {
 		if (p_canvas_clip != nullptr) {
 			ci->final_clip_rect = p_canvas_clip->final_clip_rect.intersection(global_rect);
+			if (ci->final_clip_rect == Rect2()) {
+				// Clip rects do not intersect, so don't draw this item.
+				return;
+			}
 		} else {
 			ci->final_clip_rect = global_rect;
 		}