1、UGUI:Unity Graphical User Interface(Unity图形用户界面)
2、图集:在Unity开发中,如果单独使用每个图片会极大的损耗内存,图集的使用极大地节省了项目的内存,使用图集可以减少drawcall,提升效率,使工程运行的更加流畅
3、DrawCall:游戏中的图片模型开始是要从硬盘读到内存里面去的,然后CPU通知GPU要开始渲染,即一次Drawcall。
4、图集的创建:
- 首先,我们打开Editor->Project Settings->Editor ,下面有sprite packer的模式。Disabled表示不启用它,Enabled For Builds 表示只有打包的时候才会启用它,Always Enabled 表示永远启用它。 这里的启用它就表示是否将小图自动打成图集,默认一般是Always Enabled ,表示永远启用它。
注意图片不能放在Resources文件夹下面,Resources文件夹下的资源将不会被打入图集。
- 设置完毕后,在Assets下的Images文件夹建立一个图片文件夹,将集中到图集的图片放置到此文件夹中。
- 在Packer下创建图集,点击右键—>Create–>Sprite Atlas。
- 选择该图集,在Objects for Packing中选择图片文件夹,然后点击Pack Previes,自此图集建立完成。
Canvas画布:相当于所有UI控件的背景
当在场景中新建一个Canvas时也会自动创建一个EventSystem(事件系统),所有UI的发送和接收等事件在此执行。
Canvas使用的三种方式(Render Mode):
Screen Space - Overlay:在场景的最前面。如果场景改变大小或改变分辨率,Canvas自动改变大小去适配;
Screen Space - Camera:需要一个关联的UI摄像机,画布的大小和位置都跟随摄像机的变化;比如摄像机设置为Perspective(透视),UI元素将会通过透明视角渲染,通过摄像机可视区域控制。
World Space:将画布作为一个完全的3D游戏物体来看待和处理。
Render Mode都是Screen Space - Camera时的渲染顺序:
依次由Render Camera的Depth值(越大越在上面)、Sorting Layer先后顺序、Order in Layer值决定。
Render Camera不同的,由Render Camera的Depth值决定
Render Camera相同的,由Sorting Layer的先后顺序决定
Render Camera相同的,且Sorting Layer相同,由Order in Layer值决定
RectTransform组件
Anchors属性 :Pivot 锚点;Anchor Presets 属性(常见的布局方式)
Text:
用于向玩家显示不可交互的文本信息。玩家无法修改、删除其中的文本,只能从中了解信息。 Text(Script)组件只包括可见的文字,它的背景是透明的。