译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 1%title%

数字关卡设计工具

关卡设计师的目标应该是尽快将自己的设计以互动的形式呈现出来。这样,他和其他人就可以对关卡设计进行游戏测试,也就是说,他可以通过玩游戏来评估它是否实现了最初的设计目标。一旦设计师花时间在纸上规划了关卡,形成了关卡体验的具体计划,他就可以开始将他的想法数字化。

用于关卡设计的数字工具可以在关卡生成和规划方面实现许多功能。也许有人会问,在纸上花费了大量时间绘制关卡建筑草图之后,为什么还需要额外的规划呢?正如我们将看到的,数字工具可以帮助规划空间条件,这些条件将在本书后面的章节中详细讨论。

和上一部分一样,这是一个工具清单,列出了这些工具在建筑绘图方面的用途,以及它们如何帮助关卡设计过程。同样,你应该根据自己的流程或最适合自己游戏的流程来选择工具。

引擎基元与白模

您应该将重点放在通过游戏引擎尽快将游戏转化为互动形式。许多新手设计师常犯的一个错误是,他们认为在有美术素材输入引擎之前,游戏性是无法测试的。然而,在美术开发的同时,设计关卡的空间和创建任何所需的脚本(使游戏元素运行的代码片段)要有效得多。这样,关卡设计师就可以测试他的纸上设计是否能有效地创造出他想要的游戏体验。

为此,可以用引擎基元(一些游戏引擎自带的简单几何形状)创建游戏原型。在引擎中,这一般包括立方体/矩形实体、球体和圆柱体。有些引擎还可能包含楼梯、锥体和其他形状(图 2.30)。引擎基元可以创建出令人惊讶的各种关卡几何形状,事实上,许多引擎的关卡编辑器都非常强大,可以完全用基元创建出关卡中大部分较大的空间几何。对于没有基元的引擎,比如许多 2D 游戏引擎,设计师可以用同样的方法使用占位素材。占位素材通常包括简单的形状–方形、圆形、三角形等–用于测试游戏性,直到最终美术素材被导入。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 2%title%
(图2.30:虚幻开发工具包(UDK)中的基元。)

基元在设计师使用图纸或CAD绘图进行规划时,能够很好地契合游戏引擎规定的标准度量系统。以Valve的Hammer关卡编辑器为例,它是Source引擎的一部分,要求用户在设计时始终启用吸附的网格。这样做的目的是为了避免在关卡中出现空隙,这会妨碍关卡成功编译。Hammer的基元会自动吸附到2的幂次测量上,因此对象的长度可以是16、32、64、128等Hammer单位(图2.31)。许多2D引擎也采用类似的2的幂次测量,因此在设计时应以像素为单位创建相应的占位符。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 3%title%
(图2.31:在Source引擎中使用基元构建时,用户被要求采用与CAD程序中相似的网格吸附。)

直接使用引擎基元的另一个好处是,设计师可以利用引擎的各种系统,比如粒子效果、照明等,这些系统会影响游戏的外观。通过这种方式,他们可以尽早开始测试游戏场景与氛围的匹配情况。结合脚本编写,设计师可以创建相当健壮的游戏原型,而无需依赖开发完善的美术素材(图2.32)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 4%title%
(图2.32:这个僵尸射击游戏的原型完全是用Unity引擎的基元创建的。敌人和盟友被编入脚本,以创建一个防御场景,玩家必须在被淹没之前尽可能长时间地抵挡住僵尸群)

在3D游戏引擎中,环境物体是在3D建模程序中设计的,然后导入到引擎中。与使用2D关卡资源或关卡基元类似,这些3D资源可以根据规划阶段定义的度量系统进行创建。您将不得不使用3D程序生成关卡几何的程度将因引擎而异:UDK和Hammer的关卡编辑系统允许设计师在引擎内完成大部分工作,而在Unity中最好在其他地方进行关卡几何的建模。对于具有强大关卡编辑功能的引擎,主要导入的环境模型将是装饰或特殊物品,例如家具、机械零件、外星建筑等。在这些情况下,尺度不是太大的因素。然而,如果您使用的引擎要求从3D建模程序中导入大部分关卡几何,包括关卡的实际房间,那么在3D程序和引擎之间有效管理尺度就变得非常重要。

与引擎类似,3D程序也有自己的比例和度量系统,设计师可以按照这些系统构建模型,通常以通用单位为定义。例如,如果环境艺术家将关卡几何的度量从纸张转换为3D程序的单位系统,比如1个网格方块=1个单位,那么对象可以按照正确的比例相互转化。

将环境模型从3D程序导入引擎并确保它们在比例上保持一致的一种简单方法是在3D程序中建模整个关卡(图2.33)。这对于构建环境装饰也很方便,因为它们可以在与关卡的其余部分相关的上下文中构建和布置(图2.34)。这种方法还提供了内存优势,因为一些游戏引擎更容易渲染单一模型。然而,问题在于你是在一个非交互式程序中建模你的关卡,因此测试可能会非常缓慢。通过正确规划单位度量(例如,角色跳跃4个单位远,因此缝隙应该适应这一点等),可以帮助缓解这个问题,但测试关卡布局仍然需要进行尴尬的导出和导入。因此,最好在3D程序中建立一个将关卡划分为部分并在引擎中组装的系统(图2.35)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 5%title%
(图2.33:这个丛林关卡是在 3D 程序中整体建模的,然后以单个模型的形式导入到游戏引擎中。像流经关卡的河流这样的美学元素,则是根据模型进行建模的。这样就创建了一个具有规范性的系统,但又可以在引擎中进行调整,而无需回到三维程序中。)
译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 6%title%
(图2.34:在图 2.33 中的模型特写镜头中,可以看到环境装饰。每个装饰都是在模型上建模,以检查比例是否合适,然后单独导出到游戏引擎中,根据需要进行复制和布置。)
译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 7%title%
(图2.35:为了为游戏《SWARM!》创建一系列城市关卡,我们在 3D 程序中创建了瓦片,并将其导入到引擎中,这样就可以创建许多关卡设计。)

将3D模型导入引擎是尺度管理变得困难的地方。由于每个3D程序和引擎都有自己的度量系统,当3D对象导入引擎时,它们可能无法同步。通常,导入的对象可能与场景相比非常大或非常小,因此有必要了解你的3D程序的度量与引擎度量之间的关系。

如果你在3D程序中以标准比例为所有关卡对象建模,比如之前提到的1个网格方块=1个单位,那么所有关卡几何应该以相同的比例导入。例如,如果你发现你的对象以其实际尺寸的1/20导入,你可以将每个相似比例的对象导入为它们尺寸的20倍。如果你以相同的比例建模,那么每个对象应该以相同的比例导入,只需记住一个比例因子。(比例因子:用于表示两个物体之间的比例关系的因子。它可以用来放大或缩小一个物体的尺寸)

在导入对象时进行缩放的另一种方法是弄清楚你的3D程序中的单位与引擎中的单位之间的比例。例如,Maya和Blender中的1个单位=Unity中的1个单位。这在3D Studio Max中并不总是成立。然而,Max可以使用真实世界的单位,因此设计师如果使用米制系统,就可以按照正确的比例建模,因为1个Unity单位=1米。其他引擎有类似的比例。一旦弄清楚了这些比例,甚至可以为3D程序构建一个缩放模型,通常只是一个以角色或单位的标准比例构建的盒子,用作构建级别几何的“尺”(图2.36)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 8%title%
(图2.36:这个截图展示了建筑侧面的一些关卡几何瓦片,以及一些以深色显示的参考模型。矩形实体模型的尺寸被缩放到一个角色的大小,而平面关卡几何参考模型在游戏引擎中被缩放为1个单位乘以3个单位和3个单位乘以3个单位。同时还展示了一扇门的参考模型。)

现在,您已经了解了关卡设计师的数字工具以及如何在关卡制作中使用这些工具,您可以使用它们来生成自己的游戏关卡。在下一节中,我们将讨论一些设计关卡的工作流程,以及如何使用我们讨论过的工具。

关卡设计流程

美国建筑师路易斯·沙利文,通常被认为是摩天大楼的创作者,曾经说过一句名言:“形式追随功能。”通过这一表达,沙利文表达了现代主义建筑的一个主要原则。现代主义是20世纪初的一场建筑运动,其特点是强调建筑的形式源于其用途。在现代主义建筑中,装饰通常是建筑物本身的产物,或者是为了特定目的而应用,而非单纯为了美学。与沙利文相似,勒·柯布西耶提出:“房屋是一个用于居住的机器。”他的许多建筑作品,以及弗兰克·劳埃德·赖特、瓦尔特·格罗皮乌斯、路易斯·沙利文等人的建筑,都专注于有意为居住者创造一种体验。

正如我们所见,关卡设计也是如此。在关卡设计中,开发者通常以特定的体验目标为导向进行设计。在2008年的一次采访中,Valve的关卡设计师Dario Casali强调,在进行关卡设计时,“体验至关重要”。我们之前已经讨论了一些玩家如何使用游戏空间以及我们作为设计师如何通过空间与玩家沟通相关的关卡设计目标。这些体验目标应该决定我们作为关卡设计师如何构建空间:形式追随功能。

在上一节,我们讨论了关卡设计师使用的一些工具,从在方格纸上草拟想法到在引擎和3D程序中使用缩放模型和度量系统。在这一节中,我们将讨论一些涉及这些工具的工作流程过程,首先从“形式追随功能”如何融入游戏设计开始。

形式追随核心机制

在游戏设计中,“形式追随功能”的原则通过一个被称为核心机制的概念得以充分体现。核心机制通常被定义为玩家在整个游戏过程中执行的基本操作。在游戏设计师Aki Jarvinen的博士论文中,提出了一种以核心机制为中心的设计方法,设计师们从动词入手。如果将核心机制看作是玩家在游戏中进行的基本动作,就可以理解构建每个游戏独特体验的基本元素。例如,《超级马里奥兄弟》以跳跃为核心,而《塞尔达传说》注重探索,《块魂》则以滚动为主题,《愤怒的小鸟》则聚焦于投掷,以此类推。从这一核心出发,再添加其他动作来规定最终游戏产品的规则。

在设计关卡时,有必要在头脑中形成类似的核心机制想法。虽然许多新手设计师认为各个关卡应该简单地遵循游戏的核心机制,但我们可以通过定义关卡核心机制使每个关卡变得独特。以《军团要塞2》(TF2)中的Badwater Basin关卡(图2.37)为例。在这个关卡中,游戏的BLU队必须通过轨道上的矿车将炸弹推入对手RED队的基地。Badwater Basin是Payload模式的地图,该模式改变了TF2标准的团队第一人称射击(FPS)机制并增加了一些变化。这不仅改变了游戏玩法机制,还改变了关卡的空间几何条件。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 9%title%
(图2.37:来自《军团要塞2》的Badwater Basin关卡平面图。地图上标明了RED和BLU队的基地,以及主要的交通区域和连接两个基地之间的BLU检查点)

Casali提到的一个例子是他在设计Badwater Basin时提到的关卡中的隧道。在关卡的最初原型中,设计师们将矿井隧道的宽度设置为他们用于其他基础地图的标准宽度。然而,在使用了推动矿车的机制进行关卡测试时,他们意识到必须扩大隧道以容纳玩家和矿车。这看似是一个小改变,但却避免了玩家被矿车挡在隧道外的尴尬。(图2.38)

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 10%title%
(图2.38:通过调整Badwater Basin中隧道的宽度,不仅使玩家和矿车在关卡中更顺畅地移动,并减少游戏对进攻方的影响。)

这与利用基于游戏度量的测量系统为关卡设计密切相关。作为关卡设计师,我们的任务是根据玩家角色和其他游戏元素在关卡中的移动方式来设计。只有当关卡空间能够舒适地适应度量标准时,穿越关卡才会变得更加舒适。正如我们在后面的章节中所讨论的,当我们创造出将度量标准推向极限的空间时,游戏戏剧效果就会显现。这样的空间包括需要角色进行尽可能远跳跃的缝隙,例如《超级马里奥兄弟》世界8-1中的那个(图2.39),或者在恐怖游戏中限制移动的狭窄走廊,例如《生化危机》(图2.40)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 11%title%
(图2.39:《超级马里奥兄弟》第8-1关的这一部分将马里奥的跳跃度量推向了极限。这个缝隙有10个方块宽,比马里奥的奔跑跳跃距离9个方块更长,因此需要使用1个方块宽的中间小岛。穿越这个缝隙的大多数策略都是先跑跳到中间的小岛上,然后再从 1 个方块宽的小岛上快速跳下,这样马里奥的落地惯性就不会将玩家带入坑中。)
译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 12%title%
(图2.40:《生化危机》中的许多走廊几乎只够两个肩并肩站立的角色通行。因此,在这些走廊中,一个单独的僵尸可能成为试图通过的玩家的重要威胁。这种空间条件还为游戏营造了一种幽闭恐怖的气氛。)

按照游戏玩法进行设计不仅仅需要考虑度量。它还意味着可以根据特定的角色能力进行设计,比如特殊攻击或移动模式。像《合金装备》这样的潜行游戏就很好地演示了如何基于不同类型的角色移动构建关卡。在《合金装备》中,玩家角色Solid Snake具有躲藏在墙后并窥视拐角的能力。与其他动作游戏相比,这极大地改变了90度拐角的含义——它们是战略性的藏身之处,而不仅仅是关卡的几何形状。因此,构成《合金装备》环境的核武器设施拥有许多这样的拐角,以便玩家可以从一个地方悄悄移动到另一个地方,窥视拐角找到下一个安全区。虽然不是基于度量,但这些布局是基于角色自身机制的,是角色能够如何在环境中行动或互动的可能性范围。

关卡设计主旨(Parti)

译者注:我没能找到Parti的合适翻译,如果你有更好的想法,欢迎评论区指出。

之前我们讨论了建筑师的“设计主旨”(Parti),这是建筑师用来确定他们想要建筑采取什么形状或方向的基本形式探索。对于刚刚确定了关卡核心机制的关卡设计师来说,设计主旨是另一个有价值的工具,用于制定关卡的空间布局。

使用设计主旨进行设计与在图纸或计算机上设计有很大的不同。设计主旨是为了草图,因此会缺乏精确度量。虽然这可能与本章节中的其他建议相矛盾,但草图练习允许设计师在花费时间规划设计的精确度量版本之前迅速形成想法。关卡设计主旨的关键在于将游戏玩法的想法表达为空间图。例如,Badwater Basin关卡的设计主旨可能是两个大块(代表队伍的基地区域),两者之间有较窄的流通区域代表矿车轨道,以及一些供BLU玩家夺取的较小基地,类似于图2.37中的示意图。

在《独立游戏:电影》中,Edmund McMillen在讨论关卡设计时认为,一旦设计师创建了环境机制,也就是关卡中影响游戏玩法的可交互部分,这些部分应该以多种不同的方式可被使用,这样才有价值。对于e4 Software的手机游戏《SWARM》,这是一个小球滚动的平台游戏,玩家需要诱使敌人走入陷阱,程序员兼设计师Taro Omiya创建了许多通电围栏陷阱的草图,以可视化它们可能的不同用途(图2.41)。同样,Omiya和其他参与游戏开发的人员在计算机和纸上制作了正式的设计主旨,以可视化关卡的空间方向,如下坡滑道、漂浮岛屿和跳台区域(图2.42)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 13%title%
(图2.41:当《SWARM》的设计师们设计出通电围栏陷阱后,他们对这些陷阱制作了许多游戏玩法设计主旨方面的草图,以可视化它们如何在不同的关卡中被利用。)
译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 14%title%
(图2.42:《SWARM》的正式设计主旨展示了不同空间方向的可视化,如山坡、倾斜的岩壁等。)

使用任天堂力量(Nintendo Power)的方法来调整关卡节奏

规划游戏中的个别部分的一个缺点是不了解它们在关卡中如何相互关联。这就是绘图纸和其他基于度量的工具发挥作用的地方。关卡设计师称之为“节奏”,即适当安排游戏玩法。

节奏建立在这样一个概念的基础上,即为了使游戏玩法看起来令人兴奋,它必须与”安静 “的游戏时刻形成对比,比如解谜、探索,甚至是利用角色的移动可能性进行游戏。正如我们在后面的章节中所展示的,空间对比对于在游戏和建筑中构建有意义的体验非常重要。因此,我们必须学会如何控制游戏中关卡的节奏。

实际上,在纸上进行的自上而下的关卡设计应该从两个不同的角度进行:宏观尺度的关卡设计和微观尺度的关卡设计。TF2的Badwater Basin的设计主旨是宏观尺度的设计,因为它展示了整个关卡,并图解了它如何创造预期的游戏玩法。另一方面,来自《SWARM》的陷阱和关卡元素的设计主旨是微观尺度的设计,因为它们显示了与整个关卡脱离关系的个别游戏玩法实例。许多新手设计师都会犯一个错误,即将激烈的微观尺度的游戏玩法实例连续放置在一起。合适的节奏应该使这样的游戏玩法实例在彼此之间被较为宁静的游戏时段分隔开来。

为了避免这种情况,使用任天堂力量的关卡设计方法是很有用的。任天堂力量是任天堂于20世纪80年代末开始出版的一本游戏攻略和新闻杂志。在一段时间内,它是任天堂游戏机上的秘密代码、提示和游戏攻略的重要来源。对于许多游戏,任天堂力量会发布详细的关卡地图,并在地图上使用说明框来突出显示游戏玩法中特别值得注意或困难的地方(图2.43)。对于关卡设计师来说,这些地图可以是关于节奏的宝贵经验。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 15%title%
(图2.43:《任天堂力量》杂志中的地图展示了整个关卡,并在每张地图上突出显示了游戏玩法的重要点。)

《任天堂力量》中的地图从宏观角度展示了一个关卡,因此读者可以看到游戏关卡的全貌。与此同时,它还在微观上突出了重要的游戏时刻,让读者知道要到达秘密房间或克服困难障碍需要注意什么。还应该注意到,这些地图上的突出显示框并不是紧密相邻的,而是均匀分布在整个地图上。这不仅仅是杂志的出版结果,更是游戏设计师合理安排节奏的结果。在设计关卡时,我们可以利用同样的思维方式,将我们的关卡图纸视为《任天堂力量》的图纸,以宏观的尺度创建关卡的整体范围,在微观上将激烈的游戏区域均匀地分布在整个地图上。在“喧闹”的游戏时刻之间,应该是放松空间,用于基于移动的游戏玩法、基于移动的障碍、探索,甚至是玩家角色的休息和整备。

在关卡中没有安静的时刻来对比高强度的时刻,游戏可能会变成一个永无止境的苦差事,而不是一个令人兴奋的体验。然而,即使进行了最仔细的规划,设计师也很可能会漏掉一些东西。这就是为什么尽可能多地玩游戏,并让其他人玩游戏是很重要的,这将引导我们进入下一个关卡设计工作流程。

利用游戏测试不断迭代

迭代设计是从人机交互设计中借用的一个术语。它描述了一个循环往复的设计过程,在这个过程中,设计者制作出自己作品的原型,测试用户是否能与之正确交互,评估结果,修改设计,并再次与用户进行测试。这与科学家通过反复实验来验证假设的科学方法并无二致。

游戏设计师通过对他们的游戏进行试玩来测试他们的想法。Salen和Zimmerman在《Rules of Play》中将游戏设计称为一个二阶设计问题。他们指出:“你从来不是在直接设计玩家的行为。相反,你只是在设计系统的规则。”Salen和Zimmerman强调,设计游戏与设计一个直接可关联的物体(如杯子或椅子)非常不同,你是在为玩家创造一个栖息的环境。这与游戏关卡是玩家和设计师之间交流的媒介这一观点直接相关。

就像建筑师会带客户来参观和评估作品一样,游戏设计师也会带玩家来测试游戏。要想了解你想要的体验是否会在你的游戏关卡中出现,根据你的开发阶段,观看他人以非数字和数字形式玩你的游戏是很重要的。当你在观察人们玩你的游戏时,牢记这些事:

  • 他们了解如何玩这个关卡吗?在讨论行为调整时,我们发现教学是关卡设计的一项重要任务。如果玩家对你打算重复的谜题不理解,那么他可能需要一个更好或更透明的机制介绍,然后再进入他被卡住的谜题进行测试。
  • 关卡对玩家来说是否太难?这主要适用于游戏的早期关卡,不过您应该始终避免在没有适当平衡或玩家准备的情况下突然增加难度。如果玩家在游戏开始十分钟后就被一个挑战或谜题卡住了,那么你也许应该把这个挑战放在游戏的后面,或者建立更简单的关卡,放在玩家被卡住的挑战之前。游戏测试非常重要,因为当你玩自己的游戏时,你就会变得非常精通游戏,再也看不出什么地方太难了。
  • 不要干涉他们的游戏。当人们购买你的游戏时,他们不会听你解释游戏应该怎么玩。因此,你不应该阻止试玩者解释他或她应该做什么。如果他或她无法理解,你就应该在关卡中增加更多的教学环节。
  • 拥抱快乐的意外。有时,试玩者会揭示一种策略,以独特的方式解决谜题,或者 “玩弄 “系统以创造新的能力。例如,如果你知道从哪里跳,那么《SWARM》关卡的整个区域都是可以跳过的。当你看到玩家以一种你没有想到的方式进行操作或使用关卡时,请评估一下这是否会破坏游戏。如果不是,反而可能成为一个有趣的秘密,那就保留它。
  • 针对当前开发阶段进行游戏测试。引导玩家就与开发阶段相匹配的问题提供反馈。主要的游戏反馈应在资产创建之前尽早进行,而后期反馈侧重于发现可能阻碍体验、阻碍进展甚至使游戏崩溃的错误。例如,游戏机制或美术方面的反馈不适合在游戏发布前一个月进行,因为此时测试的重点应该是查找错误。向测试者提出与你希望他们提供的信息相关的问题,或者制作一份纸质调查表让他们填写。
  • 征求补充意见,但要坚持原则。虽然你希望得到有针对性的反馈,但获得额外的意见也是好的,以防测试者有什么意外的说法可以帮到你。不过,你也要做好准备,迎接一大堆荒谬的建议。游戏测试者通常会非常热心地帮助开发游戏,并会提出 “你完全应该在游戏中加入一些东西 “的设计建议。要学会正确地审查这些意见,从中找出对开发阶段有帮助的东西,而不是会破坏游戏核心理念的东西。还要学会以友好和不卑不亢的方式驳回不好的想法。
  • 在整个过程中,随着试玩者尝试你的关卡,请记录每个原型的优点以及可以改变或改进的地方。修改你的设计,并让某人测试你的下一个原型。接下来的两个部分将讨论两种类型的原型:非数字和数字。

非数字原型

多年来,游戏开发者都是在游戏进入测试阶段后才对其进行游戏测试,也就是在游戏发布前,资产制作已经完成的阶段。这可能是一种危险的游戏测试方法,因为已经来不及修复基本的设计问题了。在过去的几年中,有大量的文章论述了从游戏的非数字原型开始,在整个设计过程中进行测试的问题。甚至在游戏创意被输入电脑之前,设计者就可以使用非数字原型来探索游戏的可玩性。

大多数出版物详细介绍了用于游戏机制的非数字原型。然而,关卡设计师在某些类型的游戏中也可以利用非数字原型。特蕾西-富勒顿(Tracy Fullerton)在她的著作《游戏设计工坊》(Game Design Workshop)中描述了艺电(EA)如何利用一个真实的沙盒来测试《荣誉勋章》系列的关卡。设计师使用塑料树、玩具士兵和战场模型来绘制室外关卡。作者还描述了一种第一人称射击游戏的桌游原型,设计者为玩家在一个六边形网格中移动军队制定了移动规则(图2.44)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 16%title%
(图2.44:一种利用六边形网格和玩具士兵的第一人称射击游戏的非数字原型。设计师在棋盘上放置小木棍来定义墙壁。小木棍是简单原型的理想选择,因为它们可以轻松地被拾起并移动,以尝试不同的空间表达。)

与《任天堂力量》的方法一样,非数字原型可以在宏观和微观上定义游戏空间。例如,乔治梅森大学《游戏设计导论》课程的学生项目表明,非数字原型可以揭示游戏不同部分的空间情况。其中一个原型要求玩家在一个类似《糖果之地》的棋盘上,让自己的骑士角色通过不同的阶段,直到到达终点的公主。设计者希望设计一款故事性较强的角色扮演冒险游戏,因此选择了一个岔路极少的线性路径棋盘。在许多方面,这块棋盘是整个游戏的互动部分,显示了设计者的意图,即根据特定的故事节奏而不是玩家的选择来创造线性体验。作为对游戏环境的宏观展示,它允许玩家在一般游戏情境的线性进展中进行游戏,但并不对每个情境进行深入挖掘。

另一个学生项目的原型是一款潜行游戏,玩家必须躲避守卫、营救同伴并逃离监狱场地。这款游戏侧重于微观层面的游戏原型设计,允许设计者在监狱的一个房间内探索敌人移动和角色互动等问题。在课堂上展示的版本使用了一个完全开放的房间,没有任何墙壁,因为设计者专注于定义角色如何移动。不过,棋盘的进一步迭代可能会探索移动规则如何在更复杂的走廊和类似牢房的环境中运行。

非数字原型可以在宏观和微观层面对游戏玩法进行抽象测试,而数字原型则可以让设计师通过一种名为 “白盒”的过程来测试特定环境的游戏玩法。

使用白盒建立数字原型

当开发者从在计算机之外的原型制作过渡到数字形式的原型制作时,他们通过一种称为白盒的过程创建测试关卡。白盒是指关卡设计师使用简单的几何形状,通常是白色或带有纹理的块(因此得名),来创建关卡,以测试关卡是否实现了他们所期望的游戏目标。在设计过程的早期阶段,当设计师试图定义玩家角色和其他要素的游戏指标时,白盒可以帮助确定应该采用哪些游戏度量标准。设计师可以以某种方式勾画关卡的空间特征,测试不同环境的大小和形状,以获取不同的游戏体验,然后再向关卡添加具体的美术资产(图2.45)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 17%title%
(图2.45:为《SWARM》制作的白盒显示了在添加美术资产之前,如何在简单几何图形中对关卡中教授玩家如何杀死敌人的重要部分进行测试。)

用于进行关卡空间白盒测试的几何图形通常是为了模拟最终关卡设计中将使用的碰撞器而需要的最简单的几何图形。碰撞器是游戏引擎中物体的一个组件,模拟物体之间的相互作用。例如,在关卡几何体上附加一个盒状碰撞器将使该物体与其他物体互动,就好像它是一个六面的盒子形状,而不管实际美术资产的形状如何(图2.46)。碰撞器可以是简单的几何形状,也可以被制作成紧密贴合有机形状的形式。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 18%title%
(图2.46:这个植物上附加了一个盒状碰撞器,尽管它的3D模型呈有机形状。游戏中的玩家对象与其互动时,就好像它是一个矩形实体一样。)

Valve 在其关卡设计过程中广泛使用了白盒测试,在他们的关卡编辑器 Hammer 中,设计师允许通过简单而精确的建模进行快速的3D关卡原型设计。 Hammer 的基元称为 “笔刷”,用于大致定义关卡空间,然后对其进行游戏测试,以确定是否能创造出预期的体验。关卡设计师们会看到哪些地方做得好,哪些地方做得不好,然后通过编辑笔刷来改变空间。当设计师发现自己很少编辑主要空间,而是专注于较小的细节时,关卡就可以进行环境艺术设计了。

作为一个迭代过程,”白盒 “始于从Parti一样的关卡互动开始,逐渐向以艺术和装饰为中心的设计发展,这与室内设计并无二致。随着关卡几何图形的定义越来越清晰,环境艺术的标准也可以定义出来,最终成为关卡的构建元素。以度量为中心的环境艺术是设计过程的重要组成部分,将在下一节中讨论。

模块化的关卡设计

使用引擎基元构建关卡的一个好处是,这些基元在引擎中是标准化的,而且很容易重复。它们是模块化的,也就是说,预先制作好的部件可以很容易地复制、组装、拆卸和移动。自工业革命以来,建筑物都是由模块化元素组成的。其中许多都是预制件,在工厂制作,然后在建筑工地组装。现代主义建筑师是模块化建筑的忠实拥护者。例如,菲利普-约翰逊和路德维希-密斯-凡德罗就以设计使用预制钢材和玻璃构件的建筑而闻名。勒-柯布西耶设计的 “Unite D’Habitacion “是一座公寓楼,其中的公寓都是以模块单元的形式制作并堆叠在一起的(图 2.47)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 19%title%
(图2.47:勒-柯布西耶设计的 Unite D’Habitacion 公寓的剖面图和模型草图。)

我们用乐高积木来比喻关卡设计;模块化就是其中的原因。游戏开发是一个工作强度很大的过程,聪明的设计师会利用易于重复的游戏对象和纹理来减少对美术资产不断重新制作的需求。如果设计师能创造出一套如图 2.35 所示的模块化作品,那么关卡就可以像乐高积木一样组装起来,而不是像定制艺术品一样难以更改。

创建模块化资产还有助于本章前面概述的基于度量的测量方法。《SWARM》的设计者在一些非有机关卡的设计中使用了模块化地砖。使用预定义的地砖可以轻松测量滑板公园和迷宫等游戏环境。例如,设计者意识到,两单位宽的地砖是玩家在使用游戏的倾斜控制时能够平衡的最小单位,而不会感觉游戏难度不公平。在类似迷宫的谜题中,玩家必须在狭窄的迷宫中穿行,而不掉进带电的地板或酸液池中,因此使用了两个单位的瓷砖来构建边缘。

即使是像有机地形和植物这样的不太基于度量的元素,拥有模块化的部件也使构建《SWARM》的关卡变得简单。不太基于度量的对象,如地形和树木,可以按任意大小进行缩放,而不会相比其他物体显得突兀。它们还可以根据设计师的需要以任何方式旋转,以适应关卡中需要上坡或下坡的地区。

建筑师通过称为建筑进度表的文件来追踪他们建筑中的模块化元素。建筑进度表是一张图表,它规定了门窗或管道装置等预制产品、这些产品的尺寸以及它们在建筑中的位置(表 2.1)。关卡设计师使用的模块化构件也可以用类似的方式记录下来,尤其是当这些构件遵循基于度量的建筑系统时。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 20%title%

在游戏艺术指导中,通常会使用风格指南——建立颜色、图形、度量和其他艺术标准的文件——以保持团队的一致性。关卡设计进度表可以为关卡构建提供类似的效用。图2.48中体现的Half-Pipe式关卡的进度表可能类似于表2.2中的内容。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 21%title%
(图2.48:一个3D游戏中的Half-Pipe式关卡)
译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 22%title%

就算是那些没有明确比例的元素,比如树木和植物,进度表也能帮助规划关卡的风格,通过列举将在关卡中使用的元素。这种方式不仅有助于清单化构建特定环境所需的元素,还能在艺术方向上提供支持。

现在,我们已经探索了关卡设计的几种工作流程,接下来我们将演示几种流行游戏引擎中的工具,更具体地介绍关卡是如何构建的。

针对游戏引擎的简单介绍

就像有许多关卡设计方法一样,游戏设计师也有许多可以选择的游戏引擎。虽然对任何一种引擎提供具体的教程都不在本书的范围之内(这方面已经有很多其他优秀的书籍了),但我们将了解建筑设计方法如何应用于实际的游戏引擎中。为了最大化收益,我们将研究四个流行的引擎,包括Game Maker、Unreal Development Kit(UDK)、Source的Hammer Editor和Unity,以发现影响你设计游戏关卡的引擎特有因素。值得注意的是,本节将涉及特定引擎的方法和问题,因此只有{在【将来自3D程序的模块化对象导入】是关卡构建过程中绝对必要}的引擎中,我们才会探讨这方面的内容。如果你使用的引擎不在这里列出,仍然会有信息可以迁移到你自己选择的软件中。

Game Maker

Game Maker是由YoYo Games开发的以2D为主的游戏引擎。对于许多新手设计师来说,这是一款很好入门的软件。相比于完整的3D游戏,二维游戏通常在编程复杂性和为达到视觉完整所需的艺术量上更为简单(尽管有些采用极简主义艺术风格的例外情况)。Game Maker之所以被认为是一款出色的学习引擎,是因为它允许用户通过拖放逻辑元素来创建游戏,而不需要使用脚本语言。随着设计人员对 Game Maker 的熟练掌握,他们可以使用该引擎的内部脚本语言 Game Maker Language (GML),并利用其有限的3D功能创建简单的三维游戏(图 2.49)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 23%title%
(图2.49:在Game Maker的界面中,正在根据2的幂次测量法构建2D游戏关卡。)

对于使用本章前面所讨论的建筑方法(尤其是以网格为基础的度量方法)的设计者来说,Game Maker 是练习关卡设计的绝佳工具。Game Maker 中的关卡是以房间的形式构建的,这与其他游戏引擎中使用的场景类似。创建一个新房间时,该房间的窗口会显示一个网格,网格的间距是像素测量值的 2 次方,如 16 × 16(默认值)、32 × 32、64 × 64 等。网格大小可以设置为非 2 次幂测量,但这种测量比 2 次幂测量需要消耗更多的内存空间。

如果使用这些单位,就可以轻松绘制出符合网格方格大小的二维关卡对象,并将其放置在房间网格上。此外,遵循 Game Maker 网格系统还能帮助规划游戏角色的移动,其方式与绘图纸相同,都是根据基于测量的移动标准。通过了解角色在网格方格中的移动方式,可以相应地确定关卡对象的大小和间距。

Unreal Development Kit (UDK)

UDK 是本节将讨论的几个 3D 引擎中的第一个,它是 Epic Games 的虚幻引擎 3 的免费非商业用途版本,该引擎最初用于创建《虚幻竞技场 3》。UDK 因其强大的关卡编辑器和先进的光照功能而广受欢迎。关卡编辑器允许使用 UDK 的BSP画刷在引擎内快速创建关卡。BSP 笔刷的默认纹理设置可以产生纹理效果很好的表面,从而减少了通过 3D 艺术程序的 UV 展开功能为简单对象应用纹理的需要(图 2.50)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 24%title%
(图2.50:编辑空房间时的 UDK 界面截图。表面上的方格显示了纹理如何在引擎内对象上自动平铺,从而大大减少了对环境几何体 UV 贴图的需求。)

在UDK中进行编辑时,和我们将要讨论的其他引擎一样,理解单位系统对于确定对象大小是至关重要的。在UDK中,一个角色通常有96个UDK单位的高度。尽管这个测量不像Game Maker等引擎使用的2的幂设置那样简单,设计师仍然可以将其作为工作的基础。当使用从3D程序导入的模型(UDK称之为静态网格体)构建关卡时,建议使用缩放模型以生成适用于度量的静态网格体。

Source’s Hammer Level Editor

Source引擎于2004年首次亮相,推出了《反恐精英: 起源》和《半条命2》。与同年推出的虚幻引擎 3 一样,由于持续更新,它仍然是设计人员的热门选择。任何拥有 Source 制作的游戏的人都可以使用 Source,并可在 Valve 公司的 Steam 平台上下载。

Source引擎的内部关卡编辑程序Hammer,结合了许多使Game Maker和UDK等引擎受欢迎的特点。像UDK一样,Hammer是一个以3D为主的引擎,允许用户使用称为笔刷的几何基元编辑工具。像Game Maker一样,它也具有基于2的幂测量的网格系统(图2.51)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 25%title%
(图2.51:Hammer 的截图,显示了一个由笔刷基元构建的简单关卡。Hammer 的笔刷是可编辑的,因此可以在引擎中制作拱门和圆顶等物体。)

在引擎中创建关卡时,Hammer的吸附设置非常重要,因为环境必须完全封闭才能成功编译,即处理成可以在Source游戏中运行的关卡。吸附设置帮助用户构建适应这一限制的关卡,同时也有助于创建适用于度量的几何体。

Hammer的纹理系统也遵循其对2的幂测量的关注。默认情况下,导入Hammer的纹理的大小取决于它们的实际文件大小。例如,一个128 × 128像素的纹理将始终以相同的大小导入。尽管这些大小在单个笔刷面上是可编辑的,但默认大小是一致的,以至于编辑器甚至包含了以纹理尺寸注释为特色的测试纹理(图 2.52)。这种一致性可以实现强大的基于度量编辑功能。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 26%title%
(图2.52:导入 Hammer 的纹理大小与其文件大小一致。为了进行纹理和度量规划,引擎包含了带注释的测试纹理,显示每个对象有多大。)

Unity

我们要讨论的最后一个引擎是 Unity,这也是一个3D引擎,在大型和小型工作室中都很流行。与本文讨论的其他三维引擎不同,Unity 并不是为某一特定游戏而开发的工具,而是用于创建一系列不同类型游戏的工具。这种不专业化是一把双刃剑:该引擎可以灵活地创建多种类型的游戏,但却缺少其他两个 3D 引擎(这两个引擎最初都是为第一人称游戏而创建的)内部所拥有的关卡编辑器(图 2.53)。

译介丨关卡设计的工具和方法(续):《An Architectural Approach To Level Design》第二章 27%title%
(图2.53:Unity 的截图。图中所示的关卡原型由模块化对象构建而成,这些模块化对象在 3D 艺术程序中预制,然后在引擎中布置)

因此,在Unity中进行关卡编辑需要设计师进行额外的规划。Unity使用自己的单位系统,每个单位等于1米,因此构建度量很简单。不过,与 UDK 或 Source 不同,Unity 的3D基元缺少 UV 贴图,因此无法成为有效的笔刷几何体。Unity 纹理是平面映射的,这意味着纹理是从一个角度投射到基元上的。例如,如果缩放一个立方体基元,使其成为一个矩形实体,短边上的纹理就会被挤压。

Unity是一个关键在于使用模块化预制对象的引擎。这需要在3D艺术程序和UV展开方面额外花费一些时间,但这样做的结果将有助于创建适合度量的关卡,这些关卡可以从图纸上快速进行原型设计。本章前面展示的例子就反映了这种情况:为人工环境创建瓦片对象,为有机环境创建可布置的植物、树木和岛屿。Unity 甚至可以通过顶点吸附系统来辅助这种关卡构建,该系统允许用户将对象精确地吸附到其他对象的边角上。

译者注:本书成书已有多年,以上提到的游戏引擎都已发生了很大的变化,关于选择适合自己的游戏引擎工具,读者可到流媒体平台观看对比视频

总结

研究、规划和执行游戏关卡的工具种类繁多,它们可以共同创造更好的游戏体验。通过了解绘制空间图的不同方法,我们可以更好地观察游戏空间。在规划关卡时,我们可以将重点放在度量上,从而为游戏的实际操作做好准备。将这些发现应用到游戏引擎中,并在迭代过程中对其进行原型设计,可以确保我们的游戏关卡满足我们最初的体验目标。最后,探索不同的引擎不仅能让我们找到实现想法的最佳工具,还能帮助我们修改设计方法,以适应每种软件的限制。

在下一章中,我们将借鉴这些经验,探索现实世界和游戏世界中的不同空间类型。通过探索,我们将发现如何利用这些空间类型以及我们看待它们的视角来创造有意义的游戏体验。

分享到:

评论已关闭