Class AddressableSceneProcessor
Scene processor for loading and unloading Unity scenes using the Addressables system. Manages async operations and loaded scene tracking.
public sealed class AddressableSceneProcessor : SceneProcessorBase
- Inheritance
-
ObjectComponentBehaviourMonoBehaviourSceneProcessorBaseAddressableSceneProcessor
- Inherited Members
-
SceneProcessorBase.Initialize(SceneManager)SceneProcessorBase.UnloadStart(LoadQueueData)SceneProcessorBase.UnloadEnd(LoadQueueData)SceneProcessorBase.UnloadStart(UnloadQueueData)SceneProcessorBase.UnloadEnd(UnloadQueueData)SceneProcessorBase.AddLoadedScene(Scene)SceneProcessorBase.GetMovedObjectsScene()SceneProcessorBase.GetDelayedDestroyScene()SceneProcessorBase.GetFallbackActiveScene()MonoBehaviour.IsInvoking()MonoBehaviour.CancelInvoke()MonoBehaviour.StopCoroutine(Coroutine)MonoBehaviour.StopAllCoroutines()MonoBehaviour.destroyCancellationTokenMonoBehaviour.useGUILayoutMonoBehaviour.didStartMonoBehaviour.didAwakeMonoBehaviour.runInEditModeBehaviour.enabledBehaviour.isActiveAndEnabledComponent.GetComponent<T>()Component.TryGetComponent<T>(out T)Component.GetComponentInChildren<T>()Component.GetComponentsInChildren<T>()Component.GetComponentInParent<T>()Component.GetComponentsInParent<T>()Component.GetComponents<T>()Component.GetComponentIndex()Component.CompareTag(TagHandle)Component.transformComponent.transformHandleComponent.gameObjectComponent.tagObject.GetEntityId()Object.GetInstanceID()Object.GetHashCode()Object.InstantiateAsync<T>(T)Object.InstantiateAsync<T>(T, Transform)Object.InstantiateAsync<T>(T, Vector3, Quaternion)Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion, Transform)Object.Instantiate(Object)Object.Instantiate(Object, Scene)Object.Instantiate<T>(T, InstantiateParameters)Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)Object.Instantiate(Object, Transform)Object.Instantiate<T>(T)Object.Instantiate<T>(T, Vector3, Quaternion)Object.Instantiate<T>(T, Vector3, Quaternion, Transform)Object.Instantiate<T>(T, Transform)Object.Destroy(Object)Object.DestroyImmediate(Object)Object.DontDestroyOnLoad(Object)Object.DestroyObject(Object)Object.FindObjectsOfType<T>()Object.FindObjectsByType<T>(FindObjectsSortMode)Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)Object.FindObjectOfType<T>()Object.FindFirstObjectByType<T>()Object.FindAnyObjectByType<T>()Object.FindFirstObjectByType<T>(FindObjectsInactive)Object.FindAnyObjectByType<T>(FindObjectsInactive)Object.FindObjectsByType<T>()Object.FindObjectsByType<T>(FindObjectsInactive)Object.ToString()Object.nameObject.hideFlags
Methods
ActivateLoadedScenes()
Activates all loaded scenes asynchronously.
public override void ActivateLoadedScenes()
AddLoadedScene(AsyncOperationHandle<SceneInstance>)
Adds a loaded scene to tracking collections after a successful load.
public void AddLoadedScene(AsyncOperationHandle<SceneInstance> loadHandle)
Parameters
loadHandleAsyncOperationHandle<SceneInstance>The async operation handle for the loaded scene.
AsyncsIsDone()
Coroutine that yields until all async scene load operations are done.
public override IEnumerator AsyncsIsDone()
Returns
BeginLoadAsync(string, LoadSceneParameters)
Begins loading a scene asynchronously using Addressables.
public override void BeginLoadAsync(string sceneName, LoadSceneParameters parameters)
Parameters
sceneNamestringThe name of the scene to load.
parametersLoadSceneParametersScene loading parameters.
BeginUnloadAsync(Scene)
Begins unloading a scene asynchronously using Addressables.
public override void BeginUnloadAsync(Scene scene)
Parameters
sceneSceneThe scene to unload.
GetLastLoadedScene()
Gets the most recently loaded scene.
public override Scene GetLastLoadedScene()
Returns
- Scene
GetLoadedScenes()
Gets the list of currently loaded scenes.
public override List<Scene> GetLoadedScenes()
Returns
- List<Scene>
GetPercentComplete()
Gets the percent complete of the current async operation, or 1.0 if not valid.
public override float GetPercentComplete()
Returns
IsPercentComplete()
Returns true if the current async operation is complete (percent >= 1.0).
public override bool IsPercentComplete()
Returns
LoadEnd(LoadQueueData)
Called at the end of a scene load queue. Resets processor state.
public override void LoadEnd(LoadQueueData queueData)
Parameters
queueDataLoadQueueDataThe load queue data.
LoadStart(LoadQueueData)
Called at the start of a scene load queue. Resets processor state.
public override void LoadStart(LoadQueueData queueData)
Parameters
queueDataLoadQueueDataThe load queue data.