Unity正交摄像机(Orthographic)中Size以及不同分辨率下Size的取值

SIZE的具体含义

Unity文档的解释是:The viewport size of the Camera when set to Orthographic.当选择正交模式的视窗大小。

其实这个Size是当前正交摄像机高的一半的值,这值是按照unity的单位长度来计算的。

如下,五个scale=1的Cube正好是摄像机高的一半。

Unity正交摄像机(Orthographic)中Size以及不同分辨率下Size的取值

 

如何计算不同分辨率下size的值?

首先了解下Sprite中一个参数 Pixels Per Unit,字面意思就是每一个单位的长度有多少个像素

Unity正交摄像机(Orthographic)中Size以及不同分辨率下Size的取值

比如按照开发比例1280*720举例:size=720/100/2=3.6

每种分辨率都需要改动么?

其实你也应该发现,这个值只和高有关系。那么按照开发礼拜1280*720:

如果放到4:3的ipad上。那么比例需要变成1280*960。所以在4:3的机子上size=960/100/2=4.8

如果放到2:1的手机上。那么比例需要变成1438.56:720。所以size=3.6

改这个值有什么用,UI没有变化大小啊

这个指主要用来配置UI特效。所以要求美术在UI特效的时候,摄像机的size就要按照比例来取对应的值,这样之后UI特效的适配只需要来修改size的值就没问题。

之前我们没有注意到这一点,一直按照默认的5。导致在4:3的机子上特效偏大,当时采取的时候策略是每一个UI特效的粒子系统上添加脚本,在特效加载的时候,修改的scale的值。