Hi, I’m interesting this issue.
In my project case, scene transition time is sensitive for user experience, so that I tried to preload multiple scenes in background.
I tried to use Addressables.LoadSceneAsync with passing false to activateOnLoad and SceneLoadMode.Additive to loadMode.
At first, I thought it will be worked correctly, but I found out that it may not be worked correctly in some condition which depend on the order of actual loading completion.
The order of loading completion seemed to be different by ‘Play Mode Script’ state in ‘Addressables Group Window’.
Build Path is specified to ‘LocalBuildPath’ and Load Path is specified to ‘LocalLoadPath’ in Asset Group Inspector.
For instance:
- Play Mode Script state is ‘Use AssetDatabase (fastest)’ and Addressables.LoadSceneAsync is called in following order;
Scene1
Scene2
Scene3
and then, the order of loading completion (but not be called SceneInstance.ActivateAsync yet, where all PercentComplete are more than 0.9) is;
Scene1
Scene2
Scene3
This case is ok, following SceneInstance.ActivateAsync is not be blocked.
- Play Mode Script state is ‘Simulate Group (advanced)’ and Addressables.LoadSceneAsync is called in following order;
Scene1
Scene2
Scene3
and the order of actual loading completion is;
Scene3
Scene1
Scene2
Subsequently, following SceneInstance.ActivateAsync is blocked because I call SceneInstance.ActivateAsync in order of calling LoadSceneAsync but not in order of actual loading completion.
This issue caused a complicated bug that blocking scene activation and that preventing from playing a game.
I understood a workaround that ensuring the order of scene activation to be corresponding to the order of actual loading completion, but this approach lead to order scene activations in non-deterministic.
In my project, the order of scene activation is important for scene transition, which assumed to be loaded with SceneLoadMode.Additive, to avoid flicker.
With priority argument, it was no effect. (What’s priority…?)
I finally gave up to implement loading multiple scenes in background using Addressables for above reason unwillingly.
I used Addressables ver. 1.8.4 (2019.4 verified) and ver. 1.13.1 in Unity 2019.4.8f1.
I strongly hope that this issue will be resolved in the future release. Thanks.