diff --git a/src/plugin/plugin.rs b/src/plugin/plugin.rs index d75ed742..7ae07b7d 100644 --- a/src/plugin/plugin.rs +++ b/src/plugin/plugin.rs @@ -90,7 +90,9 @@ where .after(systems::init_joints) .after(systems::apply_initial_rigid_body_impulses), #[cfg(all(feature = "dim3", feature = "async-collider"))] - systems::init_async_scene_colliders.before(systems::init_async_colliders), + systems::init_async_scene_colliders + .after(bevy::scene::scene_spawner_system) + .before(systems::init_async_colliders), ) .into_configs(), PhysicsSet::SyncBackendFlush => (apply_system_buffers,).into_configs(), diff --git a/src/plugin/systems.rs b/src/plugin/systems.rs index 33b74cd8..22155bba 100644 --- a/src/plugin/systems.rs +++ b/src/plugin/systems.rs @@ -1531,9 +1531,11 @@ mod tests { #[test] #[cfg(all(feature = "dim3", feature = "async-collider"))] fn async_scene_collider_initializes() { + use bevy::scene::scene_spawner_system; + let mut app = App::new(); app.add_plugin(HeadlessRenderPlugin) - .add_system(init_async_scene_colliders); + .add_system(init_async_scene_colliders.after(scene_spawner_system)); let mut meshes = app.world.resource_mut::>(); let cube_handle = meshes.add(Cube::default().into()); @@ -1712,8 +1714,7 @@ mod tests { impl Plugin for HeadlessRenderPlugin { fn build(&self, app: &mut App) { - app.add_plugin(TaskPoolPlugin::default()) - .add_plugin(WindowPlugin::default()) + app.add_plugin(WindowPlugin::default()) .add_plugin(AssetPlugin::default()) .add_plugin(ScenePlugin::default()) .add_plugin(RenderPlugin {