UGUI六大基础组件——Graphic Raycaster
一、组件作用
图形摄像投射器是用于检测UI输入事件的射线发射器。通过射线检测玩家和用户的交互,判断是否点击到了UI元素。
注意:不是通过碰撞器来检测的,而是通过图形来检测的。
二、参数解释

***************************************************************************
第一个参数:
注意Ignore Reversed Graphics是是否忽略反转图像,这里的反转包括上下反转和左右反转主要是关于x和y的反转,对与z的反转是无效的,因为绕Z的旋转还是面朝前,这是没有影响的,
而绕X和Y轴会使得反面超前。以一个Button为例。
原始状态:

改变Z轴:

变成:

只是旋转了,但还是面朝我们,可以点击。
改变X轴,就是绕X轴旋转,进行反转:

变成

可以发现,此时的按钮已经背对我们了,注意这里不是旋转得到的,可以从原图像旋转看看,会发现得不出这个图像,只有通过反转(绕X轴旋转)才能得到。
此时如果忽略反转图形(即该参数被勾选),那么反转得UI图像就被忽略了,就无法进行点击事件得响应了。
同样,改变Y轴,也会达到反转的效果。

变成:

同样会发现,只要勾选了该参数就无法响应点击事件。
*************************************************************************************
第二个参数
Blocking Object 是射线被哪些碰撞器阻挡,注意,这在渲染模式下是无法显示这个参数的作用的,因为渲染模式下的UI始终在3D物体之前不可能被阻挡。
当把渲染模式改成摄像机模式,可以检测这种模式的作用,在Button前创建一个3D物体和一个2D物体,由于2D物体没有碰撞器,所以我们给2D物体添加一个盒碰撞器。
在默认情况下,这个参数默认是None代表什么碰撞器都不能阻挡对UI的射线检测,此时无论在哪个物体上都不能不会阻挡按钮对点击事件的相应。
如图,会有响应,注意颜色变化。


如果将选项选择为Two2D那么在2D图像上点击就不会有按钮事件响应(注意颜色对比)


由于没有选择3D那么在3D物体上点击按钮任然会响应。

同样的原理如果选择3D或者All,那么相应的对象就会阻挡UI检测。
********************************************************************************
第三个参数
是代表被哪些层级挡住,如果取消某些层级,若一个物体选择了该层级,那么就算第二个参数选择了某个类型的碰撞器,只要层级被取消了也不会阻挡与UI的交互。
经常与第二个参数一起起作用。
********************************************************************************
总结:

UGUI六大基础组件——Graphic Raycaster的更多相关文章
- winform快速开发平台 -> 基础组件之分页控件
一个项目控件主要由及部分的常用组件,当然本次介绍的是通用分页控件. 处理思想:我们在处理分页过程中主要是针对数据库操作. 一般情况主要是传递一些开始位置,当前页数,和数据总页数以及相关关联的业务逻辑. ...
- CentOS安装LNMP环境的基础组件
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 在安装LNMP环境之前,请确保已经使用yum安装了以下各类基础组件(如果系统已自带,还可以考虑yum update下基础组件): ...
- Ext学习-基础组件介绍
1.目标 学习对象获取,组件基础,事件模型以及学习ExtJS中的基础组件的应用. 2.内容 1.对象获取 2.组件原理以及基础 3.事件模型 4.常用组件的介绍 3.学习步骤 1 ...
- 如何从零开始实现一个soa远程调用服务基础组件
说起soa远程调用基础组件,最著名的莫过于淘宝的dubbo了,目前很多的大型互联网公司都有一套自己的远程服务调用分布式框架,或者是使用开源的(例如dubbo),或者是自己基于某种协议(例如hessia ...
- android学习——必学基础组件
android基础组件是一个Android的开发人员必须要了解,且深刻理解的东西: 1.应用程序基础 2.应用程序组件 2.1.活动(Activities) 2.2.服务(Services) 2.3. ...
- Android 基础组件
基础组件 所有的控件都可以在java代码中创建出来,并且大部分的属性都对应set和get方法,比如 View view = new View(Context context) context是上下文 ...
- Akka(17): Stream:数据流基础组件-Source,Flow,Sink简介
在大数据程序流行的今天,许多程序都面临着共同的难题:程序输入数据趋于无限大,抵达时间又不确定.一般的解决方法是采用回调函数(callback-function)来实现的,但这样的解决方案很容易造成“回 ...
- App架构师实践指南三之基础组件
App架构师实践指南三之基础组件 1.基础组件库随着时间的增长,代码量的逐渐积累,新旧项目之间有太多可以服用的代码.下面是整理的公共代码库. 2.关于加密密钥的保护以及网络传输安全是移动应用安全最关键 ...
- JMeter各个基础组件简介
刚从LoadRunner转到JMeter,对JMeter的各种概念比较懵.在这里记录下.欢迎大家关注我的个人微信号:测试杂货铺. JMeter的各个功能都是它的组件来完成或实现的,下面来对JMeter ...
- Ansible playbook基础组件介绍
本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...
随机推荐
- MySQL同步部分库注意的问题
同步部分库或部分库表 复制部分库:replicate_do_db 复制排除部分库:replicate_ignore_db 复制部分表:replicate_do_table 复制排除部分表:replic ...
- 打卡node day02--url qs 内置模块
node 内置模块 url [官网链接:http://nodejs.cn/api/url.html] 1.url.parse() 2.url.format() 内置模块Query String 查询字 ...
- oracle查看归档信息
1.查看归档信息 show parameter recovery_file_dest #查看归档目录 show parameter recovery_file_dest_size #查看归档可以存储的 ...
- 小米手机MIUI12获取hci.log的方法记录
按照之前的方式,开发者选项打开获取蓝牙HCI的log开关,但是在本地一直找不到log. 在网上查了很久资料,终于找到有用的方法了.记录一下. 感谢大佬 https://www.jianshu.com/ ...
- oracle 数据库备份脚本(数据泵1-全库)
#!/bin/sh# ################################################################### Powered by Ironfo# ## ...
- python菜鸟学习: 6. 字典常用方法
# -*- coding: utf-8 -*-dict1 = {"name": "liyuzhoupan", "age": "22 ...
- JavaScript 字符串的操作
1. 在指定位置,插入字符串(此需求来源于,img中src没值的字符串标签中,插入图片http地址) // 使用slice写出的 自定义方法,绑定在String的原型链上 String.prototy ...
- flutter 使用阿里iconfont图标库
1. 打开Iconnfont,选择自己想要的图标添加到购物车! 2,在右上角点开购物车选择下载代码. 3. 解压下载的代码压缩包,我们可以看到一个iconfont.ttf 4. 在项目根目录下创建一个 ...
- epoll 基本知识与使用
https://blog.csdn.net/qq_35721743/article/details/86742508 epoll 最大的好处在于它不会随着监听 fd 数目的增长而降低效率. epoll ...
- 前端常用函数(find、includes、filter、Set、forEach、map、some、every、findIndex、splice、reduce)
https://blog.csdn.net/qq_24280125/article/details/119275109 array.join(separator) .拼接返回字符串 参数 separa ...