补课肯定是要打demo的,打的时候发现加载场景的旧方法已经过时了。
现在的加载方法:
头文件
using UnityEngine.SceneManagement;
加载场景
SceneManager.LoadScene(string sceneName);
异步加载场景
SceneManager.LoadSceneAsync(string sceneName);
销毁场景
SceneManager.Unloadscene(string sceneName);
判断场景是否还在加载
private AsyncOperation _asyncOperation = SceneManager.LoadSceneAsync(loadSceneName);
if(_asyncOperation.isDone)
{
Debug.Log("场景加载完成");
}
场景加载前和加载后要要调用方法
private void Start()
{
SceneManager.sceneLoaded += Loading;//绑定委托,加载场景的时候会调用此方法
SceneManager.sceneUnloaded += Destroying;//绑定委托,销毁场景的时候会调用此方法
}
private void Loading(Scene scene,LoadSceneMode move)
{
//dosomething
}
private void Destroying(Scene scene)
{
//dosomething
}
注意:异步加载场景的过程中弄进度条地址