0

我的问题如下:

我正在尝试为 Unity 编写一个脚本,当单击一个特定对象时,我可以使用该脚本更改场景。但我收到以下错误:

NewBehaviourScript.cs(19,21):错误 CS0176:无法使用实例引用访问成员“SceneManager.LoadScene(string)”;改为使用类型名称来限定它

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class NewBehaviourScript : MonoBehaviour
{
    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit))
            {
                if (hit.transform.name == "Cube")
                {
                    SceneManager mySceneManager = new SceneManager();
                    mySceneManager.LoadScene("SceneTwo");
                }

            }
        }
    }
}
4

1 回答 1

0

SceneManager.LoadScene是一种静态方法。这意味着它属于一个类型SceneManager,而不是某个SceneManager. 这意味着您不必创建新实例SceneManagerand 而不是

SceneManager mySceneManager = new SceneManager();
mySceneManager.LoadScene("SceneTwo");

只需使用

SceneManager.LoadScene("SceneTwo");

您可以在Microsoft docs中阅读有关 c# 中静态成员的更多信息。另外下次先在Unity 的文档中查找示例,它可以为您节省一些时间。

于 2020-04-21T10:51:22.797 回答