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

【学习笔记】 Unity中在点击UI时屏蔽游戏内点击事件

2015-12-31 14:10 716 查看
遇到的问题:

在做一个Unity for Android项目时,使用NGUI,使用手势缩放和旋转模型,但希望在点击到UI时屏蔽这些操作。

分析:

尝试在发射拾取射线时屏蔽特点层的物体。

解决方法:

在NGUI的Camera下挂载如下脚本,注意Camera参数为NGUI的相机而非主相机。

var NGUICamera : Camera;
public var target: GameObject;
function Update ()
{
var ray = NGUICamera.ScreenPointToRay (Input.mousePosition);
var hit : RaycastHit;

var mask = 1 << LayerMask.NameToLayer("NGUI");
if (Physics.Raycast (ray, hit, 2000, mask))
{
target = hit.collider.gameObject;	//获得点击的物体
hitUI = true;
}
else
{
hitUI = false;
}
}


注意:Physics.Raycast函数一定要加入距离参数(上文为2000),否则layer屏蔽将无效!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Unity ngui ui