diff --git a/crates/bevy_ui/src/render/mod.rs b/crates/bevy_ui/src/render/mod.rs index e632b4eee18cb..7fd0af4228c1c 100644 --- a/crates/bevy_ui/src/render/mod.rs +++ b/crates/bevy_ui/src/render/mod.rs @@ -344,9 +344,11 @@ pub fn prepare_uinodes( positions[3] + positions_diff[3].extend(0.), ]; + let transformed_rect_size = extracted_uinode.transform.transform_vector3(rect_size); + // Cull nodes that are completely clipped - if positions_diff[0].x - positions_diff[1].x >= rect_size.x - || positions_diff[1].y - positions_diff[2].y >= rect_size.y + if positions_diff[0].x - positions_diff[1].x >= transformed_rect_size.x + || positions_diff[1].y - positions_diff[2].y >= transformed_rect_size.y { continue; }