Unity游戏设计与实现[试读]
1.1 玩法介绍
...
查看全部[ 1.1 玩法介绍 ]
1.2 简单的操作和爽快感
不论创作何种游戏,都会有一些在刚开始时就必须考虑的事情。那就是游戏的内容。 我们在玩游戏的时候,在编写代码的时候,在漫无目的地浏览网页的时候,可能在很偶然 的瞬间,脑子里突然浮现出了关于游戏的灵感。构思游戏题材的这个过程,其实是很有乐趣的。 在笔者漫无目的地寻找游戏的点子时,从设计师那里看到了一个角色形象。正是这个游戏 的主人公——武士。问了之后才知道,除了角色之外,还有把怪物逐个砍倒的动画。就在那个 瞬间,笔者萌发了“用这个角色来制作游戏”的想法。就这样,在和设计师深入交流后,制作 这个游戏的念头就产生了。 决定游戏的内容时有一些要注意的事项。首先是操作简单。为了便于操作,... 查看全部[ 1.2 简单的操作和爽快感 ]
1.3 无限滚动的背景
1.3.1 关联文件
● FloorControl.cs
1.3.2 概要
在怪物这个游戏中,代表玩家的武士一直向右方前进,在游戏结束之前势必将移动非常远 的距离。如果将所需要的背景全部做到一个模型中,那么数据量将非常大。而且还必须在游戏 开始的时候就生成这些背景,非常麻烦。
在“怪物”这个游戏中,背景仅仅用于显示,和游戏的内容没有关系。即使重复出现同样 的背景也不会影响游戏的内容。显示在画面中的也只局限于武士周围的一小部分而已。
既然这样,我们就可以反复利用几个相同的组件来合成背景,并且只在玩家的周边将各个
组件逐个显示出来(图 1.1)。
查看全部[ 1.3 无限滚动的背景 ]
1.4 无限滚动的背景的改良
1.4.1 关联文件 ● FloorControl.cs 1.4.2 概要 上节介绍的算法中,背景只在每次调用 Update() 时移动一次。这样一来,如果武士移动的 距离很长,就有可能出现背景和角色的移动不和谐的情况(图 1.6)。虽然我们这个游戏中并不 会达到那样快的移动速度,但是有些游戏中出现过玩家角色移动,或者在场景中移动到错误位 置的现象。下面就让我们来考虑一下这种情况的解决办法。 1.4.3 稍作尝试 让我们来实际体验一下上节所述的问题。作为调试,这里保留了武士能够一瞬间移动很远 的距离这一功能。启动游戏后请按下 W 键。如图 1.7,可以看到在武士周围的背... 查看全部[ 1.4 无限滚动的背景的改良 ]
1.5 怪物出现模式的管理
1.5.1 关联文件
● LevelControl.cs
● OniGroupControl.cs
1.5.2 概要
游戏启动后不久,画面右方将出现怪物(图 1.10)。游戏的目标是不停地砍倒怪物并持续 前进。
...
查看全部[ 1.5 怪物出现模式的管理 ]
1.6 武士和怪物的碰撞检测
1.6.1 关联文件 ● OniGroupControl.cs 1.6.2 概要 按下鼠标按键后武士将挥刀迎击,如果能成功砍到,怪物将向四处飞去。不过如果没有砍 倒怪物却接触到了它,游戏则将结束。为了实现这种功能,需要检验武士对象和怪物对象之间 的冲突,也就是所谓的碰撞(collision)检测处理。 在很多游戏中,碰撞检测是非常重要的一环,不过在程序处理方面往往是比较麻烦的。但 是在 Unity 中,只需设定好形状就可以进行碰撞检测的计算。非常方便! 不过这并不意味着我们可以什么都不用考虑。使用何种形状来进行碰撞检测,将极大地影 响游戏的效果。在这一点上,即使采... 查看全部[ 1.6 武士和怪物的碰撞检测 ]
1.7 得分高低的判定
1.7.1 概要 大部分游戏都鼓励玩家不断挑战更高的得分。虽然也有像角色扮演(RPG)这类更注重情 节而不关注得分的游戏,不过支持玩家通过互联网与其他玩家同台竞技,进而挑战更高得分的 游戏正变得越来越多。 这次我们开发的是一个斩杀怪物的游戏。成功斩杀怪物后,怪物出现的数量会越来越多。 玩家要尽可能地持续斩杀怪物,这样才能在游戏结束之前杀掉大量的怪物。反之,玩家一旦失 手,怪物出现的数量就会减少。 当然,我们可以直接把倒下的怪物数量作为玩家的得分,但这里我们不妨多琢磨一下,看 看怎样才能让游戏更有趣。 例如,假若武士在追赶怪物的过程中一直不攻击怪物,最终将撞上怪物。在接近怪物的过... 查看全部[ 1.7 得分高低的判定 ]
1.8 使被砍中的怪物向四处飞散
1.8.1 概要 被武士砍中后,怪物将向四面八方飞散。 动作的不同将导致攻击力度的强弱表现不同,被攻击的各个对象的反应也有很大差异。在 格斗游戏中,对对手一顿拳打脚踢之后,看到其步履蹒跚的样子,往往可以感受到他的疼痛。 相反如果对手显得从容不迫,即使动作再华丽也只能给人一种攻击力很弱的印象。 有时候我们常常听到“攻击反馈”的说法。在玩游戏时大家应该都有过感觉按键和摇杆好 像变重了的经历吧?可以说这种游戏通过视觉和听觉把攻 击反馈非常完美地呈现了出来。 我们将通过怪物的四处飞散来表现武士的攻击强度。另 外,我们也将实现上节提到的靠近斩杀怪物会获取高分的规 则,并使“在... 查看全部[ 1.8 使被砍中的怪物向四处飞散 ]
书名: Unity游戏设计与实现
作者: [日] 加藤政树
出版社: 人民邮电出版社
副标题: 南梦宫一线程序员的开发实例
译者: 罗水东
出版年: 2015-2
页数: 384
定价: 79.00元
装帧: 平装
ISBN: 9787115384249