Unity UI笔记

Scroll Rect组件

  • Content指向的是能用鼠标拖动的物体。Viewport指向的是限定Content能移到的范围的物体。
  • Content指向的物体还必须是Scroll Rect所属物体的子物体才能拖动
  • 如果Viewport指向的物体完全包围了Content,则拖动后松开鼠标,Content会自动回到Viewport的中心。(设计者的意图是显示区域已经完全够显示Content了,所以无需拖动)而且此时下面说的Viewport对Content移动范围的限制会失效,只要不松鼠标,能一直拖直到鼠标到屏幕边界。

  • Content最往下能移到Content的上边缘和Viewport的上边缘对齐,其他边缘同理。如下图,Content是淡白色区域,Viewport是红色块,在勾选Horizontal和Vertical的情况下Content的移动范围如图。Content的移动范围其实和Scroll Rect所属物体的区域没有关系。鼠标在Scroll Rect所属物体的区域(淡黑色区域)或Content内按下都能拖动Content。

Mask组件

  • 需要同时挂载一个Image组件才有用,只显示Image区域的子物体。Mask不会影响鼠标按下能拖动的区域。

  • 以上两个组件中一共出现了3种范围,分别是Content可移到的范围,鼠标按下可拖动的范围,显示Content的范围。一般来说,3个范围应该一致,使用起来才不感觉奇怪。

Grid Layout Group组件

自动制表的组件。会令所有子物体的大小、位置不能调整,统一由这个组件调整。

Content Size Fitter组件

会改变所属物体的长宽,依据是它的子物体所占据的区域。

Image组件

Color

Color是和Source Image的RGB相乘,所以白色*蓝色=蓝色,红色*蓝色=黑色

Material

UI/Default着色器、模板测试

带stencil是模板测试相关的参数。

模板测试的参考文章:

UNITY的Mask的替代用法 - 知乎 (zhihu.com)

技术美术百人计划 | 《3.1深度测试与模板测试 》笔记_unity 模板测试-CSDN博客

UI元素的渲染顺序是Hierarchy从上到下,模板测试阶段会拿这个元素材质的Stencil ID和Stencil缓冲区里的值比较,根据Stencil Comparison给出的判断标准判断模板测试是否通过。

这篇文章里【unity小技巧】实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)_unity 开镜-CSDN博客

定义了一个镂空材质:

一个背景材质:

并把镂空放在上面:

RectTransform几个字段的含义

anchorMax和anchorMin

选择中间的9种单锚点模式时,anchorMax和anchorMin一样,是此锚点在父物体里的归一化坐标。选择6种双锚点模式和4锚点模式时,anchorMin是偏左下的锚点的归一化坐标,anchorMax是偏右上的锚点的归一化坐标。

ba3c561437f9b2906e2e490e170a5091.png

如选中间的anchorMax和anchorMin都是(0.5,0.5),选左上都是(0,1)

sizeDelta

x是面板的宽度和锚点之间x距离的差值。对于单锚点,锚点之间x距离是0,sizeDelta.x就是面板宽度;对于左右双锚点,如果锚点在左右边缘,那么面板和屏幕同宽的时候,sizeDelta.x是0,屏幕宽1920,面板左边和屏幕左边对齐,右边在屏幕右边480,那么sizeDelta.x是480.y同理。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值