c# - Unity C# OnMouseDown() 不起作用.. 为什么?

标签 c# unity3d onmousedown

我对 OnMouseDown() 事件有疑问。这个脚本所属的对象是一个电脑柜,点击它可以执行某些 Action 。但我被困在第 1 个方 block 上。我已经尝试在网上搜索这个问题一段时间了,但似乎几乎没有人遇到同样的问题,而且其他解决方案也没有完美运行。有人可以帮我吗?我很困惑..

public class ComputerScript : MonoBehaviour 
{
    private RotateForDisplay displayRotation;
    private GameObject displayObjects;

    private void Start()
    {
        displayObjects = GameObject.Find("DisplayObjects");
        displayRotation = displayObjects.GetComponent<RotateForDisplay>();
    }

    // This does not seem to work for some reason..
    private void OnMouseDown()
    {
        displayRotation.isRotating = false;
        Debug.Log("Mouse is down");
    }

}

最佳答案

检查以下几点:

  • 检查你的目标有一个碰撞器(这个系统就像使用光线转换一样工作)并且它已启用
  • 检查碰撞器是否未调整大小或移动。
  • 检查您是否没有任何其他物体与碰撞体之间。

希望对您有所帮助,祝您好运!

关于c# - Unity C# OnMouseDown() 不起作用.. 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28916663/

相关文章:

c# - 使用 CefSharp v65 加载本地 html/css/js 文件

c# - WCF 派生的 DataContract 不继承基础 DataContract 的属性

c# - CanStop 设置为 False 时停止 Windows 服务的方法 (C#)

c# - 在 Unity 中使用 DLL,MonoBehaviour

javascript - 当 onmousedown 时 javascript

javascript - 鼠标按钮的 onClick 通用吗?

C# Web 开发人员 Web 服务

c# - StreamReader 中的子字符串错误

c# - Application.streamingAssetsPath 和 Application.persistentDataPath 有什么区别?如何使用?

javascript - 虽然鼠标按下 JS