位置: 编程技术 - 正文

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组件)

  • 解聘补偿金赔偿标准2023
  • 不开票收入要交所得税吗
  • 预缴企业所得税怎么做会计分录
  • 电信电话费计入成本吗
  • 净资产增加额计算公式
  • 员工备用金期末未报销怎么处理
  • 职工集资建房款属公款吗
  • 离境退税政策文件
  • 库存商品毁损会导致什么
  • 2020年购进农产品的扣除率
  • 工会是否具有有法律效力
  • 为员工购置小车怎么做账
  • 发票后附的销售清单怎么黏
  • 税前金额是不含税金额
  • 租赁发票多少点
  • 增资溢价率
  • 保税区内的货物交易
  • 存货清查的步骤
  • 餐费没有发票怎么入账
  • 社保基数填错了 可以退款吗
  • win101703怎么看
  • 房地产企业收到的首付款要交税吗
  • 增值税明细账怎么登记
  • php实现的mongodb操作类实例
  • 受限制用户怎么解决
  • 不动产经营租赁范围
  • 安装win7提示版本过低
  • 梵净山原名
  • vue 移动端
  • 小型微利企业减免所得税计算公式
  • 在树洞中休息的英语
  • php输出对象
  • 应收借方表示什么
  • Yii CDBCriteria常用方法实例小结
  • WGAN(Wasserstein GAN)看这一篇就够啦,WGAN论文解读
  • python每行输出五个且对齐
  • 租赁汽车折旧年限怎么算
  • 商户待清算账户是什么
  • 企业单方面调整员工的工作岗位
  • 旅行社的增值税税率
  • 什么是备抵类账户
  • 出口货物赠品如何申报
  • 销售货物应税劳务清单怎么填
  • 库存商品暂估入库是什么意思
  • 废旧物资处理的税金
  • 生产辅料清单
  • 实收资本可以以现金入账吗
  • 在我国土地使用权分为哪几类
  • 航天金税盘维护费发票在哪打印
  • 累计折旧减少记哪方
  • mysql 5.7.21安装教程
  • windows10如何更改管理员账户
  • 如何解开win10电脑密码
  • linux的用户
  • windows电脑设置
  • win7回收站路径在哪里
  • win7宽带自动拨号设置
  • win7系统文件夹怎么加密码
  • xp系统ie浏览器怎么升级
  • linux mount -o remount
  • gnaupdaemon.exe是什么
  • 笔记本搜索功能用不了
  • windows10mobile官网
  • gb4.exe
  • win7无法登录桌面
  • backtracker
  • c#在unity的作用
  • linux中文件权限读写执行的三种标志符号依次是
  • Node.js中的全局变量有哪些
  • unity更新需要重新下载吗
  • JavaScript File API实现文件上传预览
  • ready jquery
  • 浙江省国税电子税务局如何新增企业
  • 深圳企业所得税税率多少
  • 广东高速费用支付宝支付如何开发票
  • 可以抵扣的消费税项目
  • ca锁使用
  • 建筑企业税务清算流程图
  • 珠海南湾国际属于香洲哪个街道
  • 委托人委托代理人的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设