@@ -15,8 +15,8 @@ use bevy::{
1515 } ,
1616 platform:: collections:: HashMap ,
1717 reflect:: Reflect ,
18- scene:: { Scene , SceneInstanceReady , SceneRoot } ,
1918 transform:: components:: Transform ,
19+ world_serialization:: { WorldAsset , WorldAssetRoot , WorldInstanceReady } ,
2020} ;
2121
2222use super :: { animation_clip:: EntityPath , errors:: AssetLoaderError , id:: BoneId , skeleton:: Skeleton } ;
@@ -29,8 +29,8 @@ use crate::{
2929#[ derive( Clone , Asset , Reflect ) ]
3030#[ reflect( Asset ) ]
3131pub struct AnimatedScene {
32- pub source : Handle < Scene > ,
33- pub processed_scene : Option < Handle < Scene > > ,
32+ pub source : Handle < WorldAsset > ,
33+ pub processed_scene : Option < Handle < WorldAsset > > ,
3434 pub animation_graph : Handle < AnimationGraph > ,
3535 pub retargeting : Option < Retargeting > ,
3636 /// Skeleton of the animations we want to play on the source scene.
@@ -84,20 +84,20 @@ impl AnimatedSceneHandle {
8484/// Processed animated scenes are "cached".
8585pub ( crate ) fn spawn_animated_scenes (
8686 mut commands : Commands ,
87- unloaded_scenes : Query < ( Entity , & AnimatedSceneHandle ) , Without < SceneRoot > > ,
87+ unloaded_scenes : Query < ( Entity , & AnimatedSceneHandle ) , Without < WorldAssetRoot > > ,
8888 mut animated_scene_assets : ResMut < Assets < AnimatedScene > > ,
89- mut scenes : ResMut < Assets < Scene > > ,
89+ mut scenes : ResMut < Assets < WorldAsset > > ,
9090 skeletons : Res < Assets < Skeleton > > ,
9191 app_type_registry : Res < AppTypeRegistry > ,
9292) {
9393 for ( entity, animscn_handle) in & unloaded_scenes {
94- let Some ( animscn) = animated_scene_assets. get_mut ( & animscn_handle. handle ) else {
94+ let Some ( mut animscn) = animated_scene_assets. get_mut ( & animscn_handle. handle ) else {
9595 continue ;
9696 } ;
9797
9898 let processed_scene = if let Some ( val) = animscn. processed_scene . as_ref ( ) {
9999 val
100- } else if is_scene_ready_to_process ( animscn, & scenes, & skeletons) {
100+ } else if is_scene_ready_to_process ( & animscn, & scenes, & skeletons) {
101101 let Some ( scene) = scenes
102102 . get ( & animscn. source )
103103 . and_then ( |scn| scn. clone_with ( & app_type_registry) . ok ( ) )
@@ -124,14 +124,14 @@ pub(crate) fn spawn_animated_scenes(
124124
125125 commands
126126 . entity ( entity)
127- . insert ( SceneRoot ( processed_scene. clone ( ) ) ) ;
127+ . insert ( WorldAssetRoot ( processed_scene. clone ( ) ) ) ;
128128 }
129129}
130130
131131/// Checks whether the scene can be processed
132132fn is_scene_ready_to_process (
133133 animscn : & AnimatedScene ,
134- scenes : & Assets < Scene > ,
134+ scenes : & Assets < WorldAsset > ,
135135 skeletons : & Assets < Skeleton > ,
136136) -> bool {
137137 scenes. contains ( & animscn. source ) && skeletons. contains ( & animscn. skeleton )
@@ -142,14 +142,14 @@ fn is_scene_ready_to_process(
142142/// It also applies retargeting if necessary.
143143#[ allow( clippy:: result_large_err, clippy:: too_many_arguments) ]
144144fn process_scene_into_animscn (
145- mut scene : Scene ,
145+ mut scene : WorldAsset ,
146146 skeleton_handle : Handle < Skeleton > ,
147147 ragdoll_handle : Option < Handle < Ragdoll > > ,
148148 ragdoll_bone_map_handle : Option < Handle < RagdollBoneMap > > ,
149149 graph : Handle < AnimationGraph > ,
150150 skeletons : & Assets < Skeleton > ,
151151 retargeting : Option < & Retargeting > ,
152- ) -> Result < Scene , AssetLoaderError > {
152+ ) -> Result < WorldAsset , AssetLoaderError > {
153153 let mut query = scene
154154 . world
155155 . query_filtered :: < Entity , With < bevy:: animation:: AnimationPlayer > > ( ) ;
@@ -219,7 +219,7 @@ fn apply_bone_path_overrides(
219219/// Adds an `AnimatedSceneInstance` pointing to the animation graph player when the scene is
220220/// spawned
221221pub ( crate ) fn locate_animated_scene_player (
222- trigger : On < SceneInstanceReady > ,
222+ trigger : On < WorldInstanceReady > ,
223223 handle_query : Query < & AnimatedSceneHandle > ,
224224 mut player_query : Query < & mut AnimationGraphPlayer > ,
225225 children_query : Query < & Children > ,
0 commit comments