Unity UI基础

(Raycast Target都表示是否成为射线目标,即是否响应鼠标点击)

一、Rect Transform基本参数

Anchors

代表了这个物体的锚点相对于父物体的对齐方式(锚点在左上角时,代表物体针对父物体的左上角对齐,移动左上角的时候,子物体会跟随父物体移动)

   (锚点默认以父物体的左下角为(0.0)点,锚点在父物体的几何中心时,对应的参数就为min(0.5,0.5 ) max(0.5,0.5))

Min

可以理解为做部分锚点的坐标(同理可知,max就是另一部分,不做赘述)

Pivot

 Pivot表示这个物体的中心点的位置,(0,0)代表物体的左下角,(0.5,0.5)就表示物体的几何中心,(1,0.5)如图上图所示。

(其余值类推即可)

 图中的灰蓝色圆圈,代表的是物体的中心位置,想要将Pivot显示出来,看下图

将红色箭头处切换到Pivot模式,就可以显示出Pivot的位置

Pivot技巧

将轴心点设置为(0,0.5)时,如果直接去改变图片的宽度,那么图片将会向右侧延申

适合用作列表等

二、锚点(Anchor)的三种情况

(一)、四个锚点合一

     此时它的参数面板如左图                      

这个时候相当于把锚点看成坐标系的原点

  • PosX、Posy、PosZ:代表pivot在这个坐标系的位置(Pivot 代表图片的中心的的位置,(0.5,0.5)就表示图片的中心就是几何中心
  • width、height:代表物体的高度和宽度

(物体大小不会受到任何缩放的影响,但是相对距离保持不变)

(二)、锚点分为上下两部分

PosX含义不变

Top、Bottom的含义如上图

物体有可能随着父物体的缩放而缩放(没有移动锚点所在的父物体侧边的时候,就不会发生缩放,例如锚点在左侧边上,移动右侧边不缩放),保持上下边框和锚点的相对间距以及锚点侧的边和锚点的间距不变

(三)、锚框

Left Top Right Bottom 就为物体四个边与锚框的相对距离

(物体会随着父物体的缩放而缩放,保持相对距离的不变)

三、蓝图模式和原始编辑模式

(这两个模式都是在Inspector面板操作时候才会起作用,直接手动修改Scene没作用)

蓝图模式

在蓝图模式下,对UI图片的缩放是不会影响UI的响应区域的

原始编辑模式

在原始编辑模式下,我们操作锚点和轴心点的时候图片也会跟随移动。

四、获取当前UI图形的宽、高

当锚点被修改的时候,使用下列方法获取宽高是最安全的

RectTransform rect =transform.GetComponent<RectTransform>();
rect.rect.width;
rect.rect.height;

五、Canvas

(一)、渲染模式

Render Mode:相机的渲染模式

Screen Space-Overlay

代表它旗下的UI是在显示界面最上层的,覆盖在其他之上(与摄像机的位置是没有关系的)

Pixel Perfect:勾选上之后,抗锯齿就失效了(控制图片像素,勾选上之后图片像素不会发生偏差)

Sort Order:渲染排序

Target Display:控制相机的显示的界面(需要和Game视图中的Display 和MainCamera中的TargetDisplay联动)

Screen Space-Camea

需要与摄像机关联,整个画布就会变成了摄像机视域的一个切面 (如下图)         

            

WorldSpace

代表整个画布可以看成3D空间的一个 Plane一样

(二)、Canvas Scaler

UI Scale Mode

Constant  Pixel Size:固定像素大小,只能通过Scale Factor调节UI元素,除此之外UI元素不会发生任何变化。

Scale With Screen Size:根据屏幕的具体大小进行缩放,需要先设置Reference Resolution (参考屏幕分辨率)一般设置为主流分辨率,然和结合实际屏幕大小进行缩放

  •  Match:Match值决定了用高还是宽的值来进行具体的缩放比例(为0只通过宽参考,为1只通过高参考,为0.5都参考一半)

Constant Physical Size:保持物理不变 

  • Physical Unit :选择物理单位

                             DPI:一平方英尺内的点数

                            Fallback Screen DPI:无法正确获取当前屏幕的DPI时,默认使用这个DPI

                            Default Sprite DPI :默认的DPI数量

Scale Factor

代表整个Canvas的缩放(其子物体全部缩放)

Reference Pixels Per Unity

要和图片属性中的Pixels Per Unity联动使用

Reference Pixels Per Unity指的是一个Unity单位对应的元素是多少像素

Pixels Per Unity指的是多少像素对应一个Unity单位

(三)、Graphic Raycaster

用来管理UI点击响应的组件(不勾选的话,UI组件不接受鼠标点击影响)

Ignore Reversed Grap:忽略翻转的图片(所有Rotation不为0的图片都会被忽略)

Blocking Objects:代表了会阻挡当前射线的对象类型

  • None:都不阻挡
  • Two D:挂在了2D碰撞体的物体会阻挡射线
  • Three D:挂载了3D碰撞体的物体会阻挡射线
  • ALL:挂在了3D、2D碰撞体的物体都会阻挡射线

Blocking Mask:阻挡射线的层级

(四)、Canvas Group

Alpha:修改透明度(包括子物体一起修改)

Interactable:是否能接受点击响应(如果取消勾选则接收不到点击响应)

Blocks Raycasts:

Ignore Parent Groups:是否忽略父级Canvas Group的影响

六、影响UI层级渲染的四种因素

(一)、Camera中的Depth属性

Depth的值越大显示在越前面

(二)、Canvas中的Sorting Layer和Order In Layer

Sorting Layer是渲染层级

越先显示的关系  Default>first>second

Order In Layer是在该层级中的渲染顺序

数字越大越先显示

(三)、自然层级

七、UV坐标(Raw Image中)

UV坐标指的是贴图映射到模型表面的坐标

x:代表图片向左右的偏移量(左正右负)

y:代表上下的偏移(上负下正)

w:代表显示图片的长度比例(范围是0-1)  0.1表示显示原图片长度的10%(用原图片10%的内容占据整个图片的位置)

H:代表显示图片的高度比例(范围0-1)

八、UI事件系统

  UI事件系统主要有上图三部分组成(EventSystem下的Event System、Standalone Input Module和Canvas下的Graphic Raycaster)

Gracphic Raycaster是只会和基于Gracphic类的对象发生射线碰撞(一般2D\3D的射线,是和2D、3D的Collider发生碰撞,不会和Gracphic发生碰撞)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值