pub mod cull;
pub mod item_type;
pub mod shared_wgsl;
pub mod target_desc;
pub use cull::{BatchMeta, CullSubmission, InstanceAabb, SingleMeshDraw};
pub use item_type::{
ItemFrameContext, ItemTypePlugin, OutlineMaskContext, PaintContext, PickRay,
PluginItemCollection, ShadowCastContext,
};
pub use target_desc::{
MaskTargetDesc, OIT_ACCUM_BLEND, OIT_REVEAL_BLEND, OitTargetDesc, OpaqueTargetDesc,
PickTargetDesc, ShadowTargetDesc,
};
pub struct SharedBindings<'a> {
pub group0_layout: &'a wgpu::BindGroupLayout,
}
impl<'a> SharedBindings<'a> {
pub const CAMERA_BINDING: u32 = 0;
pub const SHADOW_ATLAS_BINDING: u32 = 1;
pub const SHADOW_SAMPLER_BINDING: u32 = 2;
pub const LIGHTS_HEADER_BINDING: u32 = 3;
pub const CLIP_PLANES_BINDING: u32 = 4;
pub const SHADOW_INFO_BINDING: u32 = 5;
pub const CLIP_VOLUME_BINDING: u32 = 6;
pub const IBL_IRRADIANCE_BINDING: u32 = 7;
pub const IBL_SPECULAR_BINDING: u32 = 8;
pub const IBL_BRDF_LUT_BINDING: u32 = 9;
pub const IBL_SAMPLER_BINDING: u32 = 10;
pub const SKYBOX_BINDING: u32 = 11;
pub const DEBUG_FRAG_BINDING: u32 = 12;
pub const LIGHTS_ARRAY_BINDING: u32 = 13;
}