unity的canvas scaler组件

来源:互联网 发布:淘宝买车分期付款 编辑:程序博客网 时间:2024/05/17 09:18

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


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

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

默认的设置:

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

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

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

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

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

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

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

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

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

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

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

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

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


原创粉丝点击