UGUI之CanvasScaler的正确用法

转载:http://icemark.cn/blog/?p=279


很多人都知道,Unity在移动设备上的自适应依靠的是组件本身的Anchors和Canvas上的CanvasScaler

但是很多人却不知道应该怎么正确的去设置CanvasScaler的各项属性,这里我简单的说一下,希望大家谨记!

默认的设置:

CanvasScaler的正确用法 - 风冻冰痕 - 1

然后在移动设备上应该选择Scale With Screen Size:

UGUI之CanvasScaler的正确用法_第1张图片

重点说一下Reference Resolution和Match的设置:

Reference Resolution的尺寸由你拼UI时的尺寸决定,跟实际移动设备上的尺寸没有关系,引用我在群上一个很经典的栗子:

你在瘦身前首先得告诉医生你是胳膊粗还是腿粗 然后医生才能决定帮你瘦胳膊还是瘦腿。。。

然后Screen Match Mode设置为Match Width Or Height,

所以说,这里的尺寸只是为了告诉Unity你原始的UI尺寸,也就是你拼UI时的尺寸,然后Unity根据实际在移动设备上的尺寸来决定是帮你拉大还是缩小

而Math的设置呢,你只要记住横版游戏以高度缩放,竖版游戏按宽度缩放,所以得出以下结论:

假如我拼UI时的尺寸为960*640的横版游戏,那么我的设置就是:

UGUI之CanvasScaler的正确用法_第2张图片

有童鞋提到过Screen Match Mode可以使用Expand,但是经过测试发现,貌似在某些移动设备上会出现InputField响应区域偏离的Bug,

原因不明,所以建议使用Match Width Or Height。


你可能感兴趣的:(UGUI,Unity3D小技巧)