一、制作UI自适应

当前分辨率

更改分辨率

一、原因

一款游戏的UI,可能会根据玩家的分辨率和屏幕尺寸,产生不同的变化

例如:某一个Image位移到了摄像机外面

因此需要通过锚点和屏幕自适应来制作完美的效果

二、解决方法

1、锚点

作用是:根据当前的分辨率找到一个对应的点位置,例如:锚点为左上角,那么分辨率更改后锚点会找到当前分辨率的左上角。

不足:如果只根据点的位置判读,那么会出现某一个点移除了摄像机的渲染范围;另一种情况是:高分辨率,但UI会变大或者变小。

2、设置画布的UI自适应

原理是通过unity的设置,写入一个XY的分辨率大小。然后根据这个分辨率自动调整

缺点:如果宽高与改变后的宽高不相同,那么就好用;

如果宽高中的一个值相同,另一个不相同,那么就会出现问题

解决方法是:设置里面的Match模式,改变宽高的权重

那么,就会以二者中的一个作为标准更改

根据自己项目类型,选择哪一种标准

最优方法:锚点和宽高一起使用。

注:锚点在设置时,父级物体必须为全屏覆盖

3、注意事项

这个项目的UI是固定在左右两边的,因此要把高度固定住。

如果只设置了锚点,固定了宽度,在固定分辨率下可以自适应,但:自由分辨率没办法自适应。

因此UI自适应要考虑三点:

1、锚点

2、固定宽/高

3、屏幕分辨率

相关推荐
每周报刊1 天前
竞速座舱级视界:爱攻 AGP497UCZD 超宽 QDOLED 显示器解析
数据结构·游戏·计算机外设
zhchyun20081 天前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(06)
ui·unity·游戏引擎
X12499281811 天前
无畏契约更新后卡顿掉帧怎么办?黑屏闪退、游戏打不开解决方法
游戏
wind100321 天前
VC++ 运行库 vcredist 安装失败|CLR 80131522 报错完整修复
开发语言·c++·游戏
Behaviour1 天前
Unity游戏HybridCLR 热更新接入实战
游戏·unity·游戏引擎
2601_966563521 天前
安卓单机游戏合集免费下载 内置修改版无限金币 2.3T 5000+游戏 无限金币、钻石、解锁全角色等修改
游戏
●VON2 天前
谁小时候不想要一个游戏修改器?我把电脑 Skill 做成了 Android 小助手
android·游戏·电脑
本原财经2 天前
卖游戏、筹H股,昆仑万维临IPO磨AI含金量
人工智能·游戏
LONGZETECH2 天前
新能源汽车动力电池实训教学痛点与虚拟仿真技术解决方案
c语言·3d·unity·架构·汽车·汽车教学软件
王维志2 天前
UiSplineRenderer
unity·游戏引擎