位置: 编程技术 - 正文

Unity3D--如何控制UGUI的触摸 使其可以控制穿透UGUI触摸到其它物体(unity控制三维模型)

编辑:rootadmin

推荐整理分享Unity3D--如何控制UGUI的触摸 使其可以控制穿透UGUI触摸到其它物体(unity控制三维模型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity代码控制timeline,unity3d控制台,unity3d如何控制物体移动,unity3d如何控制物体环形移动,unity3d控制台,unity如何控制slider,unity3d如何控制物体环形移动,unity 控制,内容如对您有帮助,希望把文章链接给更多的朋友!

如何控制UGUI触摸 使可以控制穿透UGUI触摸到其它物体

方法1: 其它物体通过 EventSystem.current.currentSelectedGameObject 来进行判断 那么就是UGUI当想穿透的时候,不能有selected触发

方法2: 底层加一个Panel 凡是需要穿透的物体,加一个Cancas Group,然后关闭拦截,让其穿透

方法3: 根据EventSystem.current.IsPointerOverGameObject,据说有bug

方法4: 给摄像机添加 PhysicsRaycaster ,然后3D物体就可以使用UI的事件接口

由于IPointerClickHandler不需要Selectedtable控制,但是又受其限制 所以不建议对没有Selectable组件的物体添加IPointerClickHandler 但是IPointerClickHandler即使Selectable的interactable为false也会触发

对于需要使用interable = false的物体,添加上IPointerClickHandler,触发的时候让Selectedtable物体为该物体

对于想要穿透的,添加一个空的Event Trigger,否则EventSystem.current.currentSelectedGameObjec非空,并且会产生颜色变化 对于不想要穿透的,只要该物体直到跟父物体,有一个物体有Selectable组件,并且第一个物体interable为true即可(小心点击事件会被触发,所以不建议) 没有Selectedable不想被穿透的,还是建议添加Selectedtable,EventTrigger也行,但是EventTrigger就不会让Selected为该物体了 对于原本有Selectable组件的,但是可能被关掉的,可以用EventTrigger或IP将Selected指向该物体

Unity3D--如何控制UGUI的触摸 使其可以控制穿透UGUI触摸到其它物体(unity控制三维模型)

至于Selected,在OnClickDown的时候决定的

OnClick事件触发优先级大于OnPointerClick OnClick先添加先触发

Selectable需要Image

对于只有IPointerClickHandler 没有Selectable组件的物体 如果直到根父节点都没有Selectable组件 那么该IPointerClickHandler事件会被触发 但是EventSystem.current.currentSelectedGameObject为空

否则,该IPointerClickHandler事件不会触发 同级物体不会触发,直接跳到有Selectable的父级物体

但是,父级物体不会触发OnClick和IPointerClickHandler事件(原物体得有IPointer事件,也就是没有的话,还是会触发的) 但是选中效果会被触发,EventSystem.current.currentSelectedGameObject为该父物体 这是bug,就算父物体不在点击范围也会被触发到

关闭Interactble 将会导致拦截了触摸事件,IPointerClickHandler能触发 但是EventSystem.current.currentSelectedGameObject为空

EventTrigger实现的IPointerClickHandler 就算没有Selectable也能触发 但是EventSystem.current.currentSelectedGameObject为空

以上这些都仅在同一个Canvas里面生效,不会跨越Canvas

Unity3d 组件设计的思考 在使用unity3d之前,我已经知道组件设计的概念,我们某个项目实际上也是基于组件的,虽然底层引擎只是设计了一个最简单的组件框架,遗憾的是其他部分,

[置顶] Unity中对SQL数据库的操作 在Unity中,我们有时候需要连接数据库来达到数据的读取与储存。而在.NET平台下,ADO.NET为我们提供了公开数据访问服务的类。客户端应用程序可以使用A

如何在NGUI上显示粒子特效 最后碰到有人问,如何在NGUI的UI层上合理的显示特效,恰巧以前做过,就在此小述一下什么都不说了,直接上代码吧,相信识货的应该都可以看懂usingUni

标签: unity控制三维模型

本文链接地址:https://www.jiuchutong.com/biancheng/383596.html 转载请保留说明!

上一篇:手机游戏关卡制作(手机关卡类游戏)

下一篇:Unity3d 组件设计的思考(unity ugui组件)

  • 农业免税收入怎么填纳税申报表
  • 金税盘锁死日期是16号,16号能清卡吗
  • 并入房屋价值的土地是否交房产税?
  • 一般纳税人企业所得税多久申报一次
  • 个人独资企业生活费用和经营费用混在一起的
  • 缴纳房产税怎么记账
  • 什一税是什么意思?
  • 有形资产租赁服务的税率
  • 税费退库怎么做凭证
  • 小规模纳税人如何升级为一般纳税人
  • 收到投资款的会计科目
  • 滞纳金为千分之二从何年开始实施
  • 核算科目拨出专票怎么弄
  • 盈余公积属于什么类账户
  • 增值税是购货方交还是销货方交
  • 从基本存款账户之外的银行结算账户转账存入
  • 购置房产按揭应注意事项
  • 哪些税不适用征管法
  • 个人户转账公户用途
  • 奖励积分换取商品会计处理
  • 预交增值税附加税费减免吗
  • 境外派遣员工境外所得税是什么时候申报?
  • 企业作为股东分红上税吗怎么算
  • 购买方开具红字信息表流程
  • 补充养老保险税收规定扣除率
  • 高新企业减免所得税政策
  • 企业的商誉会一直存在吗
  • 购买方已抵扣
  • 初级考试备考计划
  • 子公司注销如何做账
  • 交强险保单被保险人写谁都行?
  • 如何自定义桌面图标排列
  • 促销礼物
  • 不征税收入与免税收入的区别
  • 计算土地增值税时增值额的扣除项目包括
  • php中url
  • 工程施工暂估的成本的依据
  • php查看变量数据类型
  • 委托贷款账务处理
  • 母公司收取子公司利润交增值税吗
  • 拉马克是哪国人
  • csdn创作
  • svg图形是什么
  • 万字短文
  • 前端面试题什么是网络协议
  • vue3和ts
  • 来料加工企业的划分标准
  • 财政拨款结转和财政拨款结余以前年度盈余调整
  • 企业所得税是指利润的税吗
  • SqlServer 2005 T-SQL Query 学习笔记(1)
  • 转让无形资产使用权
  • 财政收据使用范围
  • 税收返还会计核算
  • 车辆购置税计入税金及附加吗
  • 坏账损失记入
  • 交通补贴属于工资薪金所得吗
  • 福利费属于管理费用还是销售费用
  • 一般纳税人销售使用过的固定资产
  • 合同取得成本包括什么
  • 提高sql执行效率的方法
  • Windows下MySQL5.7.18安装教程
  • sql里面时间函数格式
  • windows server 2008 r2离线激活
  • win8.1使用技巧
  • centos禁止ip访问
  • 如何设置win10默认程序
  • opengl(mesa) for ubuntu14.04
  • excel的窗口包含什么
  • androidstudio调用so文件
  • 递归怎么调用
  • js引入css文件
  • jquery jsonview
  • 不宜用于
  • 如何在unity里设置碰撞体积
  • vue.js如何使用
  • jquery java
  • 设置自定义
  • 陕西省税务局发来信息通知
  • 乾隆年间财政收入统计表
  • 生产企业出口退税账务处理会计分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设