位置: 编程技术 - 正文

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

  • 全国增值税发票服务平台
  • 跨年度的租金收入如何入账
  • 延期申报后可否延期缴纳税款
  • 综合收益总额与什么有关
  • 土地增值税扣除项目金额怎么算
  • 已经作为损失的资产以后纳税年度收回的会计处理
  • 企业所得税季度预缴可以弥补以前年度亏损吗
  • 资产组减值测试要包含使用权资产吗
  • 政府扶贫支出
  • 货样广告品出口需要开票吗
  • 企业支付小额劳务费税率
  • 企业生产成本核算的一般程序为
  • 公司年会增值税专用发票可以抵扣吗?
  • 个人所得税申报退税的条件
  • 建筑公司资源税的征税
  • 发票停票会自动恢复吗
  • 网上申请的增值税专用纸质发票收到后如何确认已收到
  • 股东以资产入股公司
  • 借款的印花税入哪个账户
  • 被强制升为一般纳税人的条件
  • 一直零申报会怎么样
  • linux 将一个文件的内容给另一个文件
  • 仓库折旧费
  • 金税盘纳税申报
  • 工资只发一半
  • 非限定性净资产相当于哪个科目
  • win11正式版问题
  • 房地产企业如何结转成本
  • 怎么区分债券折价还是溢价
  • php限制登录次数
  • elementui
  • 华侨是否适用个人所得税
  • unbutun系统
  • framework架构
  • 计提坏账准备和转销坏账准备
  • 销售商品的结转
  • framework教程
  • vue-mapvgl
  • yolo训练参数
  • php运用
  • 勾选发票提交后如何
  • 蔬菜免征增值税优惠
  • 租金计入主营业务成本吗
  • 金税盘v2.0.41怎么扫码开票
  • 房屋租赁需要计提印花税吗
  • 原材料暂估入库分录
  • 差旅费税前扣除政策
  • 金融资产经营资产
  • 企业所得税不能税前扣除项目
  • 所有者权益是怎么排列的
  • 异地预缴的企业所得税
  • 丁字账户例题及解析
  • 小轿车折旧年限规定
  • 红冲去年费用会计分录
  • 国有资产保值增值率
  • 冲销以前月份的凭证
  • 购买汽车的工本费如何入账
  • 无法收回的应收账款如何进行财务处理
  • 报销程序是什么
  • 配置零部件
  • 财务顾问费可以税前扣除吗
  • sql将一个数据库的表导入到另一个数据库
  • freebsd联网
  • centos6.8安装不上
  • redhat磁盘挂载
  • scrnsave.exe
  • 怎么学linux
  • centos常用命令安装
  • 安装阿里旺旺步骤
  • win10更新到win11
  • 在linux中使用v2ray
  • win8.1系统要求配置
  • ,linux
  • android app启动过程
  • 利用css样式控制文本的字体属性是什么
  • 攻击判定是什么意思
  • nodejs数据加密
  • 三个文件怎么汇总到一个里
  • 关于Air端与android端的通信实现
  • 开票软件重置密码去哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设