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