Skip to main content

sync_layer_geometry

Function sync_layer_geometry 

Source
pub fn sync_layer_geometry(
    commands: Commands<'_, '_>,
    roots: Query<'_, '_, (Entity, &ComputedNode, &UiGlobalTransform, &RNode, &LayerGroupAlpha, Option<&ResolvedFilterChain>, Option<&FilterInput>, Option<&ResolvedBackdropChain>), With<PromotedLayer>>,
    root_markers: Query<'_, '_, (), With<PromotedLayer>>,
    children: Query<'_, '_, &Children>,
    parents: Query<'_, '_, &ChildOf>,
    existing_rects: Query<'_, '_, &LayerCaptureRect>,
    geometry: Query<'_, '_, (&ComputedNode, &UiGlobalTransform)>,
    membership: ResMut<'_, LayerMembership>,
    registry: ResMut<'_, LayersRegistry>,
    repaints: ResMut<'_, LayerRepaintState>,
    warned_bleeds: Local<'_, HashMap<Entity, (LayerCaptureRect, LayerCaptureRect)>>,
)
Expand description

Recomputes each promoted layer’s capture rect (inflated by the node’s quantized filter outset — blur reads/writes beyond the border box, and the composite quad, texture allocation, and synthetic-view ortho all derive from this rect), the subtree membership map, and each layer’s content-geometry hash (see fold_member_geometry). Also warns (filterBleed) when a nested filtered layer’s inflated rect escapes its enclosing layer’s capture — v1 clips there, losing part of the bleed. Runs in PostUpdate after bevy_ui layout so ComputedNode / UiGlobalTransform are this frame’s values.