您的位置:首页 > 移动开发 > Unity3D

Unity3d--判断鼠标是否触发UGUI控件

2016-06-17 15:43 537 查看
void Update () {
//判断鼠标左键是否按下其没有按下UGUI物体
if (Input.GetMouseButtonDown(0) && !EventSystem.current.IsPointerOverGameObject()) {
//获取由主摄像机位置到鼠标点击位置的一条射线
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hitInfo;
//bool isCollider = Physics.Raycast (ray, out hitInfo,1000,LayerMask.NameToLayer("Ground"));
bool isCollider = Physics.Raycast(ray,out hitInfo);
//Debug.Log (isCollider);
//判断射线是否成功发射且是否触发目标物体
if (isCollider && hitInfo.collider.tag == "Ground") {
//参数为目标物体的位置信息
ShowClickEffect (hitInfo.point);
isMoving = true;
LookAtTarget (hitInfo.point);
//Debug.Log ("007");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: