untiy初识之 按钮点击ui 如何进行射线判断点到了哪个东西上

本文介绍了在Unity中处理UI按钮点击事件时如何进行射线判断,特别是面对UI重叠和3D模型重叠的情况。通过EventSystem.current.RaycastAll获取点击位置并进行射线检测,利用不同gameobject的标记进行逻辑区分,如使用tag来实现穿透或遮盖效果。
摘要由CSDN通过智能技术生成
可以在update中检测当前点到了东西并且如果有需求的话可以判断是点到了gameobject .通过这样就行过滤。
这时候,比如ui有重叠,或者ui层跟实际的3d模型在点击的位置是重叠的,这时候就需要区分下,比如ui在上面,点到了某个ui需要穿透,响应下面的点击逻辑,而有的ui不需要穿透,对下面的东西是遮盖的关系。
对当前的点击事件处理,获得当前点击屏幕的位置,然后EventSystem.current.RaycastAll,通过位置点做一个射线检测,
对不同的gameobject通过不同的标记来区分,做不同的逻辑, 比如可以用tag来区分。
if (Input.GetMouseButtonDown(0)) {
            if (EventSystem.current.IsPointerOverGameObject ()) {
                PointerEventData eventDataCurrentPosition 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值