前言

1.png

这篇教程讲解如何在Unity中制作《吃豆人》游戏。该游戏最初发布于1980年10月,并很快风靡全球直至现在。Unity也用到了其中的形象作为UI:

2.png

本篇教程将使用Unity强大的2D功能,仅用62行代码来制做一个仿版《吃豆人》游戏。游戏会尽可能的简单,只关注迷宫、怪物、豆豆以及主角吃豆人。在今天的文章中,我们将先为大家介绍如何创建游戏迷宫。
让我们来看看游戏最终效果:

3.gif

相关准备

● 预备知识阅读本篇教程不需要太多专业知识,但需要了解Unity并知道GameObjects, Prefabs和Transforms等概念。
● Unity版本本篇教程适用于Unity 5.0.0及以上所有版本,5.0以下版本可能会出现一些问题。Unity 5是免费的且包含所有功能,这是我们推荐大家使用的版本。
项目设置
首先新建一个项目,打开Unity并选择New Project:

4.png

我们将该项目命名为pacman,选取项目存储的目录如C:\,项目类型选择2D,然后点击Create Project:

5.png

在层次面板(Hierarchy)中选中Main Camera ,将背景色(Background Color)设为黑色。并如下图所示调整大小和位置:

6.png

迷宫

● 迷宫精灵
让我们模仿原始游戏来制作一个类似的典型迷宫。

7.png

注意:您可以点击鼠标右键,选择另存为,把该图片保存到项目目录Assets -> Sprites文件夹下。保存在项目目录中文件,可以在项目视图(Project)中查看。我们选中刚保存的图片:

8.png

然后在检视面板(Inspector)中修改导入设置:

9.png

注意:Pixels Per Unit 值为8表示游戏世界的每个单位会填充8x8像素。我们会将该数值用于所有纹理。选择8是因为两个豆豆之间的距离是8像素,并且我们希望这是游戏中的一个单位。将锚点(Pivot)设为左上是便于后续使用。
现在将迷宫精灵从项目视图拖拽到场景视图(Scene):

10.png

查看检视面板,并将迷宫坐标设为(0,0):

11.png

● 迷宫物理
此时迷宫还只是一张图。不具有物理性质,所以吃豆人也无法在墙间游走。现在就为迷宫的每道墙都添加一个Collider。在检视面板中依次选择Add Component->Physics 2D->Box Collider 2D:

12.png

查看场景视图会发现Unity将Collider的范围覆盖了整个迷宫,这显然不是我们想要的:

13.png

我们希望每道墙都有单独的Collider。有两种办法可以实现。第一种是写个算法基于迷宫图片来生成Collider,第二种就是简单的手动添加。
在检视面板中点击Edit Collider 按钮:

14.png

注意:只有Unity 4.6及以上版本才有上面的按钮。
现在就可以在场景中使用绿色的点来调整Collider了:

15.png

对迷宫的每道墙都重复以上步骤,依次选择Add Component->Physics 2D->Box Collider 2D,然后点击Edit Collider调整各Collider的形状直至与墙贴合。
保证每个Collider的形状完美是很重要的。就像下图中绿框要完美包含蓝框:

16.png

这里的诀窍就是设置Collider的大小和中心点时注意值都是1.25、1.5、1.75或2.00这样,而非1.24687或1.25788。示例如下:

17.png

注意:如果后面吃豆人被困在迷宫或无法移动,就是因为迷宫的Collider没有完全设置好。
最终结果如下:

18.png

注意:调整所有Collider可能要些时间。
经典的游戏迷宫就这样创造好了,在下一篇教程中,我们将教大家如何添加游戏的主角 - 吃豆人!请大家继续关注!

教程原文:

http://noobtuts.com/unity/2d-pacman-game