Switch to using the SceneInstance component to determine the nearest Gltf.

This commit is contained in:
andriyDev 2024-05-25 19:26:55 -07:00
parent d7af89930b
commit 930033354b
2 changed files with 3 additions and 7 deletions

View File

@ -14,10 +14,7 @@ license = "MIT OR Apache-2.0"
workspace = true workspace = true
[dependencies] [dependencies]
bevy = { version = "0.13", default-features = false, features = [ bevy = { version = "0.13", default-features = false, features = ["bevy_scene"] }
"bevy_asset",
"bevy_scene",
] }
bevy_gltf_components = { version = "0.5", path = "../bevy_gltf_components" } bevy_gltf_components = { version = "0.5", path = "../bevy_gltf_components" }
[dev-dependencies] [dev-dependencies]

View File

@ -1,6 +1,5 @@
use bevy::{ use bevy::{
app::{App, Plugin}, app::{App, Plugin},
asset::Handle,
ecs::{ ecs::{
component::Component, component::Component,
entity::Entity, entity::Entity,
@ -13,7 +12,7 @@ use bevy::{
log::warn, log::warn,
prelude::Update, prelude::Update,
reflect::{Reflect, TypePath}, reflect::{Reflect, TypePath},
scene::Scene, scene::SceneInstance,
utils::HashMap, utils::HashMap,
}; };
use bevy_gltf_components::GltfComponentsSet; use bevy_gltf_components::GltfComponentsSet;
@ -157,7 +156,7 @@ impl<T: Component + FromGltfRef> Default for GltfRefPlugin<T> {
/// SystemParam to find the Gltf that an entity belongs to. /// SystemParam to find the Gltf that an entity belongs to.
#[derive(SystemParam)] #[derive(SystemParam)]
pub struct GltfForEntity<'w, 's> { pub struct GltfForEntity<'w, 's> {
gltfs: Query<'w, 's, (), With<Handle<Scene>>>, gltfs: Query<'w, 's, (), With<SceneInstance>>,
hierarchy: Query<'w, 's, &'static Parent>, hierarchy: Query<'w, 's, &'static Parent>,
} }