Unity 单位和图片像素关系

1. 首先,场景中创建一个Orthographic摄像机,Position放在原点,设置size为0.5,如下图:

Orthographic摄像机设置

2. 创建一个Cube,Unity中Cube默认长宽高皆为1个单位。Cube 设置如下图,由于摄像机是正交摄像机,所以只要在View立方体里面,Cube的z坐标并不会影响它在游戏视图中的大小

Cube设置

3. 可以看到Game视图中结果如下图:

Game视图结果

4. 调整Game视图分辨率,发现无论分辨率多少,Cube 的高度占满整个视口

5. 调整摄像机设置,修改size为1,Cube的y坐标设置为0.5,新建一个默认Cube,坐标设置为-0.5,发现,两个Cube正好占满Game视图的视口高度。

6. 结论:正交摄像机的视口大小Size 的含义:输出的游戏画面的高度对应 2* size 个 Unity 单位

7. 导入一张tga图片,图片的像素为 750x1334,并将图片放到场景中,面向摄像机,Position和Cube一样,设置如下:

设置图片的 Pixels Per Unit

这个值的意思是,Unity中一个单位显示图片中的100个像素,刚才设置的正交摄像机视口正好输出一个 Unity 单位,摄像机看到的画面是:


分辨率100x100时Game视图结果
分辨率 180 x 180 时Game视图结果
分辨率为 500 x 100 时Game视图结果

视口都只显示了一个高度为 Unity 单位(图片的100个像素)的画面,而且和视口的分辨率没有关系。

8. 修改图片的设置,设置为 Pixels Per Unit 为 1334,Game视图得到画面分别为:


分辨率100x100时Game视图结果
分辨率 180x180时Game视图结果
分辨率 500x100时Game视图结果

9. 结论:Pixels Per Unit 的意义是:Unity中一个单位对应这个图片的多少像素

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容