Unity3D交互相关总结

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也无法相应上述事件