Unity/Addressable/シーンロード
提供: 初心者エンジニアの簡易メモ
シーンを作成してAddressable登録
- Project内でSceneを作成する
- Sceneを選択し、Inspectorで、Addressableにチェックを付ける
- Addressableをビルドする(Unityメインメニュー/Window/Asset Management/Addressables/Groups/Build/New Build/Default Build Script
参考:https://soft-rime.com/post-3267/
シーンをロード
using System.Collections; using UnityEngine; using UnityEngine.UI; using UnityEngine.AddressableAssets; using UnityEngine.ResourceManagement.AsyncOperations; using UnityEngine.ResourceManagement.ResourceProviders; public class SceneLoadScene : MonoBehaviour { [SerializeField] Button loadButton; [SerializeField] Button unloadButton; AsyncOperationHandle<SceneInstance> handle; void Start() { loadButton.onClick.AddListener(() => { StartCoroutine(LoadScene()); }); unloadButton.onClick.AddListener(() => { Addressables.UnloadSceneAsync(handle); }); } IEnumerator LoadScene() { handle = Addressables.LoadSceneAsync("Assets/Scenes/SceneLoadSample2Scene.unity", UnityEngine.SceneManagement.LoadSceneMode.Additive); yield return handle; } }
参考:https://light11.hatenadiary.com/entry/2019/12/30/222302
シーンを追加でなく遷移させる場合
handle = Addressables.LoadSceneAsync("Assets/Scenes/SceneLoadSample2Scene.unity");