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

相关推荐
五仁烧饼19 小时前
Unity性能优化系列内存篇 - 移动端内存优化
unity·性能优化·游戏引擎
WiChP2 天前
【V0.1B15】从零开始的2D游戏引擎开发之路
游戏引擎
zhchyun20084 天前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(06)
ui·unity·游戏引擎
Behaviour4 天前
Unity游戏HybridCLR 热更新接入实战
游戏·unity·游戏引擎
LONGZETECH4 天前
新能源汽车动力电池实训教学痛点与虚拟仿真技术解决方案
c语言·3d·unity·架构·汽车·汽车教学软件
王维志4 天前
UiSplineRenderer
unity·游戏引擎
k4m7v2pz5 天前
Godot 4 仿 agar.io:相机缩放被 max_zoom 卡死,窗口越大球越小的根因与修复
游戏引擎·godot·相机·缩放·clamp·camera2d
FairGuard手游加固5 天前
iOS 游戏加固技术解析:代码混淆、资源加密、内存保护与重签名检测
安全·游戏·macos·unity·ios·objective-c
k4m7v2pz5 天前
Godot 4 窗口拉伸黑边与变形:stretch 配置全解析
数码相机·游戏引擎·godot·2d游戏·黑边·stretch·画面比例
UWA6 天前
GPM 2.0 WebGL 监测能力扩容|覆盖 Unity/Cocos/LayaAir 多引擎微信 & 抖音小游戏
unity·微信·性能优化·小游戏·webgl