guxin

一、直接切换

老版的(已弃用!):

Application.LoadLevel(int index); // 参数是场景编号
Application.LoadLevel(string name); // 参数是场景名字

新版的:

// 使用SceneManager!
using UnityEngine.SceneManagement; // 必须要引入

public class TestChangeScene : MonoBehaviour {
    private string sceneName;
    void ChangeScene(){
        // 切换场景
        SceneManager.LoadScene(1); // 参数是场景编号或场景名字
        // 获取当前场景的名字
        sceneName = SceneManager.GetActiveScene().name;
    }
}

注意点:

  • 网上搜的资料大多是老版本的写法,小心被坑!还是看文档最靠谱。
  • 需要把加载的场景在File -> Build Setting中添加。
  • 切换场景后所有加载物体都将删除,除非使用Object.DontDestroyOnLoad(Object)添加标记,例如人物角色(包括挂载在这些对象身上的脚本)在切换场景后需要保留,就可以用此方法。

二、异步加载场景

http://www.cnblogs.com/guxin/p/unity-use-coroutine-asynchronously-load-scene.html

分类:

技术点:

相关文章:

  • 2022-01-24
  • 2021-11-13
  • 2022-01-23
  • 2022-01-13
  • 2021-10-05
  • 2021-06-24
  • 2021-11-16
猜你喜欢
  • 2022-12-23
  • 2021-07-04
  • 2022-12-23
  • 2022-01-21
  • 2021-09-16
  • 2022-12-23
  • 2021-12-10
相关资源
相似解决方案