CEDEC | HAL分享:《ob电竞》自动化地形生成系统如何做的?
【ashkeling专稿,未经授权不得转载!】
ashkeling报道/《ob电竞》是HAL研究所为任天堂Switch平台研发的一款RPG游戏,它是《ob电竞》系列正作的第13代产品,也是该系列首款3D动作游戏,于2022年3月25日全球发布。
这款游戏令人印象深刻,尤其是集丰富的游戏玩法和精致外观于一身的游戏地图。这两个看似自相矛盾的因素之所以能够共存,很大程度上得益于团队新研发的自动生成系统。在日本CEDEC游戏开发者大会上,HAL研究所研发总部环境研发团队工程师加藤步以“星之卡比:探索发现的自动地形生成方法”为主题,介绍了其中的秘密。
以下是Gamelook编译的全部内容:
加藤步
兼顾游戏和外观的自动生成系统
2022年3月份发行的《ob电竞》,是星之卡比系列的第一款3D动作游戏,在CEDEC 2022舞台主要讲它的高品质游戏和外观效果,细节我们将在稍后叙述。在制作地图的时候,游戏玩法需要关卡设计师参与,外观需要美术师等不同岗位的同事,因此很难做到两者兼顾,不过,这款游戏之所以能够做到,是因为地形生成系统。
需要注意的是,这次演讲中的图片提到的2D和3D指的是地图结构,并不意味着2D图形或者使用多边形的3D图形。
在这款游戏的3D地图制作当中,关卡设计师用地图编辑器制作了块状地形,按下模型输出按钮后,就可以自动生成制作用的地形模型。有了这个“地形生成系统”,关卡设计师可以将玩法创作留到最后一刻,而且可以兼顾地形外观。
然而,这个系统并不是一开始就有的,原本的制作设想是在没有自动生成系统的情况下进行。虽然关卡设计师制作地形设计图、美术师制作一般的地形模型,但关卡设计师很难进行精准的调整和改变,而且美术师的工作量也很大。加藤说,“对于关卡设计师和美术师来说,这都是令人失望的情况。”这样,在以2D动作继承星之卡比文化的同时,可用于地形模型自动生成的系统就已经开始研发。
到现在为止,星之卡比系列中的地图制作,关卡设计师制作块状地形的地图时,美术师创作的部分就会自动配置,实现了类似于本次创作的自动生成系统
为制作《ob电竞》设想的工作流程,根据关卡设计师的设计图,美术师创作3D模型,关卡设计师很难做精准的调整和改变,让美术师的工作成本也很高。
首先,为了对目标地形有一致的印象,关卡设计师制作了地形,注入了美术师想要实现的地形愿景。关卡设计师的工作提前进行,可以说这体现了本作品的特点。然后,美术师提供的“凹凸不平的地形边缘”、“能够使部分地形看起来不一样”、“有机墙”等部分,成为了自动生成系统制作的主题。比较具有代表性的是草原面的生成,以及本作地图上令人印象深刻的崎岖地形,以及HAL研究所统称的“moko”实现。
关卡设计师使用Unity制作的地图编辑器放置块状组件创建地形的时候,美术师用Maya的曲线扭曲功能准备边缘部分的功能放置。只需要改变材料和moko,就可以制作出沙漠面和购物中心面,可想而知这样的效率有多高。
为了满足美术师愿景,实现了崎岖地形边缘的“moko”
地形由关卡设计师用块状部件打造
只需改变材质和moko,就可以打造出沙漠的一面和商场的一面
在“跨越部门的全面战争”中,创建一个新系统
就这样,工程师通过创造地形生成系统将关卡设计师和美术师连接起来。据加藤所说,“跨越领域的全面战争”已经开始。由于没能达到美术师要求的品质,因此该系统还追加了“创建道路”、“山体变形功能、切掉地形让地形有机化”,以及“地形切割零件”等各种功能。
比如,创建道路功能可以使用顶点颜色而不是准备网格或者使用投影。如果你再地图编辑器上改变想成为道路的地方的顶点颜色,系统就会在自动生成时参考这一点,把改变了顶点颜色的区域作为道路。
除了方便在地图编辑器中调整之外,当用一个纹理覆盖另一个纹理的时候,可以使用相同的UV(U是纹理的横坐标、V是纵向坐标),即使用于角也不会被拉伸。这种结构可以用在地形纹理发生质感变化的区域,比如地面上堆积的沙子,或者墙壁上的苔藓。由于地形生成系统自动设置了碰撞的属性,所以“在沙子上行走会导致沙尘飞舞”的效果也能够轻而易举地实现。
此外,由于地图编辑器通过组合地形块来创建地图,所以角落和边缘都是线性的,给人一种没有生机的印象。为了解决这个问题,系统引入了山丘零件、地形变形和地形空心化。山丘部分不是块状的,而是有机形状、可以放置到地图上。失真功能可以通过故意向线性地形的顶点坐标添加噪点来扭曲地形,从而产生自然纹理效果。
而且,比较有趣的是被挖空的部分,当放置在地形上的时候,就会把那部分挖出来,加藤说,“功能和山丘部分完全相反”。山丘部分在放置的时候会形成隆起,但挖空部分会形成一个洞。可以说是负的地形组件,将地形进行了破坏。由于这款游戏的设定是文明遭到了破坏的世界,所以这个部分可以说是兼容性很高的,可以用在很多地方。切割组件可以用于门,由于地形被挖空,即使关卡设计师想要改变位置,也可以只移动这个挖空的部分,而不用改变地形块。
挖空的部分使用了Maya的布尔运算,可以产生对象的逻辑积、逻辑和与逻辑差。可以用挖空的组件用于指定被损坏的墙壁。用逻辑差挖孔,然后通过逻辑积制作填补那个孔的地形(恢复被破坏前的状态)。这个地形可以被复制和切割,成为卡比破坏时候带来的碎片。除此之外,通过对地形的角进行倒角、在拐角和moko周围自动添加顶点颜色的功能等等,让自动生成的内容质量也得到了提高。
早期自动生成的地形还是无机的
通过增加有机形状的山体部分,减轻了外观上的无机印象。
镂空零件也可以用于门
用于破坏的镂空部件,可以破坏地形并形成碎片
添加了倒角功能(上图)和添加变形功能(下图),使地图看起来更自然
两位美术师创作了大约40个主题左右的数据,例如草原、建筑物、混凝土和沙漠等,这些数据都是自动生成阶段所必须的素材。在全部250张地图当中,大约有230张是由5到10名关卡设计师使用自动生成系统创作的,这个系统一个很大的好处就是,你可以自由改变主题,比如当时用于洞窟制作的平台,只是改变了主题就可以变成游乐园,这是很让人惊讶的。
准备了大约 40 个主题的数据
只需更改主题、修改装饰组件,即可在不同的平台上使用地图
草原地图质量改进的过程。多亏了自动生成系统,我们能够同时提升游戏玩法和外观
自动生成流程
虽然有时UV会被中断,但由于在这款游戏中的相机是反固定的,因此可以将被中断的部分带到相机无法拍摄到的地方。
为了放置moko,实现精细控制网格变形的功能
由于它是一个新开发的系统,因此在其运用过程中进行了反复试验。除了地形的输出需要花费时间、或者没有输出,如果不断更新主题数据,就会出现让以前制作的地图变旧等问题。
可以说,正是因为这个自动生成系统带来的效果,让游戏发布之后取得了很高的评价。在游戏研发当中,平衡玩法和外观是一个很重要的问题。在这款游戏里,首次对星之卡比系列采取了3D地图,通过新系统的开发,我们实现了丰富的游戏玩法和美丽的外观效果。
如若转载,请注明出处:http://www.ashkeling.com/2022/09/496311