📜  scenemanager.loadscene - C# (1)

📅  最后修改于: 2023-12-03 15:19:59.496000             🧑  作者: Mango

Unity 3D中的Scene Manager.LoadScene()

Unity 3D的Scene Manager是游戏开发中非常重要的组件之一,它提供了控制场景的功能。Scene Manager.LoadScene()函数是其中一个非常有用的函数,它可以在运行时加载一个新的场景。

函数声明
public static AsyncOperation LoadScene(string sceneName, SceneManagement.LoadSceneMode mode = LoadSceneMode.Single);
public static AsyncOperation LoadScene(int sceneBuildIndex, SceneManagement.LoadSceneMode mode = LoadSceneMode.Single);
函数参数
  • sceneName: 要加载的场景的名称。
  • sceneBuildIndex: 要加载的场景的索引号。
  • mode: 加载场景的模式。
函数返回值

该函数返回一个AsyncOperation对象,该对象用于管理场景的异步加载过程。

函数作用

该函数的作用是在运行时异步地加载一个新场景。可以使用场景名称或索引来指定要加载的场景。如果要加载的场景已经在场景管理器中,会根据加载模式来执行相应的操作,请参考下面的加载模式。

加载模式

该函数有两种加载模式:

  • LoadSceneMode.Single: 在加载场景后从场景管理器中删除所有之前加载的场景。
  • LoadSceneMode.Additive: 将新场景添加到场景管理器中而不删除之前加载的场景。
示例

以下是一个使用LoadScene()函数加载新场景的示例。该示例假设已经有两个场景,分别为Scene1和Scene2。

using UnityEngine;
using UnityEngine.SceneManagement;

public class SceneLoader : MonoBehaviour
{
    public void LoadScene2()
    {
        SceneManager.LoadScene("Scene2", LoadSceneMode.Single);
    }
}

在上面的示例中,如果当前场景为场景1,当按钮被点击时,将异步加载场景2,并从场景管理器中删除场景1。

总结

以上是关于Unity 3D中Scene Manager.LoadScene()函数的介绍。使用这个函数可以很方便地加载新的场景。场景管理在游戏开发中是非常重要的,掌握这个函数可以让你更加得心应手。