unity UI学习记录
来源:互联网 发布:武汉js防水材料市场 编辑:程序博客网 时间:2024/06/16 19:43
最近学习了一下UI,趁没忘记记一下要点。
要点一
canvas三种模式,
1.screen space-overlay 2 screen space-camera 3 world space
overlay优先级最高,内部以在hierarchy中的上下顺序排序,越靠后优先级越高,可以理解为越后面刷油漆,覆盖前面。
camera模式,不同摄像机的depth优先级不同,depth越大,越后刷油漆,优先级越高。相同depth的camera调节sorting layer与order in layer不管用。另外不同的camera不会同时显示各自的画布到game窗口中,因为运行时只能同时显示一双眼睛,不可能同时显示多双眼睛,否则画面会重叠紊乱。调节camera的clear flags 选择depth only,调节culling mask选择ui,就可以将不同摄像机的ui同时显示到game窗口中。
同一camera,以sorting layer 然后order in layer 然后plane distance优先级顺序,前两者都是值越大越后刷,plane distance越近越优先。
screen space-camera与world space比较,想象为拿着自拍神器在3D场景中行走,谁离camera近先显示谁,同样的world space中,sorting layer 与order inlayer优先,然后是距离camera的远近,与3d物体如cube也是通过距离比较。
要点二
UI位置确定方式
UI位置通过Rect Transform组件确定,Anchors显示的值是锚点在画布中的相对位置,0~1。当Anchors分为4瓣时,显示的值为4条边相对于画布的位置。Pivot相当于UI自身的位置代表点,显示的值为相对于自身的位置信息,0~1。Anchors与Pivot都是以左下方为基准。UI的位置是通过Pivot与Anchors的距离确定的,当Anchors为点时,以PIvot点与Anchors的pos x(距离x),pos y(距离y),width,height决定。当Anchors为4瓣时,通过物体的上向左右四边与Anchors的上下左右四边的距离确定。简单来说,先确定Anchors相对于画布的位置,再确定Pivot相对于自身的位置,最后通过Pivot与Anchors的距离确定。另外同样控制大小的width,height与scale的区别,前两者小于0时UI不显示,而scale小于0时UI翻转。
要点三
image组件
图片在Assets文件夹中,可以以多种方式存在。选中图片,texture type选择sprite精灵模式,sprite mode可选single或者multiple,区别为一张图是作为整体用还是切成多张用,点击sprite editor可切出多张精灵,并且设置整张或多张的九宫格比例。九宫格在放缩中,四个角不变,上下边可左右拉伸,左右边可上下拉伸,中间可随意拉伸。image组件中,image type有simple,sliced,tiled,filled四种选项。simple简单放缩,sliced九宫格式放缩,tiled平铺填充,filled就像进度条与技能冷却一样,水平,垂直,180,360。preserve aspect 选中之后按原始比例放缩,set native size,还原原始大小。
其中的Material(材质球)选项,涉及到UI自带的三种特效之一position as UV1,后面讲。
Raw image组件
基本与image一致
要点四
Text组件
Rich Text选中时,text中<b>与</b>之间的内容加粗,<I>与</i>之间的内容为斜体,<color=blue>与</color>为蓝色。<size=30>与</size>之间字号为30。注意line spacing(行距)不能为0,为零换行重叠。
要点五
UI自带特效
component到UI到 effects到shadow 与outline 与position as uv1,shadow与outline差不多,没什么可说的,position as uv1,选中显示Material的效果,不选中不显示。在创建Material时,sharder选择UI/Lit/Detail,将特效图片拉进去,制作好Material后,拉入image或text等组件中,如果UI突然消失,选择canvas的其他模式,另外要调节光照,这样特效才能显示出来。
要点六
selectable组件
interactable选中交互,不选中不交互,为disable状态,transition三种模式,color、sprite、animation、分别有正常、高亮,按下,失能状态。color multiply,RGB颜色数值乘以其值。fade duration,四种状态发生变化的过度时间。Navigation /visualize使得路径可见。刚开始的选中UI可以通过程序控制。public Selectable myselect; myselect = gameObject.GetComponent<Selectable>(); myselect.Select();
要点七
button组件
On Click()添加事件- unity UI学习记录
- Unity学习笔记 之 触发Unity UI 的 Button 事件 的代码记录
- Unity学习笔记 之 关于 Unity UI 的 Slider 的代码记录
- Unity UI 学习
- unity学习记录
- 9.24 Unity学习记录
- unity shader 学习记录
- UI框架学习记录
- Unity插件EasyTouch学习记录
- Unity Shader 参数学习记录
- unity之C#学习记录
- Unity UI
- 【Unity开发】Unity3d学习笔记记录
- [学习记录]Unity界面入门---(一)
- Unity学习日常问题记录一
- Unity学习记录-摄像机的移动
- 记录我的unity学习之旅
- 今天开始记录unity学习历程!
- 实现点击ListView某一item项的选中效果
- css3 写等边三角形(非border)
- Fire Game
- 解决conda安装qt-5.6.2-vc9_1包时出现的字符集编码问题
- 十八、How many prime numbers
- unity UI学习记录
- This version of Android Studio is incompatible with the Gradle Plugin used
- C# 二进制字节流读写封装
- 非贪婪匹配:如何使用正则表达式碰到到第一个匹配到的字符串就停止
- Fastjson json和java之间转换
- redis + Tomcat 8 的session共享解决
- 逻辑与和或,及短路与和或的区别证明
- git reset
- SOBS 背景建模