回顾
上一篇:(二) 准备图像素材并认识预制件Prefab
经过一段艰苦的素材准备过程,我们制作出了3个重要的预制件,分别是Player,Wall,Floor。预制件可以统一属性,也可以规划所有的游戏对象——在一个集中的环境里。
调整游戏分辨率
unity默认设定是可以让玩家在游戏开启前选择分辨率,不过我们也可以跳过这个步骤,让游戏以我们规定的分辨率大小启动。
设置方法是:
- 在上面的工具栏里,选择
File -> Build Settings...
- 在弹出的窗口里的左下角找到
Player Settings...
- 转到属性,修改为下图所示
这样我们的游戏就会以默认800x800的分辨率启动。
当然这样还不够,既然规定了分辨率,那么我们就可以去游戏窗口调整测试分辨率为800x800。
于是最终的游戏画面就变成了这个样子。
再次!使精灵变清晰
来到游戏窗口也使我发现了一个严重的问题,我曾经煞费苦心准备的高清素材,在最后的新分辨率里还是失真模糊了。万般无奈之下,我重新搜索了相关问题。最后为了适应新分辨率,做了如下调整。
- 修改Main Camera的Size属性,设置为3.5
- 修改spr_Wall等三个贴图文件的Filter Mode属性,从默认的Bilinear改为Point
成品如上。
Point的模式会消除掉模糊,但会留下锯齿,而锯齿对我们像素画的影响不会很大,处于可以接受的地步。
制作瓦片地图(TileMap)
现在我们准备构建第一关的游戏场景,这将用到大量Wall和Floor,Unity2017版本之后,为我们提供了一个内置的工具,让我们快速地构建2D世界。那就是TileMap。
新建瓦片调色板(Tile Palette)
首先,让我们打开Tile Palette窗口。它在Window -> 2D -> Tile Palette
。
按照提示,我们新建一个调色板Create New Palette
。因为我们准备在这个调色板上放“墙”和“地板”两种瓦片,所以名字就叫Environment Palette
(环境板)。按下Create
后跳出文件窗口,示意我们保存调色板的位置,我们就暂且先放到Sprites
文件夹下吧。
新的提示,现在可以拖动贴图资源进来了。我尝试将spr_Wall拖入,结果又是个文件窗口,一看是Unity把jpg文件转变成了asset文件,那么我们就在Sprites
文件夹下新建一个Assets
文件夹来保存瓦片资源吧。成功后,把spr_Floor也拖进调色板里。
一个拥有两个瓦片的调色板就准备就绪了!
新建空白Tilemap
此时还不能直接将瓦片画到场景里,我们需要一张专门绘制瓦片的画布,那就是Tilemap。
在层次里空白处右键,2D Object ->Tilemap
。成功的话会生成一个父对象Grid,一个子对象Tilemap。我们把子对象重命名为Environment Tilemap。
选中Environment Tilemap之后,当鼠标在场景里面挥舞的时候,可以看到方格边框会白色高亮。这其实就说明瓦片地图是以1x1 unit的方格为单位绘制的。
使用Tile Palette绘制Tilemap
在Tile Palette里面选中地板,然后会看到场景里的鼠标上也出现了地板的图片,此时就可以开始随心所欲的绘制了。大概步骤就是:
- 在Tile Palette里面选中所需瓦片。
- 在Environment Tilemap上绘制。
Tile Palette里的画笔和橡皮擦决定了你目前是添加瓦片还是删除瓦片。
如果嫌一下一下点太慢,就按住鼠标拖动。
绘制完成后就可以把Tile Palette关掉了。
最终效果
记得删除之前的Wall,Floor。
不花10s,就可以设计出一个像模像样的场景出来,当然现在这还称不上半成品,但算是又向前迈进了一大步。
看来还是有点假呢,可能会和之后新的精灵一起再改一下贴图文件。(没错,严重强迫症-.-)
拓展阅读
TileMap快速创建2D世界
http://gad.qq.com/article/detail/38693
2D精灵变糊的处理办法
https://blog.csdn.net/qq617119142/article/details/43345339