位置: 编程技术 - 正文

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

  • php 截取utf-8格式的字符串实例代码(php 截断)

    php 截取utf-8格式的字符串实例代码(php 截断)

  • MongoDB使用指南--基本操作(mongodb使用场景 简书)

    MongoDB使用指南--基本操作(mongodb使用场景 简书)

  • 谈谈sqlserver自定义函数与存储过程的区别(sql自定义)

    加入一笔记录到表bankMoney,并查询此表中userID= Zhangsan的所有存款的总金额。

    在这里再??乱幌麓娲⒐?痰?种传回值(方便正在看这个例子的朋友不用再去查看语法内容):1.以Return传回整数2.以output格式传回参数3.Recordset

    传回值的区别:

    output和return都可在批次程式中用变量接收,而recordset则传回到执行批次的客户端中。实例3:使用带有复杂 SELECT 语句的简单过程  下面的存储过程从四个表的联接中返回所有作者(提供了姓名)、出版的书籍以及出版社。该存储过程不使用任何参数。

    实例4:使用带有参数的简单过程

    实例5:使用带有通配符参数的简单过程

    实例6:if...else存储过程,其中@case作为执行update的选择依据,用if...else实现执行时根据传入的参数执行不同的修改.

    深入分析SqlServer查询计划 对于SQLServer的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题,因此本文只谈优化查询时如何看懂SQ

    sql 判断字符串中是否包含数字和字母的方法 判断是否含有字母selectPATINDEX('%[A-Za-z]%',‘ads')=0(如果存在字母,结果1)判断是否含有数字PATINDEX('%[0-9]%',‘sdf" class="img-responsive" alt="谈谈sqlserver自定义函数与存储过程的区别(sql自定义)">

    谈谈sqlserver自定义函数与存储过程的区别(sql自定义)

  • Linux系统下chkconfig命令使用详解(linux中chkconfig命令的作用)

    Linux系统下chkconfig命令使用详解(linux中chkconfig命令的作用)

  • ubuntu下安装VNC远程桌面的详细步骤(ubuntu16安装vnc)

    ubuntu下安装VNC远程桌面的详细步骤(ubuntu16安装vnc)

  • 在Linux系统中使用fuser命令来列出进程编号(在linux系统中命令)

    在Linux系统中使用fuser命令来列出进程编号(在linux系统中命令)

  • 使用ntpdate工具校正linux服务器时间(实现方法)(ntp ntpdate)

    使用ntpdate工具校正linux服务器时间(实现方法)(ntp ntpdate)

  • JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)(js的定时器函数)

    JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)(js的定时器函数)

  • 跨年发票入账账务处理
  • 如何理解递延所得税资产和递延所得税负债
  • 个体户能开增值税普通发票给单位吗?
  • 公司如何做成集团
  • 增值税免税是否计入营业外收入
  • 政府会计制度固定资产折旧哪个月开始计提
  • 一年内到期的非流动负债包括哪些科目
  • 材料盘亏可收回成本吗
  • 银行存款收款凭证是原始凭证吗
  • 原材料投资入股协议约定价值公允价值
  • 水利基金按含税还是不含税申报
  • 为什么销售人员佣金计入合同取得成本
  • 购进固定资产抵扣时咋填报增值税
  • 小规模季度超过30万怎么填报增值税
  • 直接计入所有者权益的利得是
  • 坏账损失的账务处理办法
  • 电厂采购通常采购什么
  • 1697509099
  • 收到外运公司托收海运运费单据1000美元
  • 捐赠固定资产入账价值
  • dgservice.exe是什么
  • php面向对象是什么意思
  • 计入固定资产成本的费用
  • PHP:stream_context_create()的用法_Stream函数
  • minilauncher是什么
  • PasSrv.exe - PasSrv是什么进程 有什么用
  • 重楼的功效与作用价格
  • johnny kim宇航员
  • wamp设置
  • 债务转换为资本
  • php的框架有哪些
  • 税前扣除项目什么意思
  • wordpress shortcode
  • 程序员后续发展
  • jsoup js
  • df -th命令
  • 可供分配利润是留存收益吗
  • 费用报销单票据怎么填
  • db2udb
  • 特殊工种人身安全责任书
  • 固定资产资本化后续支出
  • 小规模年度企业所得税纳税申报表
  • 建安企业费用有哪些
  • 公司购买股东的东西
  • 会计里的管理费用包括什么
  • 园林绿化行业的市场需求是什么
  • 固定资产报废怎么开票
  • 业务招待费属于管理费用吗
  • 三栏式明细账目录表
  • 弃置费用预计负债的会计处理
  • 应交增值税借贷方发生额表示
  • 企业研发费用怎么证明
  • 收到上市公司分红企业所得税减半征收的情景
  • 企业研制新产品
  • 非营利医疗机构免征哪几种税
  • SQL Server 2000 清理日志精品图文教程
  • win9什么时候发布的
  • xp系统如何批量复制文件路径
  • 解析包出现错误无法安装怎么办
  • ubuntu简单的命令
  • 苹果mac无法连接网络
  • win10怎么安装网络驱动程序
  • Win7中Remote Procedure Call(RPC)服务能关闭吗
  • mtask.exe - mtask是什么进程 有什么用
  • 怎么做win8系统
  • 创建自己百度百科
  • app塔防游戏
  • node.js环境搭建
  • Android SQLite总结(一)
  • perl计算时间差
  • jquery的事件处理有哪些
  • android 退出app
  • css渲染规则
  • [置顶]津鱼.我爱你
  • 在批改中,可以使用x表示错误
  • vue中的计算属性forEach函数的使用
  • 美国进口税起征点
  • 国家税务局四川增值税发票查询平台
  • 网上申领的电子发票如何读入金税盘
  • 杜蕾斯验证真伪扫描
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设