位置: 编程技术 - 正文

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
  • 地税补缴社保
  • 利润总额和净利润相同说明什么
  • 非盈利组织是什么
  • 临时工工资为什么那么低?
  • 以前年度损益调整属于哪类科目
  • 职工福利部门的工资
  • 城市维护建设税减免税优惠政策
  • 小规模企业的企业所得税怎么交
  • 软件的维修性要求
  • 中方人员取得的工资、薪金所得,征收个人所得税有特别规定吗?
  • 股东个人借款用于公司怎么处理
  • 金税盘抵扣增值税申报
  • 在建工程完工后如何转为固定资产
  • 现代服务业如何提升为人民服务
  • 展会门票入什么科目
  • 劳务费开发票还要代扣代缴吗?
  • 咨询费的税费
  • 自建不动产领用原材料的进项税
  • 如何设置bios开关机
  • ConquerCam.exe进程的详细介绍 ConquerCam进程信息介绍
  • PHP:parse_ini_string()的用法_Filesystem函数
  • 二手固定资产怎么折旧
  • 财务费用核算的内容没有
  • 预提收入需不需要计提增值税
  • php echo语句
  • 专项储备计提和使用
  • 劳务报酬所得缴纳税款是公司代缴吗
  • php上传不了文件
  • mysql ndb innodb
  • 特殊劳务交易的法律规定
  • 个体生产经营所得优惠政策
  • 电子银行回单可以导出吗
  • 政府补助为什么是递延收益
  • 代垫运杂费计入原材料成本吗
  • 期末调整汇兑损益计算
  • 小规模企业出售汽车如何交税
  • mongodb导入数据三种方式
  • 电商会计如何做账
  • 保单的增值税发票能抵税吗
  • 资产减值损失包括什么
  • 农产品增值税免税发票怎么抵扣
  • 季度利润表是累计数吗
  • 只收加工费
  • 补缴以前年度的印花税会计分录
  • 红冲以前年度的费用怎么做账
  • 机械租赁的主要工作内容
  • 购货方收到红字发票计入进项税转出还是进项税额负数?
  • 筹建期间取得的利息收入 企业所得税
  • 如何取消已经生产的产品
  • etc 电子票
  • 诉讼代理费计入成本吗
  • 跨两年的发票可以冲红吗
  • 应收票据属于其他货币资金吗
  • 进口关税增值税可以抵扣吗
  • 收到的专票必须当月认证吗
  • win7 mysql5.7.21安装
  • mysql字段什么意思
  • Win10系统安装包
  • linux日常使用
  • windows8音频服务尚未启用 怎么解决
  • windows显示缩略图
  • xp系统怎么卸载驱动程序
  • 怎么把硬盘安装到电脑上
  • unity3ds
  • 对于cookie的描述
  • linux程序打包和安装
  • 超酷风格
  • 安卓版影音播放器哪个好用
  • linux守护进程管理
  • nodejs快速入门
  • unity引擎叫什么
  • 化妆品关税怎么算
  • 委托贷款的手续费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设