同步加载场景
SceneManager.LoadScene(1);
参数可以传递场景名称或者场景的索引。
如果使用场景名称作为参数,最好用包含文件夹路径的名称。否则如果不同文件夹下有相同名字的场景,可能会导致加载错场景。
如果加载场景需要保持旧场景不被销毁,则需添加第二重参数
代码如下:
SceneManager.LoadScene(1,LoadSceneMode.Additive);
异步加载场景
(首先要开启协程 StartCoroutine(方法名);)
异步加载与同步加载的区别是:异步加载可以在加载的过程中继续去执行其它代码。
SceneManager.LoadSceneAsync(1);
参数和同步加载一样,使用传递场景名称或者场景的索引。
有返回值,返回一个AsyncOperation.
AsyncOperation.isDone可以用来判断是否加载完成,实际上用得比较少,较多的还是用进度,因为这个属性是等加载完毕且开启跳转,跳转成功了才会变为完成。
AsyncOperation.allowSceneActivation加载完成后是否允许跳转,不允许的话,即使加载完成了也不会跳转过去。
AsyncOperation.progress是加载进度,值为0~0.9,实际上0.9是已加载完毕了