Unity甚至无法识别我的函数“ OnTriggerEnter()”上的“对撞机”

时间:2019-07-15 09:43:30

标签: c# visual-studio unity3d

我是Unity初学者,所以现在我通过观看youtube上的一些教程来做一些小项目。 但是,在看了一个使用“ OnTriggerEnter”函数和属性“ Collider”的教程之后。我意识到编辑器无法识别“对撞机”,因此无法使用“ OnTriggerEnter”。

我在互联网上进行了搜索,但找不到与我的问题有关的任何答案。 这是第一次,这发生在我身上,所以我真的不知道如何解决这个问题...

这是我的小代码,我只是想在玩家进入区域时移动某些东西。

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

public class Trigger : MonoBehaviour
{

    public bool opening = false;

    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {

    }

    // OnTriggerEnter is called when something enter in the trigger
    void OnTriggerEnter(Collider obj)
    {
        if(obj.transform.name == "Player")
        {
            opening = true;
        }
    }
}

因此,正如我所说,我的统一编辑器(即Microsoft Visual Studio)未检测到“对撞机”(例如,我无法通过按Enter进行预填充),并且颜色是白色而不是蓝色例如,“ true”。 因此,由于这个原因,我无法继续进行该项目,并且我想知道该怎么做,以便我的编辑器识别“对撞机”,并使我的项目能够正常工作!

预先感谢您的回答。

2 个答案:

答案 0 :(得分:0)

要解决此问题,您可以执行以下操作:

  1. 关闭Unity和Visual Studio。
  2. 打开Unity。
  3. 从Unity打开Visual Studio(资产=>打开C#项目)。

如果这不起作用,则需要在以下位置检查当前的编辑器:
Edit => Preferences => External Tools => External Script Editor

答案 1 :(得分:0)

Visual Studio总是有一些错误,例如缺少依赖项和内容。我建议使用Visual Studio Code应用程序。就像@Jack解释过的一样。浏览到Edit => Preferences => External Tools => External Script Editor,然后将脚本编辑器更改为Visual Studio Code,然后重试。