Compare commits

..

2 Commits

Author SHA1 Message Date
Mark Moissette 746a643796
Merge 0b038de584 into 9b50d77790 2024-07-29 08:17:40 +00:00
Chris Biscardi 0b038de584
feat(components): warn instead of crash when components aren't reflectable (#207)
* warn instead of panic when components aren't reflectable
* entities get marked as processed even if components are not inserted
2024-07-29 10:17:36 +02:00
1 changed files with 7 additions and 5 deletions

View File

@ -8,7 +8,7 @@ use bevy::{
}, },
gltf::{GltfExtras, GltfMaterialExtras, GltfMeshExtras, GltfSceneExtras}, gltf::{GltfExtras, GltfMaterialExtras, GltfMeshExtras, GltfSceneExtras},
hierarchy::Parent, hierarchy::Parent,
log::debug, log::{debug, warn},
reflect::{Reflect, TypeRegistration}, reflect::{Reflect, TypeRegistration},
utils::HashMap, utils::HashMap,
}; };
@ -145,10 +145,12 @@ pub fn add_components_from_gltf_extras(world: &mut World) {
{ {
let mut entity_mut = world.entity_mut(entity); let mut entity_mut = world.entity_mut(entity);
type_registration let Some(reflected_component) = type_registration.data::<ReflectComponent>() else {
.data::<ReflectComponent>() warn!(?component, "unable to reflect component");
.expect("Unable to reflect component") entity_mut.insert(GltfProcessed);
.insert(&mut entity_mut, &*component, &type_registry); continue;
};
reflected_component.insert(&mut entity_mut, &*component, &type_registry);
entity_mut.insert(GltfProcessed); // entity_mut.insert(GltfProcessed); //
} }