城市设计对游戏关卡的启示

作者:董晶晖
2019-08-01
38 41 4

本文首发于董晶晖知乎专栏

最近我在阅读《101 Things I Learned in Urban Design School》,发现书中很多关于城市设计的内容,竟然和游戏设计互通。特此分享一下读书笔记。

以下的讨论,主要基于游戏开发大地图的设计。

1. 建筑群和人的互动

郊区的城镇设计,总是让人倾向于直来直往,没有额外的逗留。比如大型超市,人们将车停在门口,直接进入超市购物,之后离开。而市中心的购物街,人们则倾向沿着街道行走,花几小时用来逛街。

我们可以通过研究市中心和市郊的城市布局,找出引发这种现象的原因。市中心的店铺,占地面积总是较小。因此相同长度的街道,可以容纳更多的建筑。而郊区,往往是一栋建筑,占据整个区域。也就是说,相比于市郊,相同时间内,人们可以在市中心探索更多的建筑。

PUBG 地图中的城镇

从 BR 地图的思路来讲,玩家往往倾向在建筑群密集的地方,逗留更长的时间。对于单独建筑的探索( 有时候它们被称为 object building ),则是点至点的转移。

另外,建筑中的空间,是否被能利用,往往决定于它们能否给人们提供目标。人们通常喜欢按照最短路线,到达目的地。如果要利用额外的空间和路线,你必须让人们能从中获取奖励。按照书中的原文,即“We are lazy … unless there's reward” 。现实中,这种奖励要么是更好的个人体验( 公园花园的街道 ),要么是更高质量的社交和经济活动( 酒吧区域、博物馆区域等等 )。设想一下,大家在逛街的时候,之所以会选择转向进入一家店铺,而不是沿着街道直线前进的原因,是因为自己被商店中的商品所吸引。是商品的吸引,让顾客选择进入店铺的内部空间。

玻璃对于商店十分重要,既显示了商品,吸引顾客进店,同时也将街道和店铺有效地隔离开。

对应到 BR 游戏中,建筑的密度,决定了玩家进入的方式和逗留的时间。以 PUBG 为例,玩家更倾向在城镇中,步行转移并搜索每个建筑。建筑群越密集的地方,玩家越会逗留较长的时间。但是对于空阔地带的独立建筑,步行玩家一般只会在顺路的情况下,搜索沿途的独立建筑。而拥有交通工具的玩家,则会快速在不同的建筑之间转移。这种情况下,玩家是否探索独栋建筑的概率,决定于自身拥有交通工具的概率,建筑与行进方向的重合度,以及建筑自身拥有物资的数量。

而对于空旷地点,抢夺空投物资成为了玩家移动至某特定位置的重要原因。

虽然郊区布局比较简单直接。但是,我们也常常见到,两个大型商场之间,有着各式各样的小店。这些小店,都位于往返两商场的必经路线上。如果从宏观来看,这和市中心商业街的布局,也是类似的。

《Monster Hunter》的地图,其实就符合大商店(中心)+小商店(道路)的设计

郊区的这类设计,是为了激活不同中心之间的空间。每个街区的标准大小,决定了空间的活力。越小的街区范围,意味着更多的商店能被展示。而越大的街区,则会让街区内部的空间或者捷径,得到更多的利用,比如连接两个平行街道的内部公园。

美国不同城市的标准街区大小

盐湖城(Salt Lake City)的一个街区案例,可以看到街区内部道路空间如何被利用

这种设计原则,其实为大地图关卡的常见问题,提供了一个很好的思路。很多大地图游戏,最容易犯的一个问题,就是关卡本身华而不实,可看不可玩( It's a beautiful map instead of playable map )。很多关卡的美术设计非常优秀,但是由于没有足够的游戏内容支撑,外观带给玩家的新奇会逐渐消失。有时候,甚至因为地图的视觉体验过于出彩,玩家对于游戏可玩内容的期望过高。当玩家发现最后的游戏内容后,前后的落差,会造成更差的游戏体验。

可是从开发者的角度来说,我们不可能让地图的每个角落,都有可互动的元素。我们只能将这些资源,集中在地图的特定区域。如果,我们能结合上述城市设计的原则,在各个重点区域之间,设定小节点以激活路径空间;在各个重点区域内部,通过整合各个版块(街区)的密度以及大小,让玩家自发地根据需求( 最短路径/搜集物资/寻找敌人 )找到最佳的移动路线,这样就能有效地让关卡的空间被玩家使用。

2. 如何让人有效地移动

书中提到了帮助人们在现实中寻路的基本设计:街道,标志建筑,区域边缘,街区,中心区域。

  • 街道:对应到游戏中,就是常见的路径。尤其是线性地图中,路径就是关卡有效区域本身。
  • 标志物:游戏中,一般十分巨大的建筑或者物体都可以充当标志物,很容易被玩家发现。无论是《刺客信条》中的瞭望塔,《Journey》的高山,甚至《旺达与巨像》中的巨像本身,都充当着地图中的标志性物。玩家以此能很快确定自己的大致位置。在标志物的设计中,书中提到可以使用高度的落差,来改变建筑给人的印象。增高建筑或者道路的坡度,会让建筑显得庄严和突出。反之,则会让建筑显得宁静和亲密。

向上的阶梯在《Bloodborne》出现了太多次,尤其是 Boss 战以前
  • 区域边缘:城市中,河流就可以属于区域边缘。不同城区之间的分界线,也可以属于边缘。比如商业区和工业区的交界处。游戏中,比较常见的应该是不同自然地貌的交汇处。
  • 街区:这个已经在上文中提到。
  • 中心区域:这里,中心区域既可以指城市中心,也可以指各个路径的交汇处。在古代城市的布局中,二者通常指的是同一个位置。比如城镇中心的教堂和广场,道路以此为起点,向外围发散。同时,中心区域和标志建筑,也存在重合的情况。

《Witcher 3》城镇就有典型的中心布局特征

以上这五个设计,都是在现实中,除地图之外,帮助人们识别道路的方法。我们可以将这些原则运用到游戏地图设计中,并和第一部分的资源设计进行结合,实现维度的叠加。例如,中心区域拥有更多的资源,和更好的视野。玩家在此处的对战,可能是更为持久的攻防战而不是遭遇战;不同地域的交界处,能让玩家更好地估算自己的位置和前进速度。

需要注意的是,书中反复强调了人们每当进入一个区域,就会马上寻找出口的位置。简单来说,人们不希望进入死胡同。现实中,死胡同会激发人的防御机制。而在游戏中,死胡同往往意味着困境甚至是死亡。最轻微的情况,也是玩家疲于寻找出路。所以,游戏大地图的设计,需要让玩家能快速判断当前道路是否为死胡同,或者当前的建筑是否无法进入或者没有额外的出口。玩家进入死胡同的情况,一定要避免。

建筑上的涂鸦,也许是一个很好的“死胡同”预警方式

3. 拓展性设计

书中提到了两点关于城市拓展设计的原则,一个是整体设计。另一个是提前布局。

整体设计原则,书中用到的例子是残疾人公共设施。对于公共领域的设计,应该从一开始就将残疾人公共设施,作为设计的一部分进行考虑。如何让正常人和残疾人公共设施,在功能和美感上达到统一,是城市设计需要达到的目标。切勿先基于正常人为对象进行设计,再把针对残疾人的部分,加入到最后的设计中( 类似于游戏设计中忌讳的加法原则)。

提前布局原则,则是如果当前因为现实原因,只能完成部分的修建目标,那么我们必须为未来的扩展提前布局,留下足够的空间。比如在房屋之间,留下足够的空间,以备将来拓展成小型公园。

如果对应到游戏中,根据以上两个原则,我们能否在项目初期,尽可能将更多的设计目标,作为一个整体包含在关卡设计中,并且为将来可能的拓展,留下足够的拓展空间。这里的拓展空间,不仅仅是指美术方面的空间,还包括技术上的容量(内存空间),以及已有玩法的包容性。

结束语

以上内容,欢迎各位讨论和指正。谢谢阅读。

101 Things I Learned in Urban Design School

近期点赞的会员

 分享这篇文章

董晶晖 

游戏程序员/爵士爱好者 

您可能还会对这些文章感兴趣

参与此文章的讨论

  1. luxjuve 2019-08-02

    巧了,发现最近不少人在看这本书。

  2. 方程 2019-08-07

    结合城市史学的一些原理,还可以“低成本”地让游戏世界观增添许多真实感跟考据价值呢。

    之前遇过有人抱怨塞尔达旷野之息的地标命名逻辑混乱,譬如,高原驿站在海拉鲁湖湖畔,湖畔驿站在热带雨林中央……我就想说,今天的广州西门口没有大城门,北京王府井也没有大水井,武汉水塔街还没有大水塔哩……地标命名不合逻辑,那可是该地区历史深厚的表现啊。就是因为旷野之息的地名不合逻辑,粉丝圈里才时至今天仍然有那么多人在做考据和推断呐。

    • 董晶晖 2020-08-19

      @方程:这是很有意思的细节。取名过程中的人为错误,抑或是各种乌龙事件,才是历史中大家常见的面貌。比如现在成都的领事馆路就没有使馆了。

    • HcAndersen 2020-08-26

      @董晶晖:也许不一定是错误,更多的可能是风俗文化的流变吧。地名变来变去本身就有其理由和意义的,不然老百姓也不会吃饱了没事乱改地名。

您需要登录或者注册后才能发表评论

登录/注册