#[allow(clippy::module_inception)] mod mesh; pub mod morph; pub mod primitives; pub use mesh::*; pub use primitives::*; use crate::{prelude::Image, render_asset::RenderAssetPlugin}; use bevy_app::{App, Plugin}; use bevy_asset::{AssetApp, Handle}; use bevy_ecs::entity::Entity; /// Adds the [`Mesh`] as an asset and makes sure that they are extracted and prepared for the GPU. pub struct MeshPlugin; impl Plugin for MeshPlugin { fn build(&self, app: &mut App) { app.init_asset::() .init_asset::() .register_asset_reflect::() .register_type::>>() .register_type::>>() .register_type::>() .register_type::() .register_type::() .register_type::>() // 'Mesh' must be prepared after 'Image' as meshes rely on the morph target image being ready .add_plugins(RenderAssetPlugin::::default()); } }