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");