位置: 编程技术 - 正文

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

  • 房地产业所得税
  • 公益组织收到捐赠款计入什么科目
  • 金税三期电子发票怎么领取
  • 进项税额已抵扣转出会计分录
  • 上年数为负数,今年数为正数怎么算增减比率
  • 售后回租的实际操作流程
  • 进口缴纳关税
  • 企业理财收入交哪些税
  • 出口退税对企业利润的影响
  • 应付质保金到期怎么办
  • 库存商品转在建工程摘要怎么写
  • windows更新显示
  • 系统浏览器
  • 政策性搬迁的会计处理
  • 判断企业存货过多的判断方法
  • 原始凭证必须具备的基本要素
  • csinsmnt.exe进程的作用介绍 csinsmnt是什么进程
  • 企业所得税的纳税人包括哪些
  • 生产设备改良支出计入什么费用
  • 收取跨年租金会计处理
  • 未履行的应税合同缴纳印花税
  • php 查找数组元素
  • 企业管理的管理系统
  • html在线小游戏
  • javaweb项目简介
  • php中字符串的连接运算符是( )
  • thinkphp 分页
  • 投资公司如何注册勘察设计工程师证书
  • 应付账款会计分录大全
  • python统计出现次数并排序
  • phpcms api
  • 有效税额可以更改吗
  • 小型商贸企业
  • 个人利息收入怎么计算个税
  • 公司转让商铺应交什么税
  • 店面收回转让费怎么办
  • 不征税收入和免税收入的本质区别
  • 合伙企业年终分红会计分录
  • 印花税处罚适用征管法六十四条规定
  • 周转材料计入现金流量表
  • 工地的工人工资怎么入账
  • 多付款项退回怎么做账
  • 三栏明细账本怎样填写
  • 商业承兑汇票提示付款流程
  • 跨期发票会计处理
  • 贷款服务可以抵扣进项税额吗
  • 网吧是个人独资企业还是个体工商户
  • 咨询服务费开票税率
  • 如何提取工会经费的钱
  • 核定征收需要带什么资料
  • 固定资产标准提高是政策变更吗
  • 企业建账目的
  • win8.1怎么安装软件
  • centos安装软件教程
  • 还原windows是什么意思
  • linux CentOS/redhat 6.5 LVM分区使用详解
  • 使用windows管理无线
  • win8安全和维护在哪
  • android开发mvc mvp mvvm
  • virtualbox装linux
  • linux jdk
  • 前端面试题及答案2023vue3
  • 谈谈jQuery Ajax用法详解
  • js的匿名函数
  • jquery escape
  • python模板引擎开发
  • js验证正整数
  • Unity3D游戏开发标准教程
  • 发票查询打印如何操作
  • 青岛市地方税务局网上办税厅
  • 税务局绩效奖金多少
  • 电子税务局做什么的
  • 江苏省财务官网
  • 消费税组成计税价格为什么要除以1-消费税率
  • 江苏宿迁个体户那个园区好
  • 银行与企业之间的信用
  • 作为税务人员哪些基本素质
  • 高新区地税办税服务厅
  • 申报农业项目的程序是什么?
  • 企业资质怎么报审
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设