# Objective Many types in `bevy_render` implemented `Reflect` but were not registered. ## Solution Register all types in `bevy_render` that impl `Reflect`. This also registers additional dependent types (i.e. field types). > Note: Adding these dependent types would not be needed using something like #5781 😉 --- ## Changelog - Register missing `bevy_render` types in the `TypeRegistry`: - `camera::RenderTarget` - `globals::GlobalsUniform` - `texture::Image` - `view::ComputedVisibility` - `view::Visibility` - `view::VisibleEntities` - Register additional dependent types: - `view::ComputedVisibilityFlags` - `Vec<Entity>`
25 lines
713 B
Rust
25 lines
713 B
Rust
#[allow(clippy::module_inception)]
|
|
mod mesh;
|
|
/// Generation for some primitive shape meshes.
|
|
pub mod shape;
|
|
|
|
pub use mesh::*;
|
|
|
|
use crate::render_asset::RenderAssetPlugin;
|
|
use bevy_app::{App, Plugin};
|
|
use bevy_asset::AddAsset;
|
|
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.add_asset::<Mesh>()
|
|
.add_asset::<skinning::SkinnedMeshInverseBindposes>()
|
|
.register_type::<skinning::SkinnedMesh>()
|
|
.register_type::<Vec<Entity>>()
|
|
.add_plugin(RenderAssetPlugin::<Mesh>::default());
|
|
}
|
|
}
|