Unity中,使用Addressables异步载入场景

2023-08-03  本文已影响0人  全新的饭
IEnumerator LoadMainSceneCoroutine()
{
    // MainGameSceneName为Addressable中游戏主场景的地址(可以改为简称(Name))
    var mainGameSceneHandle = Addressables.LoadSceneAsync(MainGameSceneName, UnityEngine.SceneManagement.LoadSceneMode.Single, false);
    if (mainGameSceneHandle.Status == UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationStatus.Failed)
    {
        Debug.LogError("加载游戏主场景失败:" + mainGameSceneHandle.OperationException.ToString());
        yield break;
    }
    while (!mainGameSceneHandle.IsDone)
    {
        yield return null;
    }
    Debug.Log("已加载好游戏主场景");


    // 将主场景设置为活动场景(真正载入)(有时可能需要等待合适的时机,再主动调用)
    mainGameSceneHandle.Result.ActivateAsync();
}

获取加载进度的方式是

mainGameSceneHandle.GetDownloadStatus().Percent 
上一篇 下一篇

猜你喜欢

热点阅读