Unity 2d 学习手札 (一) 基本概念

时间:2022-04-01 14:55:47

前言

刚开始学习 Unity 2D,看了几本书,或许书中重点都不在 2D 的部分,总是不得其门而入,无法快速的上手,充满挫折。后来在网络上查了一些文章,东拼西凑,才慢慢体会其要意,今将心得记载于此,以备将来遗忘时,能快速查阅。

Pixels Per Unit

在 Unity中,〝单位(Units)〞并不一定对应到屏幕上的像素,通常物体的大小都是相对于彼此的,可以假设单位为任何计量单位,如1 unit = 1米。对于 Sprite,Unity以像素为单位来确定大小。

在精灵渲染器(Sprite Renderer)的〝像素到单位(Pixels to Units)”默认值是100,如下图,代表 1 Unit 有 100 pixels。

Unity 2d 学习手札 (一) 基本概念

Camera Size

假如要在 960 x 540的手机上要以 1:1像素的模式显示贴图,就需要去调整 Size值。

以 Sprite中,Pixels Per  Unit默认值为 100的状况下,高度 540 pixels刚好为 5.4 units,Size纪录的是 Camera中心点到顶端的距离,所以 5.4 units / 2 = 2.7 units。因此把 Size设成 2.7,就能看到一张 960 x 540 的图片铺满整个版面。

Unity 2d 学习手札 (一) 基本概念

UGUI自适应屏幕

设计 UI接口时,我们希望在不同分辨率底下的 UI位置能一致,就必须设定 Canvas的以下几个值:

1)将  Render Mode设定成 Screen Space -Overlay (此为默认值)。

2)将 UI Scale Mode设定成 Scale With Screen Size,表示依实际屏幕大小作伸缩。

3)设定 Reference Resolution的 X及 Y值,代表 UI屏幕的宽高值。

4)将 Screen Math Mode设定成 Match Width Or Height,代表以宽度或高度为依据,进行缩放。横版则以高度为依据,将 Match 设为 1。竖版以宽度为依据,将 Match 设为 0。

Unity 2d 学习手札 (一) 基本概念

设定游戏的屏幕宽高

Unity 的默认宽度及高度,并不一定就是我们所要的尺寸,例如:我要开发一个 960 x 540 的游戏,那么我就应该去更改其设定值。步骤如下:

Unity 2d 学习手札 (一) 基本概念

Unity 2d 学习手札 (一) 基本概念