【发布时间】:2019-09-19 10:27:19
【问题描述】:
我有一个精灵,在我检测到鼠标点击它的那一刻。
但是我确实需要检测手指或鼠标何时触摸或在精灵上移动,因为手指/鼠标点击事件将发生在屏幕上的其他位置而不是精灵顶部。
public class Hand : MonoBehaviour
{
private void OnMouseDown()
{
if (Input.GetMouseButtonDown(0))
{
this.transform.gameObject.SetActive(false);
}
}
}
更新:
我试图检测到触摸精灵和鼠标按下但我没有点击按钮。我可以删除&& Input.GetMouseButtonDown(0),如果鼠标移过它就会起作用,但我希望鼠标/手指都放在精灵上并按下。
private void Update()
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, 1000) && Input.GetMouseButtonDown(0))
hit.collider.GetComponent<Button>().onClick.Invoke();
}
【问题讨论】:
-
您能否尝试重新表述您的问题,我很难理解您想要实现的目标。
-
当然,我已经更新了问题。希望它更清楚一点。
-
听起来如果触摸点移动,您需要从触摸点进行 RayCast。