用PCG技术加速大世界地形生产,天美是如何用“黑科技”做到的?

用PCG技术加速大世界地形生产,天美是如何用“黑科技”做到的?

原标题:利用PCG技术加速大世界地形生产,梅田如何用“黑科技”做到?

导语:梅田13周年之际,梅田与知乎游戏举办了以“游戏未来十三问”为主题的圆桌会议,邀请游戏从业者、玩家、朋友共同探讨、展望游戏未来。本文为圆桌话题“2021年游戏行业有哪些可以提升开发效率的“黑科技”,前景如何?”接下来的回答,希望对你有所帮助。

答:梅田F1工作室技术中置发动机项目组组长钱龙旭

不知不觉,游戏开发行业已经过去了十几年,从刚入行的技术小白,到现在还一无所知的技术瓦工,见证了一个时代的游戏技术变革。曾在游戏开发SDK、端游戏MMO、休闲手机游戏、重型手机游戏、大世界手机游戏、大世界端游戏等各种产品工作,现为梅田F1工作室技术中引擎程序团队负责人。

随着游戏行业的快速发展,玩家对游戏的要求越来越高,对游戏的技术要求也越来越高,开发量也越来越大。现在,我所在的梅田F1工作室正在开发AAA级全平台的大世界游戏,这是一件非常具有挑战性的事情。

作为一个游戏引擎程序,我很清楚技术更新很快,我需要不断的学习来接受这个挑战。好在我们已经提前积累了多方向对标国际AAA厂商的技术能力,在全球范围内招募了众多具有AAA项目研发背景的人才。通过不断夯实技术基础,我们有能力、有信心接受新的挑战。在我们储备的技术中,PCG技术是目前大型世界运动会不可或缺的技术。现在,让我们简单介绍一下。

PCG(Procedural Content Generation)技术是最近热门的一种提高游戏制作效率的技术。这是什么意思?

互联网百科给出的答案:程序生成(英文:procedure Generation)是计算机科学中的一种算法,使计算机能够自动制造一种数据。在计算机图形学中,也叫随机生成,常用于制作素材图和3D模型资源,用于视频游戏领域自动制作大量游戏内容。程序生成具有减小文件大小、扩展内容和增强游戏随机性的优点。

我个人的理解:如果用在游戏中,简单来说,程序化内容生成就是用算法自动生成游戏内容。原创游戏内容需要美术和策划花费大量精力制作,而工艺方法可以大大降低人工成本。除了节省一些重复劳动,它甚至可以自动创建一些新的设计内容。想象一下,如果有一个程序可以自动生成游戏,那该有多有趣。也许那一天到来的时候,游戏开发者会被裁掉。

地形是大世界的基础。如果大世界没有地形,玩家就没有立足之地。地形和大世界一样大。如果能利用PCG技术加速大世界的地形生产,艺术和规划的人力消耗就能大大减少。

这里有两个困难。一、如何生成真实自然的地形?现实世界的地形不是一种随意的形状,它是一种自然的创造,往往具有赏心悦目的美感。使用算法生成美丽的地形是我们面临的第一个挑战。第二,世界巨大,内容复杂,涉及到很多制作人。如何让制片方高效合作是我们面临的第二大挑战。

今天,我将简要谈谈如何在大世界游戏中使用PCG技术加速地形制作的一些基本想法。

1。传统地形工作流程

我们应该熟悉传统的地形工作流程。Art首先找到一些参考高度图,导入到游戏引擎编辑器中,然后根据自己的需要通过地形编辑工具编辑地形。比如UE的地形编辑器为美术提供了各种画笔来刷刻地形,显然这种方法对于美术来说是一个巨大的工作量。

2。程序地形

一些可用的地形噪音

程序地形可以通过算法自动生成地形。随机噪声地形是常用的。该方法是一种构造性算法,通过设计一些噪声函数,如柏林噪声、沃利噪声、沃诺噪声、流量噪声等,随机生成地形高度信息。

另一种是侵蚀算法。通常,现实世界的地形是大自然多年来对地形影响的结果。这种算法通过数学建模来模拟侵蚀过程,进而得到模拟的自然地形效果。如热侵蚀、水力侵蚀等。......

让我们看几个程序地形的例子。比如如何用噪点表达丘陵地形?就像照片中起伏的山丘。其实很简单。让我们取一个噪声函数的绝对值。这时会在噪点的形状上出现凸起,达到表现山丘的效果。

无人深度山地空

如何用噪点表达脊线?很多大山都会有山脊线,就像图中的阿尔卑斯山一样。我们可以先取噪声的绝对值,再取逆值,然后反过来再升。

可以观察到在波形相交处形成一个尖点。该图显示了二维情况。如果在三维空间中形成一条局部最高点的线,则可以模拟该脊的形状。

阿尔卑斯山

如何用噪音表达河流?我们可以通过域扭曲来实现。这个方法很简单,就是把噪声函数的域变换一次。比如这个例子,简单的移动变量的位置,经过多次的位置扭曲,就形成了一些特效。可以看到图中高度数据的变化过程,最后形成一个像河流一样的效果。

刚才提到的例子是用噪声表示地形的简单有效的方法。但是真实的地形实际上有一些特殊的特征,比如自相似性。这是什么意思?

当我们从不同的角度观察真实地形时,会有一些相似的特征。山脉上的每一块石头,小山脉和小山脉都是起伏的。也就是说,如果用噪声来表示这个特征,就要求噪声在多个尺度上具有自相似性。

山脉

山丘

山石

为了达到这种效果,我们实际上可以直接叠加多层噪声。每一层噪音都有自己的频率和振幅,它们共同形成了这个分形地形。为了更好地控制分形效应,我们可以调整每层噪声之间的关系:有两种关系,一种是每层频率之间的变化率,另一种是每层振幅之间的变化率。

特别是,如果每一层的振幅和频率的变化是相互导数,这种多层噪声称为粉红噪声。特别是,如果变化率是2的幂,我们使这种噪声的每一层都是一个Octave,那么这种噪声的每一层的频率加倍,振幅减半。一般来说,Octave小于8就够了。如果太大,计算量会增加,效果不会大幅度增加。

这是我们常见的分层柏林噪声的效果,Octave为8。我们可以看到这种分层地形,是大高度的低频变化,小尺度的一些高频变化。

分层柏林噪声

纯流程地形的游戏比较好,比如《无人深入空》,《我的世界》。无人区深度空的地形非常好,关于噪点应用的技巧很多,做了一些相当不错的风格化效果。

没有人是深沉的空。

我的世界

现在总结一下纯程序地形的特点:

基于随机的算法;

相对技术性,艺术不易理解;

容易重复;

可控性差,艺术难以调节效果。

3。艺术引导的程序地形生成

既然纯程序地形生成有这么多问题,如果大世界地形制作想用程序技术提高效率,该怎么办?因为游戏场景的最终效果其实是由艺术来控制的,其实整个场景非常复杂,不仅地形存在,而且涉及到的很多东西都需要艺术来把关,所以我们需要的是艺术主导的流程生成。

这种工作流需要更多的考虑用户友好性,艺术中使用的工具是交互式的,易于使用。还需要有很好的艺术表现力,美术可以很方便的做美术设计。程序化技术的功能主要是用来提高工作效率,不像纯程序化的地形生成,一键生成地形,艺术很难参与其中。

对于这样的工作流,其主要成员可以是一个相对较小的团队。TA和引擎工具根据art的需求设计开发地形工具,工具开发完成后,art使用工具设计地形。

具体来说,以艺术为主导的工艺地形工作流程可以分为以下三个阶段:

1:原始地形生成。在这个阶段,LA和TA合作,通过使用一些程序化的地形工具,如UE4 Landmass、Houdini、世界机器、世界创造者和盖亚,根据世界的结构生成一个原始地形。

2:地形处理的程序工具。在这个阶段,艺术会根据原始地形制作场景,并添加场景的其他层,如河流、道路、岩石等。这些场景元素的制作对应于程序管道中的程序工具,这可能会对地形产生影响。

3:手动编辑。所有的程序工具应用到地形后,如果美术对效果不满意,那么需要手动调整形成最终的地形效果。

3.1原始地形生成

我们先来看看原始地形的生成。这个阶段的思路是,整个建模过程是一个从初始模型到高模型的过程,高度图数据是一个从低分辨率到高分辨率的过程,然后对真实地形进行侵蚀是非常重要的一步。

以胡迪尼为例,传说中大概有这些步骤。整个过程可以完全在胡迪尼完成,也可以通过定制的胡迪尼发动机在发动机中制作。TA完全在Houdini做比较方便,art在引擎编辑器做比较方便。各有利弊。

胡迪尼地形工作流程

具体来说,我们来看看这个过程。首先,体量可以通过手绘、投影几何或直接导入高度数据进行最粗略的建模。其次,为了获得更自然的效果,我们在一些细节上对粗糙模型进行了扰动,这可以通过在特定区域应用一些噪声或添加一些障碍物来实现。

播种后的地形有一些细节,更加自然,有利于未来的侵蚀效果。然后是脑叶。一般来说,真正的山脉会被河流或地壳运动切割。我们可以通过侵蚀算法增加侵蚀强度来获得这种切割效果。最后,我们可以从高度的层面重新映射,并重复建模不同的区域。例如,我们在第一遍中对地图的平原区域建模,在第二遍中对高原区域建模。

地形粗糙模型过程

粗加工模具建模精度低,迭代效率相对较快。大型造型设计应尽可能在粗模阶段进行。粗糙模型完成后,对地形精度进行上采样,精度高的可以有更多的细节,然后继续Shaping,再进行侵蚀。

为了获得更好的侵蚀效果,有必要在侵蚀前进行另一次扰动。侵蚀是一个耗时的操作,TA需要熟悉它才能获得更快的迭代效果。如果对效果不满意,可以反复塑形和侵蚀,得到最终的原始地形效果。

地形高模量过程

3.2使用程序工具进行地形处理

一旦原始地形可用,它将进入处理工具地形处理阶段。一般来说,PCG的工具和管道根据不同的工具进行分层,如湖泊、河流、道路、围栏和植被。

这里需要注意的是,每个工具都有依赖关系,前一个工具的输出数据会对后一个工具产生影响。比如我先用河流工具生成河流,然后用道路工具在河流经过的区域生成道路,所以道路工具需要考虑河流工具。例如,我们可以通过输出Mask来标记河流的区域,这样道路工具就可以知道这里有一条河流。

一般来说,这类工具的顺序需要提前指定,流程要设计好。

工艺工具流程图

这些程序工具可能会影响地形,包括高度和材质。至于地形的变化,有一个隐藏的意思,就是后一个工具对受前一个工具影响的地形进行操作。比如刚才提到的道路工具在河流后面之后,河流工具本身就会对地形进行变形,此时道路工具对地形的输入就是河流工具对地形变形的结果。

当然,有些工具可能不会使地形变形。例如,围栏工具一般不会影响地形。因此,在这个工作流程中,我们需要存储每一层地形的变化。没有这些中间结果,后面的工具就没有地形的输入。

3.3手动编辑

既然流程解析永远解决不了所有问题,那么我们就进入手工编辑阶段。问题又来了。手动编辑地形需要哪些阶段?

首先回顾一下程序工具的地形流程,如图,是一个链式结构。我们可以看到,我们可以手动编辑每个工具。比如河道工具影响地形后,如果美术不满意,可以编辑调整。在调整好地形的基础上,我们可以使用道路工具来铺路,这样会影响地形,然后美术可以在此基础上继续调整地形效果。

工艺工具地形流程图

有了这个过程,就有了如何存储地形修改的问题。

为了实现无损编辑,需要存储每一层地形的修改。建议将修改后的数据保存到外部文件,而不是编辑器场景,这样对胡迪尼比较友好。

另一个值得考虑的问题是,手动修改的数据是以不同的方式存储还是直接覆盖。直观来说,存储差异是有好处的。当前一阶段工具的地形输出发生变化时,手动修改的数据可能会被继承。例如,由于某些原因,道路工具抬高了整条道路。由于存储的差值,一些本地手动修改可以重复使用。

缺点是可重用数据的合理性其实很模糊。在很多情况下,差异数据是不可用的,应用这些数据后不容易找出错误。覆盖法优缺点明显,直接覆盖不会出错。但是,一旦上一层修改了地形,后续每一层的所有手动修改都会被废弃,后续的所有图层都需要修改。

基于正确性优先的原则,建议用覆盖代替差异。手动修改一般只是部分修改,覆盖的方式需要存储两种数据,一种是标记哪些区域已经修改的Mask信息,另一种是需要覆盖的高度图信息。

这样,我们有了一套完整的地形工作流程,但在艺术的实际运用中,我们仍然会遇到许多问题。

首先是可以手动编辑的阶段太多。大世界一般有几十层甚至几十层。工作流可以调整的地方太多了。逻辑艺术不易理解,第二种可控性差。前面提到过,前层的修改会影响到后层,导致修改频繁,非常容易出错。第三个最直接的就是美术反馈操作太繁琐,不容易上手。

工艺工具的手工修改过程

经过反思,虽然这个过程比较完整,但很多阶段其实是不必要的。由于程序工具对地形的影响频繁,不需要在整个阶段手动修改地形,所以最终的手动修改可以在整个程序过程前后进行,可以简化为四个主要的地形阶段。

原地形:世界机器胡迪尼输出。

手动修改1: Art可以在引擎编辑器中调整原始地形。

工艺工具的地形阶段:合并为大阶段,中间不允许手动调整。

修改2:手动调整最终地形。

整个过程可以反复重复。

过程地形工作流

3.4一些经验总结

①可控性非常重要

完全随机的地形生成是不可用的。

艺术导向,不是技术导向。

②无损编辑

原始地形不能丢失。

可以反复快速迭代。

③数据存储

易于导入和导出

使用,不要使用差异。

④依赖

后期取决于前一阶段的地形。

消除循环依赖

编辑前锁定时间以避免冲突。

编辑前及时更新,避免不正确的修改。

⑤不要过于依赖流程

⑥锁定

阶段越早,越早需要确定。

地形改造很重。

4。PCG技术的前景

PCG技术不仅用于生成地形,还可以用于生成世界环境的各个方面,如植被、道路、河流、湖泊、海洋、街区、建筑等等。

如果这些问题都在实际项目中得到解决,产生符合艺术需求的资产,那么制作大型世界游戏的成本就会大大降低。当然,并不是艺术没有关系,而是艺术可以专注于艺术创作,消除不必要的重复劳动。这样,PCG技术可以加快设计和验证效果的迭代速度。

此外,PCG技术还可以与机器学习等其他技术相结合,辅助艺术设计。这种技术可以通过研究现有的资产库数据,自动生成一些新的数字资产,而艺术会做出一些挑战,从而加快创作速度。

PCG科技甚至可以在一定程度上向玩家开放制作UGC内容,玩家可以像游戏制作者一样创造游戏世界。PCG技术的应用前景巨大空。

目前,除了在PCG管道的良好积累,我们在其他AAA游戏技术方面也取得了一些成绩。

F1技术积累图

在技术、艺术等方面。,目前,我们已经保留并在不断优化验证方向,包括:

顶级AAA公司和支持AAA质量开放世界的PCG工业游戏内容生产管道

下一代主机级渲染技术和艺术制作技术

GTA级都市模拟游戏AI技术

超现实飞行器物理仿真技术

基于光学运动捕捉和运动匹配的角色动画技术及制作流水线

基于FACS系统的真实感表情绑定和动画流水线

基于人工智能学习的角色动画制作技术

...回到搜狐看看更多。

负责编辑:

  • 姓名:
  • 专业:
  • 层次:
  • 电话:
  • 微信:
  • 备注:
文章标题:用PCG技术加速大世界地形生产,天美是如何用“黑科技”做到的?
本文地址:http://www.55jiaoyu.com/show-254498.html
本文由合作方发布,不代表展全思梦立场,转载联系作者并注明出处:展全思梦

热门文档

推荐文档