哪些新技术即将影响游戏行业?这里有一份来自Unreal Engine资深技术工程师的答案

加速会  •  扫码分享
我是创始人李岩:很抱歉!给自己产品做个广告,点击进来看看。  

作为现阶段市面上最有影响力的通用引擎之一,Unreal Engine的新进展也备受关注。36氪也在上海采访了Epic Games资深技术工程师王祢,了解了Unreal Engine的新进展,及Unreal Engine在游戏与人工智能结合方面的一些尝试和研究。

王祢有超过10年的虚幻引擎使用经验,有console游戏、掌机游戏、PC MMO游戏、手机游戏开发经验。2005-2009年在Ubisoft, 作为引擎程序员参与开发了Endwar和Cloudy项目。此后在英佩游戏开发了xbox游戏,组建了手游团队。现在是EpicGames China的引擎技术专家,参与和帮助了众多使用UE3和UE4的项目解决了各种问题。

以下为采访内容的整理。

Q: 作为通用引擎Unreal 接下来的进展可能会有哪些?

王祢:

有些人认为,Unreal作为通用引擎,实时渲染的画面已经接近现实,已经到了一个天花板高度,但事实上,目前引擎的实时渲染和离线渲染依然有比较大差距,对于图形工作者来说,这个差距还是相当明显的。主要是对于动态的全局光照,以及对于一些特殊的材质,在实时渲染中还有着相当的提升空间。事实上,根据恐怖谷效应,越是接近真实的场景用户就越会觉得瑕疵明显,最后这一小点不真实反而是非常难跨越的鸿沟,需要从硬件、渲染等多方面去解决。当然方面硬件本身在提升,使得一些原先很难实时计算的算法可以实时化;另一方面,Unreal Engine和实时渲染领域也在做更多改进,推动实时渲染技术,譬如今年Siggraph我们推出的Meet Mike对于实时渲染写实人脸起了很好的展示作用。

近期,Unreal Engine的一些新版本中也有一些新的功能。比如,2017年GDC期间,Epic Games与The Mill数字工作室展开合作,为雪佛兰汽车公司,制作了AR实时短片《人工赛车》(The Human Race)。影片中车辆的本体是一辆名叫Mill BLACKBIRD的实体车,不仅可以任意改变形态,还几乎可以在所有拍摄环境中模拟出任何车型,期间Unreal引擎帮助在车身实时叠加真实光照环境,十分逼真。此外,值得一提的是,这一过程中车辆的AR镜头基本上实时、无缝渲染合成,导演可以立刻查看镜头效果,无需再像以往等到数天之后查看。类似的功能在Unreal Engine4.17版本已经实现,其中包括了一些渲染的改进(Bent Normal,Reflection Occlusion),以及整个用于合成AR图像的Composure插件。

哪些新技术即将影响游戏行业?这里有一份来自Unreal Engine资深技术工程师的答案

其实在引擎中的很多子模块,我们都在进行改进,我们称这些更新换代的模块为对应模块的2.0。譬如非线性的影视编辑工具,以前叫Matinee,新的系统叫Sequencer,在近期的版本中有大量的易用性和功能性的改进,让大家使用Unreal制作影视动画更方便高效。

另一个新的模块可能要到今年年底或者明年初才会正式发布,是我们的粒子编辑器。新的粒子系统被称为Niagara ,从名字中就可以看出是以前粒子系统Cascade的升级版本。事实上上面说道的The Human Race中的粒子特效就是用Niagara的内部版本制作的,新的系统无论是可以达到的效果还是运行效率都有大幅提升。在新的粒子系统中, 每个粒子都有各种定义好以及可以自定义的事件可以用来触发行为的变化,例如碰撞、或者游戏逻辑事件等,同时粒子的分布规则也有了更强大的定制性,可以根据指定的mesh表面作为分布。为了易用性、灵活性,新的粒子系统会有两个模块,一个是Stack模块,与原有Cascade一样,每个Emitter都可以由各个预先定制好的子功能模块控制,叠加到对应的Emitter上,方便快捷做出传统的效果。但在后端我们会将其转化为一个Graph,类似蓝图的形式。对于需要更复杂和细致的控制粒子逻辑行为的情况,用户可以用蓝图的形式来连接Emitter的行为。这些蓝图还会转成HLSL,这意味着所有的粒子逻辑计算都可以在GPU中完成,GPU粒子可以不再像以前一样受限,以后可以对每种粒子系统动态生成对应的代码。即使是CPU粒子,也会做一些优化,把计算的操作数packing称vector,由相应的vector machine做加速处理,相比于传统的粒子系统也有2-3倍的提升。

音频模块也有比较大的改进。今年GDC也展示了新的音频模块。最大的变化是混合计算都是在引擎中的音频模块中完成,不再依赖于外部的库。这意味着,音频系统的各个功能能拥有更好的跨平台性,只要计算力足够,所有的音频效果在所有引擎支持的平台上都可以使用。同时音频引擎也预留有接口给到第三方,可以接入各种音频功能,例如HRTF的实现之类的。

此外,我们也有尝试改进直接在引擎中做简单的人形rigging,刷不了的权重,以及简单的sculpting功能。例如利用两个VR手柄在VR环境中实现3D建模。此前,Google、Oculus都有推出类似的绘图工具,这方面Unreal Engine也有研究。

这些新变化将会随着之后的版本会推出,预计会在今年年底或者明年会推出,尝鲜的用户也可以在GitHub上体验。这些功能其实开发了很长时间,之所以会这么晚才推出主要是因为Unreal Engine的功能会在在内部所有的游戏都使用验证,当做到足够好、足够稳定、用户体验足够方便的时候才会推出。

Q: Unreal Engine 在人工智能方向有哪些研究和尝试?

王祢:

借助AI,可以提升游戏的体验。此前,Epic Games大中华区总经理吴灏在接受采访时就有提到这点。

ML可以应用在游戏引擎的很多方面。当然对于图像处理,尤其是后期参数调整之类的功能,可能和内容创作者的意图直接挂钩的功能,可能应用ML的意义不太大。

此前的游戏AI更多的是让NPC、敌人的表现更加自然,让动作更符合人类感官尝试。游戏AI还有很大的提升空间,比如,角色动画方面。在SIGGRAPH上也有一些这方面的论文,比如利用卷积神经网络可以使复杂的实时游戏环境中玩家角色动画更为真实。在大多的游戏中,角色动画是通过手动的方式制作或者通过动作捕捉制作的。这样一来,当玩家单人通关时,每一位玩家看到的动作周期是一样的,会重复几千次。爱丁堡大学的研究人员则开发了面向“Character Control”(角色控制器)的“Phase-Functioned Neural Network”(简称PFNN),它是一种全新的角色动画处理技术,可以使游戏中人物的动作更加真实。

育碧正在与这一团队合作,我们也有与他们接触。从目前的效果来看,前景不错。但是目前的可控性还不够好。这也是目前很多看起来效果不错的前沿算法在实际使用中的一些问题。游戏还是有一些设计成分在的,如果游戏和现实世界一样,玩家可能也不会喜欢游戏,因此游戏中基本都会有设计师指定的成分。但是目前很多前沿的算法,都还不太适合人为控制,到实际应用还有一定距离。

素材内容生成可能还是在DCC工具中实现,但是引擎也可以做一部分。比如,前年的时候,Unreal Engine做了一些尝试,在引擎中集成了一些相关的功能,我们也展示了相关的Demo,将大量拍摄的照片上传到了系统,根据模型解析当前的光照环境,生成材质参数,最后生成贴图。现在,Nvidia等公司也在做类似的尝试。这其实是一个趋势,目前写实类的游戏开发成本越来越高,但是有这样的工具和方法,成本就可以降低下来。

在游戏制作环节,基本每个环节都可以利用AI提升效果或者效率。除了上面提到的动画融合,全身的追踪也是一个方向。目前可以追踪到的身体部位还是比较少,在通过大量的数据训练后,可以根据人物的骨骼、身高等信息,推算出更符合人类常识的正常的动作。在人物表情方面,可以基于机器学习,推算出所有的肌肉群的权重,使得人物的表情更加真实,去年SIGGRAPH我们也展示过这方面的Demo。

关于和AI结合,Unreal Engine也有在做尝试,并且有一些不错的结果。我们在几何辅助生成,角色动画生成,PBR材质参数生成,工具集中海量内容的分类等功能都有探索。

不过,Unreal Engine的关注点还是在实时渲染和逻辑控制。未来,有些功能可能是不会自己做的,但是可以和第三方合作。

Q: 接下来有可能对游戏行业产生推动作用的商用技术可能有哪些?

王祢:

如刚才所说,大量通过AI来辅助做内容生成的的技术都会对行业有推动作用。

对于小团队来说,可以利用PCG技术(过程自动生成技术)。去年底,Steam上线有一款游戏名为《宇航员》,是一款沙盒游戏。游戏中,所有的星球都是可以探索、甚至挖掘至地心的。这一团队仅有6名人员,大量使用了PCG技术。对于小团队来说,这会是一项非常有价值的技术。

另外可能也已经有公司开始尝试在实时渲染领域使用光线跟踪。传统的实时渲染都是使用光栅化的方式来绘制的,并且在这上面积累的大量的算法和经验技巧,要很快的替换掉是不太可能的。但是在一些特定情况下可能会有帮助,例如在VR领域,通过光线跟踪的硬件和对应的图形API,可能可以在镜片的片元的光线出发来计算场景主光的贡献。



随意打赏

网络游戏行业
提交建议
微信扫一扫,分享给好友吧。