Uninomicon

Documenting the dark corners of the Unity Engine.

User Tools

Site Tools


scenemanager

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
scenemanager [2021/12/24 23:22]
archo [Scattered Notes] OnAfterDeserialize
scenemanager [2022/01/30 19:55] (current)
narry Added details about an undocumented quirk with occlusion culling in additive scenes
Line 63: Line 63:
   * During a scene unload (ie. Destroy) the unloading scene has ''scene.isLoaded=false''. ((You might expect during the unload phase that isLoaded=true, but this is not the case, even though all of the Scene objects are still perfectly loaded and accessible))   * During a scene unload (ie. Destroy) the unloading scene has ''scene.isLoaded=false''. ((You might expect during the unload phase that isLoaded=true, but this is not the case, even though all of the Scene objects are still perfectly loaded and accessible))
   * ''ISerializationCallbackReceiver.OnAfterDeserialize'' is called before the async loading of heavy scene resources (e.g. textures) so can be used for running scene-specific thread-aware code early in the loading process.((Unlike ''MonoBehaviour'' events which are called at the end.))   * ''ISerializationCallbackReceiver.OnAfterDeserialize'' is called before the async loading of heavy scene resources (e.g. textures) so can be used for running scene-specific thread-aware code early in the loading process.((Unlike ''MonoBehaviour'' events which are called at the end.))
 +  * When using ''LoadSceneMode.Additive'', using the ''SceneManager.sceneLoaded'' callback and setting ''SceneManager.SetActiveScene(scene)'' within this callback results in Unity replacing the currently loaded occlusion culling data with the occlusion culling data from this newly loaded scene. [[https://docs.unity3d.com/Manual/occlusion-culling-scene-loading.html|This goes directly against what is documented, which states Unity will only use the culling data from the first loaded scene]]. This undocumented behavior has been tested in 2018.4-2020.3, and may or may not work in other versions of Unity.
  
  
scenemanager.txt · Last modified: 2022/01/30 19:55 by narry