用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系统的真实感表情绑定和动画流水线
基于人工智能学习的角色动画制作技术
...回到搜狐看看更多。
负责编辑:
本文地址:http://www.oh.55jiaoyu.com/show-254498.html
本文由合作方发布,不代表展全思梦立场,转载联系作者并注明出处:展全思梦
推荐文档
- 11.往年大连中考满分是多少
- 12.为什么说学播音毁一生,原因有哪些
- 13.淘宝店铺的优质好评语大全
- 14.考研可改变第一学历吗、专科考研可以改变第一学历吗
- 15.民学网查出的学历国家承认吗(民学网查出的学历国家承认吗是真的吗)
- 16.往年轻薄商务笔记本电脑推荐-商务轻薄本性价比排行
- 17.承德护理职业学院(承德护理职业学院2023年招生计划)
- 18.wreak是什么意思wreak的翻译(wake,area是什么意思中文翻译)
- 19.电子科技大学A+类学科名单有哪些(含A、B、C类学科名单)
- 20.systematic是什么意思systematic的翻译(systematically是什么意思中文翻译)
- 21.leant是什么意思leant的翻译(lean,on什么意思中文意思)
- 22.华南农业大学是几本大学,华南农业大学是一本还是二本
- 23.包头中考考试科目时间预测安排,包头中考考哪几门考哪些课程
- 24.高考430分能上什么大学,430分高考能报啥学校
- 25.朱自清的散文代表作有什么(朱自清的散文代表作有什么散文集有什么散文诗集有什么)
- 26.浙江有几所大学是985和211,全国985和211大学名单汇总
- 27.i5,1155G7和R5,5600U哪款好-对比评测
- 28.荷兰什么叫-荷兰弟为什么叫荷兰弟,出演蜘蛛侠原因曝光
- 29.警察警衔工资改革新政策及新方案【全文】解读
- 30.电大专科(电大专科毕业论文)
- 31.广东省高级技工学校官网
- 32.广州大学专科
- 33.大连陆军学院,原大连陆军学院校址现在什么是什么学校
- 34.亲们,谁给一份南京大学的研究生招生简章?(河海大学
- 35.他日若遂凌云志全诗及出处
- 36.铜绿的化学式是什么有哪些性质
- 37.「佛山市顺德养正西山学校初中部」往年录取分数线
- 38.公办本科(公办本科和民办本科有什么区别)
- 39.外交学院是名牌大学吗
- 40.往年湖南高考成绩排名一分一段表
- 41.全国有8所烟草院校是哪些(这4所大学门槛低)
- 42.私人垄断资本主义基本概念是私人垄断资本主义
- 43.难以启齿,这8部影片可以一看(性教育适合看的影片)
- 44.美国独立战争的性质爆发战争的原因是什么
- 45.往年东莞市高中排名前十最新
- 46.大朗网络教育(大朗教育)
- 47.往年甘肃省高中排名最好的高中
- 48.逻辑思维训练有哪些方法优秀训练方法推荐
- 49.浙江大学教务管理系统
- 50.人类的动物老师有哪些这属于什么学科
- 51.往年山西高考状元榜_山西历届高考理科状元和文科状元
- 52.往年北京舞蹈学院艺术类招生简章招生人数及专业
- 53.航空最好的5个专业就业前景如何
- 54.太原科技大学怎么样及评价好不好太原科技大学口碑如何
- 55.满招损谦受益这句话的意思是什么出自哪
- 56.舍本逐末发生在什么时期含义是什么
- 57.女孩子首选十大专业什么专业适合女生
- 58.国防生是什么意思指的是什么
- 59.河南省三本学院有哪些2018最新三本院校名单
- 60.往年龙岩高中学校排名榜单龙岩十大优秀高中
- 51.高职是什么学历?
- 52.择校生和指标生有什么区别
- 53.快来打卡!四川600岁光叶木兰开花了
- 54.大专毕业答辩不参加能毕业吗
- 55.自考的真实通过率是多少
- 56.学校核酸检测要钱吗
- 57.夜校是什么时候上课
- 58.新泰有哪些技校
- 59.大学有多少学期一年
- 60.怎么加入大学学生会
- 61.大学生到基层就业的重要意义
- 62.为什么老外都喜欢吃中国菜?这位法国妹子说出了其中的原因
- 63.专科医学院和本科医学院有什么不同
- 64.高三逆袭最佳睡眠时间
- 65.蓝海职业学校有什么专业
- 66.营养学是属于什么专业
- 67.择业期高校毕业生什么意思
- 68.读临床医学有什么要求
- 69.英语中“辣”的怎么说?你却只知道“hot”......
- 70.昆山有什么中专学校

