From a879f98d3b757fe19afb17b976b11f49119ab900 Mon Sep 17 00:00:00 2001 From: ickshonpe Date: Sun, 23 Jul 2023 14:06:36 +0100 Subject: [PATCH] UI extraction order fix (#9099) # Objective Fixes #9097 ## Solution Reorder the `ExtractSchedule` so that the `extract_text_uinodes` and `extract_uinode_borders` systems are run after `extract_atlas_uinodes`. ## Changelog `bevy_ui::render`: * Added the `ExtractAtlasNode` variant to `RenderUiSystem`. * Changed `ExtractSchedule` so that `extract_uinode_borders` and `extract_text_uinodes` run after `extract_atlas_uinodes`. --- crates/bevy_ui/src/render/mod.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/crates/bevy_ui/src/render/mod.rs b/crates/bevy_ui/src/render/mod.rs index f54ae28cb3..328ba7b1a6 100644 --- a/crates/bevy_ui/src/render/mod.rs +++ b/crates/bevy_ui/src/render/mod.rs @@ -59,6 +59,7 @@ pub const UI_SHADER_HANDLE: HandleUntyped = #[derive(Debug, Hash, PartialEq, Eq, Clone, SystemSet)] pub enum RenderUiSystem { ExtractNode, + ExtractAtlasNode, } pub fn build_ui_render(app: &mut App) { @@ -82,10 +83,12 @@ pub fn build_ui_render(app: &mut App) { extract_default_ui_camera_view::, extract_default_ui_camera_view::, extract_uinodes.in_set(RenderUiSystem::ExtractNode), - extract_atlas_uinodes.after(RenderUiSystem::ExtractNode), - extract_uinode_borders.after(RenderUiSystem::ExtractNode), + extract_atlas_uinodes + .in_set(RenderUiSystem::ExtractAtlasNode) + .after(RenderUiSystem::ExtractNode), + extract_uinode_borders.after(RenderUiSystem::ExtractAtlasNode), #[cfg(feature = "bevy_text")] - extract_text_uinodes.after(RenderUiSystem::ExtractNode), + extract_text_uinodes.after(RenderUiSystem::ExtractAtlasNode), ), ) .add_systems(