2

我正在使用 Steam VR 2.0 和 Unity 2018.3.2f1 制作一个场景。我有一个简单的语句来重新加载场景

private void Update()
    {
        if (Input.GetKeyDown(KeyCode.R))
        {
            SceneManager.LoadSceneAsync("Final");
        }
    }

问题是:当我重新加载场景时,它会停止正确响应。我仍然可以移动我的头,并将鼠标悬停在物体上。我悬停在上面的对象会突出显示,但它们会保持突出显示。我无法接听他们,或以任何有意义的方式与他们互动,我不知道为什么会这样。

我附上了下面问题的截图。

如您所见,多个对象被突出显示,并且手部网格很奇怪:

在此处输入图像描述

我尝试过的解决方案——

  • 使用 LoadScene 而不是 LoadSceneAsync
  • 改用 Application.LoadScene
  • 试图编辑 SteamVR 库中的播放器脚本以不将其添加到Don't Destroy On Load

有什么建议么?

4

1 回答 1

4

之所以出现此问题,是因为 SteamVR 2.0 中的 Player prefab 已Do Not Destroy检查 Load。所以,当我重新加载场景时,有多个玩家被实例化。我取消选中该框,现在一切正常。

复选框位于预制件[SteamVR]下的对象内:Player该复选框位于 <code>Player</code> 预制件下的 <code>[SteamVR]</code> 对象内

于 2019-03-13T06:48:49.273 回答