Unity UGUI 之 Canvas Scaler

1.什么是Canvas Scaler

Canvas Scaler是一个附加到Canvas上的组件,它能够根据不同的屏幕分辨率和设备来自动调整UI元素的大小和缩放比例,以确保UI在不同设备上的一致性和适应性


2.三种缩放模式

  1. Constant Pixel Size(固定像素大小):在这种模式下,UI元素的尺寸将始终以像素为单位进行缩放,不受屏幕分辨率影响。这意味着UI元素在不同分辨率下的大小将保持不变,但在不同设备上可能会有不同的显示效果。

  2. Scale With Screen Size(根据屏幕尺寸缩放):这种模式下,UI元素将根据屏幕的宽高比例进行缩放。可以通过设置Reference Resolution(参考分辨率)来定义一个基准分辨率,然后根据当前屏幕的实际分辨率与基准分辨率的比例来缩放UI元素。

  3. Constant Physical Size(固定物理大小):这种模式下,UI元素的物理尺寸将保持不变,不受屏幕分辨率的影响。可以通过设置Reference Pixels Per Unit(参考像素单位)来定义一个基准像素密度,然后根据当前屏幕的实际像素密度与基准像素密度的比例来缩放UI元素。

重点理解Scale With Screen Size,最常用的模式。

Reference Resolution:参考分辨率就是一个类似于基准参数,你实际出品的游戏的UI会按照一定公式缩放,而参考分辨率就是一个重要参数。

Screnn Match Mode:屏幕匹配模式,主要有三种:

  • ‌**匹配宽高(Match Width or Height)**‌:混合值(如0.5)会同时调整宽高,避免黑边但可能轻微变形。以宽度或高度为基准缩放,保持UI比例不变。

  • ‌**展开(Expand)**‌:强制拉伸或压缩UI以填满整个屏幕,这个模式会确保UI都显示在屏幕上,但可能导致变形(如16:9的UI在4:3屏幕上横向压缩),也可能有黑边。

  • **伸缩(Shrink)**‌:保持UI比例不变,会根据宽高比的变化来放大缩小画布,可能有部分UI被裁剪,也可能会有黑边。

匹配宽高(Match Width or Height)的模式下,Match值为0,则以参考分辨率的宽度作为固定宽度,Match值为1,则以参考分辨率的高度作为固定高度。

参考博客:https://blog.csdn.net/2301_77947509/article/details/140521509

相关推荐
魔士于安2 天前
unity 丑陋哥布林 哥布林有humannoid 动画没 带动画
unity·游戏引擎·材质·贴图·模型
小贺儿开发2 天前
Unity 家居视频遥控(细节优化)
科技·unity·程序员·udp·视频·工具·通信
淡海水2 天前
13-04-面试-源码级深度追问链
数据结构·unity·面试·c#·游戏引擎·源码·il2cpp
小小数媒成员3 天前
UGUI 性能优化(详细,全,深入)
开发语言·unity·游戏引擎
林川~013 天前
Unity新输入系统使用笔记
unity·input system
小贺儿开发4 天前
Unity 结合百度AI开放平台 手写文字识别
人工智能·科技·学习·unity·云服务·文字识别·手写文字
goujunwe4 天前
GEO 评估方法:如何自测你的内容,会不会被 AI 引用
搜索引擎·网络安全·游戏引擎·全文检索·中文分词
林川~014 天前
Unity 万能物理检测工具:射线检测 / 范围检测 / 层级过滤 / 编辑器可视化(可直接拿去用)
游戏·unity·c#·射线检测·通用工具
yi碗汤园4 天前
MQTT消息队列遥测传输协议
网络·网络协议·unity
林川~015 天前
Unity 常用 API 与核心类全解:从生命周期到协程,附性能避坑清单(Unity 6 适配)
unity·游戏引擎·常用api