From 88cf37665ee19d47ffe67f38d4195f230d62ebc6 Mon Sep 17 00:00:00 2001 From: Danny McGee Date: Sat, 27 Jan 2024 20:47:24 -0500 Subject: [PATCH] Limit skeleton tagging to joints in `ActiveScene` --- studio/src/scene.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/studio/src/scene.rs b/studio/src/scene.rs index dcf6555..d615818 100644 --- a/studio/src/scene.rs +++ b/studio/src/scene.rs @@ -321,10 +321,16 @@ fn tag_scene_elements( fn tag_skeleton( mut cmd: Commands, + r_active_scene: Res, + r_scene_spawner: Res, q_joints: Query>, q_parents: Query>, ) { - let joints: Vec<_> = q_joints.iter().collect(); + let joints = r_scene_spawner + .iter_instance_entities(**r_active_scene) + .filter(|&ent| q_joints.contains(ent)) + .collect::>(); + if let Some(root) = algo::nearest_common_ancestor(&joints, &q_parents) { cmd.entity(root).insert(Skeleton); }