OnMouseUp 仅在单击对象时有效

OnMouseUp only works when object is clicked

我有一些非常简单的代码,当一个对象被点击时(当鼠标从被推到未被推的位置时),它会向一个对象施加力。 OnMouseUp 上的信息指出

"Note that OnMouseUp is called even if the mouse is not over the same GUIElement or Collider as the has mouse has been pressed down on."

这正是我想要的。如果我点击屏幕上的任意位置,我希望它能够激活。它只有在我点击对象时才有效。我是不是误会了什么?

整体代码如下(非常简单):

public Rigidbody2D Player;
private void OnMouseUp()
{
     Debug.Log("Test");
     layer.AddForce(transform.up * 1000);
}

谢谢,

Am I misunderstanding something?

你在评论区得到了答案。

I want it to activate if I click anywhere on the screen. It is only working if I click on the object though.

OnMouseUp 不用于检测屏幕上任何位置的点击。您需要在 Update 函数中使用 Input.GetMouseButtonXX 函数之一。

以下可能是您要查找的内容:

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        Debug.Log("Test");
        Player.AddForce(transform.up * 1000);
    }
}