wde_renderer/utils/
mod.rs1use bevy::prelude::*;
10
11use crate::{
12 assets::{RenderBindingRegisterPlugin, RenderDataRegisterPlugin},
13 core::RenderApp,
14 sync::ExtractResourcePlugin,
15 utils::ssbo_mesh::SsboMeshDescriptor
16};
17
18mod color;
19mod post_process_mesh;
20pub(crate) mod ssbo_mesh;
21
22pub use color::Color;
23pub use post_process_mesh::PostProcessingMesh;
24pub use ssbo_mesh::{SsboMesh, SsboMeshBinding};
25
26pub const MSAA_SAMPLE_COUNT: u32 = 4;
28
29pub(crate) struct UtilsPlugin;
30impl Plugin for UtilsPlugin {
31 fn build(&self, app: &mut App) {
32 app.add_plugins((
34 RenderDataRegisterPlugin::<SsboMesh>::default(),
35 RenderBindingRegisterPlugin::<SsboMeshBinding>::default()
36 ));
37 app.get_sub_app_mut(RenderApp)
38 .unwrap()
39 .init_resource::<SsboMeshDescriptor>();
40
41 app.init_resource::<PostProcessingMesh>()
43 .add_systems(Startup, PostProcessingMesh::init)
44 .add_plugins(ExtractResourcePlugin::<PostProcessingMesh>::default());
45 }
46}