unity 判断gameobject有没有这个脚本

 我来答
我不要你的姓氏
2016-08-24 · 超过54用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:85.2万
展开全部
在Unity3D中,因为游戏世界是3D世界,鼠标在屏幕上的点击并不能直接用于确定选中的是哪个物体。当然我们可以通过在被点击物体上添加脚本实现OnMouseDown()函数来处理点击事件。但是如果被点击物体是在运行过程中被动态生成的,添加脚本变得很麻烦。因此如果要在游戏中实现鼠标选择某一物体的效果,可以使用以下方法:
function Update () {
if(Input.GetButtonDown("Fire1")) {
//通过用户的点击中获取一条射线ray
var ray : Ray = Camera.main.ScreenPointToRay( Input.mousePosition );

//得到射线ray击中的所有目标
var array : Array = Physics.RaycastAll( ray );

var hit: RaycastHit;
var tf : Transform;

if(array.Count != 0){//若被击中目标数不为零
hit = array[0];//获得被击中的目标
tf = hit.transform;
//tf.gameObject;
}
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式