Skip to content

Commit 45e3525

Browse files
committed
Creation of bind groups depends on preparation of buffers
1 parent dc951df commit 45e3525

File tree

3 files changed

+16
-10
lines changed

3 files changed

+16
-10
lines changed

crates/bevy_render/src/extract_component.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
use crate::{
22
render_resource::{encase::internal::WriteInto, DynamicUniformBuffer, ShaderType},
33
renderer::{RenderDevice, RenderQueue},
4-
view::ComputedVisibility,
5-
Extract, ExtractSchedule, RenderApp, RenderSet,
4+
view::{ComputedVisibility, ViewSet},
5+
Extract, ExtractSchedule, RenderApp,
66
};
77
use bevy_app::{App, IntoSystemAppConfig, Plugin};
88
use bevy_asset::{Asset, Handle};
@@ -83,7 +83,7 @@ impl<C: Component + ShaderType + WriteInto + Clone> Plugin for UniformComponentP
8383
if let Ok(render_app) = app.get_sub_app_mut(RenderApp) {
8484
render_app
8585
.insert_resource(ComponentUniforms::<C>::default())
86-
.add_system(prepare_uniform_components::<C>.in_set(RenderSet::Prepare));
86+
.add_system(prepare_uniform_components::<C>.in_set(ViewSet::PrepareUniforms));
8787
}
8888
}
8989
}

crates/bevy_render/src/globals.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ use crate::{
33
prelude::Shader,
44
render_resource::{ShaderType, UniformBuffer},
55
renderer::{RenderDevice, RenderQueue},
6-
Extract, ExtractSchedule, RenderApp, RenderSet,
6+
view::ViewSet,
7+
Extract, ExtractSchedule, RenderApp,
78
};
89
use bevy_app::{App, IntoSystemAppConfigs, Plugin};
910
use bevy_asset::{load_internal_asset, HandleUntyped};
@@ -27,7 +28,7 @@ impl Plugin for GlobalsPlugin {
2728
.init_resource::<GlobalsBuffer>()
2829
.init_resource::<Time>()
2930
.add_systems((extract_frame_count, extract_time).in_schedule(ExtractSchedule))
30-
.add_system(prepare_globals_buffer.in_set(RenderSet::Prepare));
31+
.add_system(prepare_globals_buffer.in_set(ViewSet::PrepareUniforms));
3132
}
3233
}
3334
}

crates/bevy_sprite/src/mesh2d/mesh.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ use bevy_render::{
2020
BevyDefault, DefaultImageSampler, GpuImage, Image, ImageSampler, TextureFormatPixelInfo,
2121
},
2222
view::{
23-
ComputedVisibility, ExtractedView, ViewTarget, ViewUniform, ViewUniformOffset, ViewUniforms,
23+
ComputedVisibility, ExtractedView, ViewSet, ViewTarget, ViewUniform, ViewUniformOffset,
24+
ViewUniforms,
2425
},
2526
Extract, ExtractSchedule, RenderApp, RenderSet,
2627
};
@@ -105,8 +106,12 @@ impl Plugin for Mesh2dRenderPlugin {
105106
.init_resource::<SpecializedMeshPipelines<Mesh2dPipeline>>()
106107
.add_systems((
107108
extract_mesh2d.in_schedule(ExtractSchedule),
108-
queue_mesh2d_bind_group.in_set(RenderSet::Queue),
109-
queue_mesh2d_view_bind_groups.in_set(RenderSet::Queue),
109+
prepare_mesh2d_bind_group
110+
.in_set(RenderSet::Prepare)
111+
.after(ViewSet::PrepareUniforms),
112+
prepare_mesh2d_view_bind_groups
113+
.in_set(RenderSet::Prepare)
114+
.after(ViewSet::PrepareUniforms),
110115
));
111116
}
112117
}
@@ -468,7 +473,7 @@ pub struct Mesh2dBindGroup {
468473
pub value: BindGroup,
469474
}
470475

471-
pub fn queue_mesh2d_bind_group(
476+
pub fn prepare_mesh2d_bind_group(
472477
mut commands: Commands,
473478
mesh2d_pipeline: Res<Mesh2dPipeline>,
474479
render_device: Res<RenderDevice>,
@@ -493,7 +498,7 @@ pub struct Mesh2dViewBindGroup {
493498
pub value: BindGroup,
494499
}
495500

496-
pub fn queue_mesh2d_view_bind_groups(
501+
pub fn prepare_mesh2d_view_bind_groups(
497502
mut commands: Commands,
498503
render_device: Res<RenderDevice>,
499504
mesh2d_pipeline: Res<Mesh2dPipeline>,

0 commit comments

Comments
 (0)