简介
关于UGUI的一些简单适配
Canvas
- OverLay:位于屏幕最上方,遮挡住3D场景以及Camera和World的UI,屏幕大小跟随设备自动匹配
- Camera:需要摄像机,屏幕大小跟随设备自动匹配,画布位于摄像机前方固定平面,依据摄像机所选层级进行渲染,可以来显示模型与UI
- World:
总结:
- OverLay:层级关系默认按照上下关系排序,对于添加了Canvas组件的子物体,可以修改SortOrder来改写遮挡关系
- Camera:Canvas的SortingLayer决定了子物体的SortingLayer,子物体可以通过添加Canvas组件修改自身SortingLayer以及OrderInLayer
- OverLay之间SortOrder,Camera之间SortingLayer,Camera内部OrderInLayer,OverLay>Camera
- 特效同样支持sortingOrder与sortingLayerName,当特效与UI的sortingLayerName一致时,调整特效的sortingOrder可以调整特效在UI中的显示位置,例如特效需要加在A的上面,特效的在orderLayerName一致的情况下,sortingOrder应该大于A的Canvas(从A往上找其父物体,第一个带Canvas的父物体的Canvas就是A的Canvas,A本身可以没有Canvas,此处Canvas类似于NGUI的panel概念)的sortingorder,如果特效要在A,B中间,那么A,B应该在2个不同的Canvas下面,特效的sortingorder也在A,B 2个Canvas的sortingOrder中间
- World与Camera类似
CanvasScaler
- ConstantPixelSize:像素大小始终不变,ScaleFactor可以控制缩放比例
- ScaleWithScreenSize:开发时参考分辨率
- MatchWidthOr Height:横版高度缩放,竖版宽度缩放
- Expand:缩放不剪切,屏幕分辨率与设定不同时,选择变化小的方向缩放显示
- Shrink:缩放剪切,屏幕分辨率与设定不同时,变化打的方向缩放,超出部分剪切不显示
- ConstantPhysicalSize:物理相关的= =应用少 不懂
GriphicRaycaster
传递点击事件,确定事件对象
EventSystem负责管理,InputModule负责输入
AspectRatioFitter
使用HorizontalLayGroup实现等距拉伸,但拉伸容易导致图片不是等比例缩放这时候就可以使用AspectMode让高度随着宽度的变化等比例变化
ContentSizeFitter
动态长宽,例如Text输入加上这个组件,就动态改变Text长度
网友评论