Input.MouseButtonDown触屏、电脑通用,只要有按下操作,不需要collider
NGUI 中带collider的UI是可以接受到射线检测的,不过需要注意的是
void Update()
{
if (Input.GetMouseButtonDown(0))//
{
Ray ray = camera.ScreenPointToRay(Input.mousePosition);
RaycastHit raycastHit;
if (Physics.Raycast(ray, out raycastHit))
{
Debug.LogError(raycastHit.collider.name);
}
}
}
这里相机需要用UI相机,而不是Camera.main
带Collider的UI无法响应Unity自带的OnMouseDown、OnMOuseUp、OnMouseDrag事件。
经测试用主相机渲染的带collider的UI也无法相应上述事件