Unity中同时播放多个场景

3
所以问题是我刚刚给我的游戏添加了一个简单的菜单系统,但它似乎同时加载了两个场景。游戏在后台运行,这很烦人,但不知何故,在按下播放按钮后,它会重置游戏场景并开始正常地玩游戏。在构建设置中,游戏场景的命名相当奇怪,但每次我从层次结构中拖动我的游戏场景时,它都会在构建设置中给我那个名称。有什么建议可以让场景正常工作吗?

Image of my Build settings

public class MainMenuN : MonoBehaviour
{
    public void PlayGame()
    {
        SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex + 1);
    }
    public void QuitGame (){
        Debug.Log("QUIT");
        Application.Quit();
    } 
}
1个回答

5

好的,你当前已经在Hierarchy中加载了这两个场景!

因此,在按下播放按钮进入Playmode时,这两个场景都已经被加载并运行。

然后,在按下按钮后,您使用SceneManager.LoadScene而没有传递mode参数,因此它使用默认模式,即Single

关闭所有当前加载的场景并加载一个场景。

这就是为什么在此之后它起作用的原因,因为这使得所有当前加载的场景都被卸载并加载了目标场景。


这种多场景编辑是纯编辑器功能,在构建版本中只会加载设置中的第一个场景,不会像在编辑器中那样运行。

特别要注意跨场景引用!


为了正确在编辑器中测试并复制与构建后应用程序相同的行为,请保存然后从Hierarchy中删除第二个场景(Ropesgame)。


感谢!@derHugo - BeastFeels

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接