位置: 编程技术 - 正文

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

  • 设备租赁公司印花税怎么交
  • 小规模减免增值税要交企业所得税吗
  • 无发票情况说明怎么写学生
  • 幼儿园伙食收支盈亏比例
  • 外贸企业出口退税计算公式
  • 实际发生坏账后要把计提的坏账冲回吗?
  • 股息红利纳税地点
  • 公司对员工的罚款最多可以罚多少
  • 购原材料红字发票会计分录怎么写?
  • 汇算清缴预提费用调整政策
  • 诉讼财产保全保险费计算
  • 公司支付宝账户怎么登录
  • 退回房租含税的情况怎么入账?
  • 没有合作会怎么样
  • 零售汽油费发票需要交印花税吗?
  • 企业税收扣除标准
  • 资管产品征税
  • 报个税系统叫啥
  • 资产总额和净资产总额的区别
  • 资产负债表应交税费计算公式
  • 降温费和取暖费标准
  • 房地产企业预收房款开票
  • 海关增值税发票双抬头
  • 子公司之间固定资产划转 增值税会计处理
  • 原材料对外投资进项税额可以抵扣吗
  • 住房公积金相关文件
  • 跨年度增值税发票作废怎么退税
  • 行纪人的权利
  • 固定资产折旧方法的选择
  • avsched32.exe是什么进程 avsched32进程有什么作用
  • 增值税纳税人申报表怎么填写
  • 初级会计应收账款例题
  • excel js宏
  • 促销商品的方法
  • 何为租赁合同
  • 房屋装修各项费用比例
  • 下岗再就业有什么优惠政策
  • PHP/HTML混写的四种方式总结
  • php制作验证码
  • 税前扣除项目什么意思
  • 核销固定资产时会计处理
  • 提租补贴计入个税吗
  • vue做项目的流程
  • 研发费用计入营业利润吗
  • 物流公司可以作为货物收货人吗
  • 自然人专项扣除填报
  • python socket连接后发送数据被强行终止
  • 不抵扣勾选的发票在哪里查看
  • 企业存货的账务处理办法
  • 恢复从回收站已经清除的文件
  • 发票验旧后还要缴销吗
  • 公司为非本单位缴纳社保
  • 关联方交易金额达到多少算转移定价
  • 年度纳税申报时间
  • 公司员工入职的心得体会
  • 新建厂房房产证办理流程
  • 未抵扣进项税额转出会计分录
  • 红冲上一年度销售收入
  • 成本类科目借贷规则
  • 明细账的作用
  • php的每条语句以什么结尾
  • macos safari无法使用
  • windows ftp软件
  • xp系统如何查看系统配置
  • windowsxp教程
  • linux添加启动
  • windows xp.
  • win7装完系统我的电脑在哪
  • dos命令不能执行怎么回事
  • dos跳转到指定目录
  • excel一行首尾互换
  • android颜色值
  • js debounce实现
  • jquery常用的5个方法
  • 四川省国家税务局电子税务局
  • 东莞税务申报日期
  • 小规模纳税人销售额怎么算
  • 买下中国需要多少钱?
  • 税务ca证书过期
  • 代理记账广告语怎么写
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设