如何评价Epic Games今日公布的虚幻引擎5?
如何评价Epic Games今日公布的虚幻引擎5? 很多专业回答了,别的就不多说了,补充一点儿(窃以为的)Nanite背后的核心要素技术(之一)的细节。不是科普文,只适合有一定渲染基础的人看。https://devblogs.nvidia.com/introduction-turing-mesh-shaders/解释几个常见的误解:
3D scan或者Z brush的模型(几千万或者上亿面)可以直接用:对也不对。可以直接扔进游戏引擎编辑器。但是并不能直接扔进渲染管道。中间有个meshlet的剖分预计算过程。简单来说,烘培(或者模型导入)的时间更长了。(所以我觉得今后美术和关卡之间还会有一个云服务器的距离)而且,对于复杂模型,meshlet的自动剖分不见得理想,有时候还是需要手工辅助调整;但是低模-LOD-法线烘培流水线的确可能是要被淘汰了。(well,在移动端还没有追上来之前,其实也不会淘汰,而是更加分裂)模型存储高达*TB:对也不对。制作环境当中的原始文件(3D扫描结果或者zbrush)的存储开销的确会很大。所以采用这个新工作流的团队要考虑用中心存储替代开发人员的本地存储,并且要上万兆网。但是经过meshlet剖分计算之后的顶点存储,因为meshlet剖分,每个碎片的顶点索引可以被控制在16bit,这就可以大大压缩存储容量。
(以上回答基于技术原理推测,不代表UE5或者任何商用产品实际表现)
5/16 更新
先贴两篇很有见地的分析:
https://zhuanlan.zhihu.com/p/140943267为什么UE5支持的多边形面数一下子提升了这么多?不管猜中没猜中,能够快速给出自己的模型,甚至付诸实践去验证,真的是非常了不起的。
在这个基础上,从我的角度点评几句。一样只是一家之言,而且也是靠猜,所以随便看看就好。
Nanite这个技术的重点是实现了高模的渲染。也就是原汁原味地渲染原始的高模,这应该是一个前提条件。无论是Tess,还是用频域变换的方法,这其实都是在低模上模拟高模,并不是也不能原汁原味地还原原本的高模。也就是说,添加出来的细节其实和原版有很多偏差。
尤其重要的是UV。Tess技术之所以没有大流行,就是因为UV极难控制。从各位大神分享的Tess的结果mesh上大家也可以看到,哪个3D模型师敢那样切割多边形,我觉得无论哪家公司都会让他第二天卷铺盖走人。
所以,我相信Nanite所存储的是原始的模型。它所解决的是如何根据屏幕自适应加载模型的问题。而不是如何从低模添加细节模仿高模的问题。
我觉得有一个细节很有意思。视频当中提到贴图基本都是8k。8k贴图的像素数是64M。这看起来好像没啥?但是视频当中还提到有个模型是3300万面。这就很有意思了,因为3300万(33M)差不多正好是64M的一半。
熟悉渲染的同学应该知道,虽然一个三角形需要3个顶点才能描述,但是对于连续的三角形,如果用triangle strip,那么理想情况下每增加一个顶点就可以增加一个三角形(另外两个顶点与别的共享)。而在实际项目当中,当然不会那么理想,但是2:1这个比例是比较常见的。
所以我们不妨大胆假设如 @ycz 所说的那样,顶点是存储在贴图上的。那么8K贴图差不多正好能存储33M三角形。也就是说,3300万面的模型顶点数据,差不多一张8K贴图就可以存完。(当然,因为顶点还有顶点属性,如UV等,可能还需要配套的一张或者几张8K贴图)。
那么这个贴图多大一张呢?对于高模,我们保守估计顶点坐标需要fp32才行。在这种情况下,一个顶点是12个字节。当然因为GPU的对齐关系,恐怕实际按照16字节排列会效率更高。当然多出来的4个字节也不必浪费,用来存存PBR要的粗糙度金属度啥的,或者干脆就是顶点所在的三角形编号(面序号),都可以。
这样的情况下,非压缩纹理:64M x 16 = 1GB。很恐怖是吧,但是在PS5的5GB/s+的SSD带宽下,整体的加载时间也在200ms以下。况且这是非压缩的情况。
结合VT技术,根据实际需要加载这个纹理当中的一小块,那么就更快了。
然后这张纹理还可以做Mips。如果巧妙地在这张图上排列顶点,使得在3D空间上相邻的顶点在图上也排列在一起,那么Mips实际上就等于求相邻几个三角形的退化三角形。也就是自动实现了减面的效果。
当然这有个前提,就是要将模型正确地剖分成小碎片,避免跨越边界(导数不连续或者激变的地方)。否则Mips会将这些边缘给平滑掉。我想,Epic也有提到对导出模型的DCC工具有要求,应该也是指这个意思。可能导出的模型当中不仅仅要有mesh,还需要有子表面的分组信息,以便引擎正确将其分割到不同的VT小格子当中。
Anyway,所有一切在UE5正式公布的时候,随着文档以及源代码可见,自然会有确定的答案。但是看到即便是知乎这种并不专业的地方也能有那么多有见地的分析,十分受鼓舞,对国内数字媒体的将来发展,至少在技术层面,更加感到有信心。
顺便再说一下Lumen(对GI自身修养不够所以就只说一句):看到有回答调侃数mm到数千米的说法,其实我倒是觉得可能。这种说法其实恰恰是在暗示Lumen的GI是基于屏幕空间(像素)的,而不是基于场景坐标尺寸的。无论是几mm还是几千米,只要显示在屏幕上,就是那么点儿像素,是吧。所以它们的确是可以都被cover掉的。 Karis在奠基了UE4的PBR管线后,转身在UE5实现了革命性的virtual geometry。真鬼才!
这套out-of-core系统对未来的适应性很强,但是如果你要把这套管线发挥最大化利用的话,惊艳之余,冷静过后,我们来算算这个帐,先不说运行时,如果一个游戏全用8k贴图,上百MB的单模型资源,这游戏最后包体有多大?1T游戏不是梦!反过来,对CG来说这就不是问题了。
有同学开玩笑说,这不就是个mesh shader吗?当然不是。你考虑下virtual texture,本质不是靠暴力算的,所以VG如果继承的是VT的精神,那么他必然可以做到控制消耗,设定一个规定的大小,流式传送需要的顶点数据。
相比较Nanite是Karis的亲儿子,Lumen乍看起来很像Enlighten,熟悉UE的同学一定知道Daniel Wright,Lumen就是这位大神操刀的
补充更新:5/15
Nanite使用基于cs的软光栅。(链接文章原本有链接后来被删)
lumen使用的是非三角面的Ray tracing,场景数据结构采用SDF,voxel和height map。使用screen space技术处理微细节,sdf处理中等粒度细节,voxel处理粗粒度的细节。这些配合temporal技术来达到优化性能的目的。
ref:https://www.eurogamer.net/articles/digitalfoundry-2020-unreal-engine-5-playstation-5-tech-demo-analysis 感谢评论的反馈,发现打脸了。
因为之前并没有看到官方人员关于Lumen的官方解释,所以凭视频猜测是Lumen的实现依然基于rtx的这套方式去做。直到看到这篇采访,Brian Karis和Daniel Wright两个大佬亲自现身说法
Inside Unreal Engine 5: how Epic delivers its generational leap
确实证实了:Lumen是光追,但不是像rtx这样的三角面精确光锥,也不依赖硬件加速。
众所周知,光追直接将光描述为射线,模拟这些射线在空间里不断反弹、折射、传播。
而这里最大的计算压力,在于要计算每一条射线到底击中了哪个三角面。因为光追考虑的并非屏幕中的三角形,而是整个场景的所有三角形,大型的场景可能是上亿起算。
rtx给的思路是:我用硬件帮你加速这个计算。
而Lumen用了一个非常有意思的思路去实现:
既然找到击中哪个三角形的计算量那么大,那么我干脆不去搜索三角形,而是用其他更简化的数据结构表达这个场景。
Lumen用了三种方式去做ray trace
1.对远距离传播,使用voxel去计算
2.对中距离传播,使用distance field去计算
3.对短距离细节,使用屏幕空间计算去修正。
有趣的是,这三个方案,其实unreal都做过,分别对应SVOGI、DFGI、SSGI
SVOGI(基于voxel的GI)当年原本是UE4钦定的方案,使用voxel表达场景,搜索方式也类似BVH,只是对象是体素而不是三角形,有一定程度的简化。但这个方案,因为PS4实在跑不动而放弃,sweeney也是公开表示过郁闷之情。事实上Nvidia也做过类似的方案,叫VXGI。其实效果还算不错,但因为RTX的出现,当然是被抛弃的节奏,毕竟老黄要卖显卡。
UE4官方案例用VXGI打光,虽然AO有点过浓,但整体的品质不输lightmass太多,1050跑20fps左右
DFGI(距离场GI)是基于距离场的实现,同门师弟还有DFAO(用距离场算AO)和DFRTS(用距离场算阴影),结果后面两个保留下来了,但DFGI因为精度实在不行(其实DFAO精度也不行,但很多情况下可以接受),有诸如漏光、脏(插值不匀)等问题,最后默默的从代码库里屏蔽了。
DFGI目前已不可用,图来自UE4论坛,可以看出左下角这个图内墙照亮的区域很有限,墙的上边缘还有疑似漏光的问题
距离场的问题在于,一个模型,最多只能用64 * 64 * 64的volume texture去表达。你想象一下把一辆车切64刀,每一块下来其实都很大,根本不能精确到车身上每一个细节。在这样低精度的环境下进行raymarch,漏光的问题就很容易出现,同时一些比较细的结构产生的光照反弹、遮挡也很难表达。
另外,DFGI基于raymarch,而raymarch发射出去的射线,是有长度限制的,如果通过增大步长来提高最大距离,精度就下降;反之最大距离就不够。所以DFGI也不太适合计算长距离的GI。像视频开头那道阳光可是打亮了整个大山洞。
至于SSGI,目前是公开可用的GI功能。既然冠名screen space,那么就只能计算屏幕里能看见的光传播。但是,这种方法,不但忽略了屏幕外的光照反弹(一盏红灯照亮的区域离开了屏幕,那么SSGI会完全忽略它的亮度贡献),还无法计算屏幕中遮挡的部分(箱子后面藏一个红灯,遮挡的部分同样被忽略),结果就是这个GI的效果非常不正确。在我们的实践中,SSGI用于现代建筑的环境下还不错,但有丰富植被的自然环境效果就一般般,因为植被的层次负责,有很多像素被遮挡在后,SSGI无法对其做计算。
而Lumen,非常聪明地结合了这三个方案:
Voxel计算较慢,但可以支持远距离的搜索,那么我用来处理远距离的传播,弥补距离场raymarch的距离限制
而距离场就用来计算中距离的传播,这样raymarch的步长也可以缩短,提高精度
Voxel和距离场完成了主要的空间级传播,解决了屏幕空间没法表达整个立体空间的问题。而距离场的精度问题最后用屏幕空间的信息修正一下。
除了Lumen,采访中也提到,Nanite基于自己的compute shader实现软光栅化,Mesh shader和Primitive shader都只是备胎。
这对老黄的N卡来说,可不是好消息。
Lumen这个方案有优秀的跨平台性且开源,各大厂可能纷纷效仿。
RTX虽然提供了精确三角面碰撞计算,但问题是性能又远达不到支撑完全GI的程度,使用降噪方案,画质上未必有绝对优势,但性能却也是刚刚及格,硬件却贵的要命。
老黄的显卡可还怎么卖~
当时看到Turing架构的时候,虽然觉得牛逼,但隐隐也会想,把需要高度自由定制的关键算法做到硬件里,到底是不是一个好的选择。毕竟,软件可以迭代,硬件是固化的。如果硬件满足不了算法的需求,那这个就变成了摆设。
接下来Nvidia怎么推动技术标准的演化,拭目以待。
(A卡:???)
(原答案,大的结论被打脸,可以看上文,但是几个分析还是有效的,新的Lumen方案是否能解决,我们依然需要观察)
来聊一下视频里没有提到的光追坑
目测lumen大概率就是现在rtx光追的威力加强版(支持了AMD平台),因为目前UE4.25有的坑似乎一个没少。
1.在光照剧烈变化的时候,暗部的GI噪点依然存在,这个是由于目前GI都是分帧叠加再去噪,所以光照变化的时候由于叠加历史不正确而出现噪点。平时有直接光照所以看不大出来,但暗部因为只有GI就会比较明显。
(仔细看暗部,会发现有一种模糊感,建议直接看原视频1080p,知乎图片压缩比较难看清)
(之前测试使用final gather模式的RTGI照亮暗部,因为精度和噪声的缘故,产生的光照也具有这种难以描述的模糊感,但性能确实轻松达到30fps+的水平,1080p+rtx2060)
2.视频规避了植被,因为目前光追需要持续构建BVH,静态物件可以只构建一次,但画面中有海量带顶点动画的植被就需要每帧都刷新海量的BVH,是性能硬伤,目前似乎也还没有人提出比较完美的解决方案。4.24提供的顶点动画支持也是针对单物件且需要手动开启,足见这个功能存在的性能风险。
(植被加入顶点动画后如果没有刷新BVH,那么光追阴影就会出现部分面发黑的问题,因为真正的顶点和BVH里的顶点已经匹配不上,此外墙上的投影也不会动)
3.视频里透明物件不多,透明/alpha test投影的支持目前也是一堆堆的坑,不过这些随着时间应该会逐步解决。
4.至于为什么没有顺道炫一下4.24新增的毛发系统,目前估计是对光追管线的整合不完善。这也是光追管线一个比较大的痛点,就是老的各种shading model、vertex factory都需要针对其做适配,还要考虑BVH的构建。另外这套毛发系统目前还非常非常不稳定(正在深受其害中的路过:P)
(插片实现的头发,无物理)
不过好消息是,PS5的光追性能看来是杠杠的,实时光追普及化指日可待。
至于nanite,真心的牛逼技术,应该是结合了virtual texture的思想并用mesh shader实现。其他答案里也说了不少这里就不再赘述。
不过大家千万不要觉得产品里真的随便用zbrush高模,看着红红的硬盘空间还有惨烈的导入、构建时间,我觉得大家还是会老老实实该减面减面、该烘焙法线就烘焙,毕竟virtual texture出现都有10年以上了,也没见哪个游戏真的8k贴图的随便往里塞。但是影视方面的同学确实是制作规范上解放了不少。
至于其他方面,预计UE5本质其实还是UE4.30,也就是一个功能更新比较大的迭代版本,但是大的已有模块并不会一下子都来个大翻新(比如蓝图、sequence、mobile管线等)。但即使这样,随着niagara和chaos这些东西正式化,再加上nanite这样的神级系统,你还是不能不说,UE5超香的。 就在不久之前,我们刚刚揭开了虚幻引擎5的神秘面纱。我们对于次世代的愿景之一就是让实时渲染细节能够媲美电影CG和真实世界,并通过高效的工具和内容库让不同规模的开发团队都能实现这一目标。
欢迎观看 “Lumen in the Land of Nanite”,这是一个在PlayStation 5上实时运行的实时演示:
https://www.zhihu.com/video/1244243928972632064
该演示展示了虚幻引擎5的两大全新核心技术:
Nanite虚拟微多边形几何体可以让美术师们创建出人眼所能看到的一切几何体细节。Nanite虚拟几何体的出现意味着由数以亿计的多边形组成的影视级美术作品可以被直接导入虚幻引擎——无论是来自Zbrush的雕塑还是用摄影测量法扫描的CAD数据。Nanite几何体可以被实时流送和缩放,因此无需再考虑多边形数量预算、多边形内存预算或绘制次数预算了;也不用再将细节烘焙到法线贴图或手动编辑LOD,画面质量不会再有丝毫损失。
Lumen是一套全动态全局光照解决方案,能够对场景和光照变化做出实时反应,且无需专门的光线追踪硬件。该系统能在宏大而精细的场景中渲染间接镜面反射和可以无限反弹的漫反射;小到毫米级、大到千米级,Lumen都能游刃有余。美术师和设计师们可以使用Lumen创建出更动态的场景,例如改变白天的日照角度,打开手电或在天花板上开个洞,系统会根据情况调整间接光照。Lumen的出现将为美术师省下大量的时间,大家无需因为在虚幻编辑器中移动了光源再等待光照贴图烘焙完成,也无需再编辑光照贴图UV。同时光照效果将和在主机上运行游戏时保持完全一致。
这一品质上的飞跃得益于无数团队的努力和技术的进步。为了使用Nanite几何体技术创建巨型场景,团队大量使用了Quixel的MegaScans素材库,后者提供了具有成百上千万多边形的影视级对象。为了支持比前世代更庞大更精细的场景,PlayStation 5也大幅提升了存储带宽。
该演示还展示了现有的引擎功能,包括Chaos物理与破坏系统、Niagara VFX、卷积混响和环境立体声渲染。
虚幻引擎4与5的上线时间表
虚幻引擎4.25已经支持了索尼和微软的次世代主机平台。目前Epic正与主机制造商、多家游戏开发商及发行商密切合作,帮助他们使用虚幻引擎4开发次世代游戏。
虚幻引擎5将在2021年早些时候发布预览版,并在2021年晚些时候发布完整版。它将支持次世代主机、本世代主机、PC、Mac、iOS和Android平台。
我们正在设计向前兼容的功能,以便大家先在UE4中开始次世代开发,并在恰当的时机将项目迁移到UE5。
我们将在次世代主机发售后,让使用UE4开发的《堡垒之夜》登陆次世代主机。为了通过内部开发证明我们行业领先的技术,我们将在2021年中将该游戏迁移至UE5。
虚幻引擎的分成门槛提升至游戏总营收达到100万美元
大家仍然可以一如既往地免费下载并使用虚幻引擎开发游戏。但从今天开始,分成门槛提升到了游戏总营收首次达到100万美元时。全新的虚幻引擎许可条款将给予游戏开发者们远比其他引擎的许可模式更慷慨的待遇,且其效力可追溯至2020年1月1日。更多详情,请参见常见问题。
Epic在线服务上线!
好友、匹配、游戏大厅、成就、排行榜与账户:我们为《堡垒之夜》开发了这些服务,并使其登陆了7大主流平台——PlayStation、Xbox、Switch、PC、Mac、iOS和Android。现在,Epic在线服务将免费向全体开发者开放,只需一套简单的多平台SDK即可!
将你自己的账户服务、平台账户或Epic账户系统与这些服务混合搭配使用,就能直通由超过3.5亿玩家以及他们的22亿好友组成的庞大跨平台社区,覆盖超过5亿的设备。
联系我们
UE反馈需求:https://trello.com/b/NvJrWDb7/ue-request
虚幻引擎官方QQ群:1018846968
虚幻引擎官方B站:https://space.bilibili.com/138827797
官方社区邮箱:egc-community@epicgames.com
官方社区经理:大钊(jack.fu@epicgames.com,QQ:2722937652)
投稿联系:知乎上私信或联系小辉辉-社区管理(QQ:258327199) 我来讲讲UE5对电影行业的影响吧。
我是电影学院摄影系的研究生,我毕业论文写的正是虚拟制作(Vitural Production),妈呀,这正准备云答辩,马上论文里三分之一的东西就要被淘汰了,我的内心是一阵崩腾。
原来这种技术的更新,一般只有CG行业的人才会格外关注,但是昨晚的朋友圈刷屏里,我身边认识的大量的摄影师、导演、电影后期制片都纷纷转发,电影人们瞬间被惊醒——什么?现在游戏都能到这个画质了?
唯一没转发的是我认识的一后期公司的老板,他只是默默得转了一句,后期公司太难了。
下面我来讲讲为什么UE5会对电影行业产生颠覆性的影响。原来电影人对于利用游戏引擎进行电影的制作的有点嗤之以鼻的。
你要是跟一个电影人说,你这个片子拍得很游戏啊!那绝对是在骂人。
但是在UE5这一波过后,你再跟电影人说你的电影拍得很游戏啊!那导演估计会觉得你把他捧得有点高了。因为目前在电影特效领域渲染的画面,还没有这个UE5demo渲染的质量高呢!
不过从行业的发展看来,UE5今天的发布,其实主要是补上了其在超高模型分辨率和实时全局光照中的最大短板。
但UE在电影行业上的布局其实早就已经开始了。
过去几年里,我一直在研究如何用引擎来辅助电影创作。在之前的行业应用中,游戏引擎主要被用于电影的预览制作。
在2017年的时候,我就作为引擎技术指导参与了电影《鼠胆英雄》的预览制作中。我们当时用了UE和Unity完成了《鼠胆英雄》超过100分钟的预览画面。
当时,我们就用到了激光扫描扫描和场景重建的技术进行预演的制作。
我与技术团队前往了多个实拍取景地,利用激光三维扫描和航拍照片建模的方式,对场景进行三维扫描。并利用这些数据进行了场景的三维重建。为《鼠胆英雄》的虚拟勘景提供了数字资产。
用激光三维扫描仪进行三维扫描
激光扫描仪生成的全景图
激光扫描仪的基本原理与激光测距仪一样,它利用不断旋转的反射镜向外不断发射激光,并计算激光反射回来的时间差,从而得之该点到扫描仪之间的距离。当激光扫描仪旋转一圈之后,则可以获得周围一切物体与扫描仪之间的距离,形成点云文件。激光扫描同时也会拍摄全景照片,通过将点云和全景照片进行像素和点的位置的一一对应,就可以得到带有色彩信息的点云文件。
激光扫描出来的模型
因此,可以将无人机拍摄的照片映射在激光扫描的模型上,最终生成带有高清贴图的模型文件。
经过贴图处理后,导入至游戏引擎里
当时,我们利用这样的制作流程,将完全物理精确的场景信息,通过激光三维扫描还原到虚拟场景中,这样后期就可以进行VR虚拟堪景和虚拟拍摄了。
我拿着虚拟摄影机在虚拟场景中进行测试
但在2017年的时候,我们仅仅能利用这个技术进行虚拟预演。但因为引擎的画质还是离影视级差距太大,这些预演数据只是可以进行参考作用,而无法进行实际电影的拍摄。事实上我们当时压根就没想到用这个东西能拍正式的影片。
但现在UE5更新之后,我们可以直接导入数以亿计的三角面,也就是说,我们利用激光扫描仪和照片建模出来的毫米级精度的数据,如今可以经过处理后直接变成引擎内的资产。(当然,实际上还需要去除光照信息,进行补面和优化等看起来很美,实际很麻烦的过程),但这至少是能在引擎内复现真实世界的一大步。 这实在是让我们做电影CG行业的太兴奋了!
想象一下,刚刚我们扫描的场景数据,可以被精确地在引擎中高质量地还原。然后我们还能制作高质量的数字角色。然后我们拥有了动作捕捉和表情捕捉技术,我们再扛上一个虚拟摄影机,我们就可以在虚拟空间内进行拍摄了!
17年摄影师利用在轨道车上架设虚拟摄影机(就是那几个小点),进行虚拟拍摄
图上那几位推轨道的和掌机的摄影师如今已经是行业内小有名气的摄影师了,而且他们估计也是最早的一批虚拟摄影师。
未来虚拟摄影师这个行业将成为摄影行业的必备技能,传统的摄影师也必须掌握虚拟拍摄技术,才能在虚拟电影制作行业内找到一席之地。 Nanite有提到是Virtual Geometry,猜测是和Virtual Texture类似的思路,纹理不限大小和分辨率,全部分成tile,每帧动态stream,几何Mesh数据也用同样的方法,mesh数据不限精细度,离线处理成mesh cluster(参考前面索尼答主的回答),运行时根据像素级别的精度动态stream。Virtual Texture和Virtual Gemo配合起来画面精度确实能有相当大的提升,并且对draw call和memory的优化也是巨大的。
刚看到评论说Lumen不依赖光追和硬件这就很interesting了,不依赖硬件还可能和CE一样做了自己的ray tracing shader,但是不依赖光追就有点黑科技了,很难想象光栅的screen space怎么处理各种复杂光照情况+越来越离谱的渲染分辨。目前看趋势Probe Based GI在各方面都十分优秀且大量3A游戏都有运用,很好奇Epic到底用的什么方案
—————————————————————————————————————
大胆预测下,Lumen全实时的GI应该和之前NV发布的DDGI类似,实时光线跟踪的irradiance volume, 完全unify的照明,mesh, 粒子,体积雾全部可以接受间接光,难点是probe分布和性能取舍。当然也有可能Epic用了自己开发的算法,但基本上是基于光线跟踪没跑了,光栅话那一套out了,这才是下一代硬件的大趋势。非常期待Epic给的方案。
至于Nanite,知道的不多,看起来很黑科技,可能是一套比较高效的资源管线,运行时再配合Mesh shader之类的动态负载。也是非常next gen的技术。
其他的开发层面的,希望能有一个牛逼的脚本语言,蓝图虽然好但是缺点也很明显,如果能有一个深度定制的脚本语言,同时有蓝图的便利和文本的可维护性那真的是一个巨大的飞跃,非常看好。 演示视频给我们展现了很棒很震撼的东西。
其实我挺关心程序方面有没有啥飞跃的变化的。
是不是还是开发五分钟编译两小时,
是不是还是把一个fps游戏的gameplay框架揉在引擎层面上,
是不是蓝图还没砍,还是没有脚本语言
是不是和IDE的配合还是惨不忍睹(不知道jetbrain家的那个有没有改善这问题)
有没有一个看起来像是给人类用的UI框架
之类的
说直白了,这些看着很炫酷的东西,是属于大投入大制作的厂商的,其实很多开发者到死都没机会用上。但是开发体验折磨人这事,是切切实实每个开发者都得面对的“我真有一头牛”的大事。
udk到ue4的时候,变化特别大。
想着ue5会不会也来个大变化,然后看到介绍说兼容前代引擎,心凉了半截。
具体看看啥时候官方放出可以下载到的版本吧。怀有一丝侥幸期待着它能改一点是一点吧
一直在讨好美术和TA,也来个能让程序大呼卧槽的东西吧
Unity:然而我的内心毫无波动,甚至还想再砍两个功能,再丢两个满地bug的半成品出来。
Unity 上海:然而我的内心毫无波动,甚至还想再打磨一下“特供版”
图片来自网络
顺带说起来,Unreal的大部分用户,
要么是那种高制作的大厂,
要么就是那种全靠美术主导、蹭引擎自带渲染的小团队。
大厂倒是不担心,自己都有技术懂原理的,做东西都有分寸。
我倒是有点担心会不会这次“我们可以随便塞一堆模型进去”的宣传,再像蓝图一样在“非游戏厂商”的领域搞出一堆妖风邪气来
(我现在有个外快收入来源,就是帮“我会蓝图了我能拿虚幻做游戏/政府外包/多媒体会展”这类的小团队擦屁股。这种情况还不在少数)
虽然说调侃了Unity,但是真要说起来,我感觉UE5的变化对Unity冲击不大:Unity本来就没在“3A大作”的领域有多少市场,本身和UE5的特性所对应的用户厂商群体就不怎么重合。
你米其林三星牛排再好吃也不会影响肯德基的生意是吧。
但是我感觉隔壁CryEngine可能危险了……
其实我还挺喜欢CE的 饼画挺大
我们从视频中最吸引人的两个Feature说起:
Nanite和Lumen
Image Credit: Epic Games
先来看看Nanite,
“作为Unreal号称的Next-Gen Feature,在Geometry层面Nanite可以支持Artist从Zbrush直接导入巨量面数的资产或是照片扫描的模型而不用考虑任何优化问题,也无需在DCC中手动为Mesh制作任何的LOD,或是烘焙高模的法线细节,贴图可以用到8k甚至16k...“今晚我朋友圈里的Artist都沉浸在欢乐的海洋中,这不就是他们梦寐以求的美术生产流程吗
@顾老师
虽然拓扑作为当今Pipeline中最受Artist诟病的环节之一,一直希望能有可观替代方案。然而实际情况是,作为Tech feature的show off demo一般来说会有比较夸大的宣传水分在里面,在Epic与GamesBeat的一篇采访中我们也可以看到:
“That’s because it was designed to show off Epic’s engine tech without needing think about elements like resolution and performance, which will be tradeoffs next-gen developers will have to make regardless of which engine they use or what hardware the game runs on.
因为该demo被设计为在不考虑性能和分辨率的情况下来展示Epic的新引擎技术。但对于今后的开发者来说,无论是哪个引擎或平台,都需要合理作出取舍。“目前Epic暂时没有放出更具体的面数优化细节。就结合目前能看到的信息,我认为这个技术确实可以在某种程度上优化当前的工作流程,在具体开发过程中反映为技术要求的放宽等等。更重要的是对M&E影视从业者来说确实是一个福音,让我深刻怀疑这个feature游戏开发中是否能用上(手动狗头)
By the way,视频中的一堆雕像因为几乎没有变体,所以也可以基本可以理解为作为instance Batch在一起渲染的,实际上只画了一次。有点欺骗观众的感觉: )
Image Credit: Epic Games
有人会惊叹了,Unreal5是怎么做到不需要对美术资产进行优化就能够支持这么多三角面实时渲染的,答案很简单,之所以Nanite宣称无需手动制作LOD,是因为这一步会交给引擎去计算。
结合采访内容和官方推文,我认为自动计算LOD才是Nanite里比较靠谱的feature。虽然在日常工作中以Simplygon为首,自动生成LOD的流程已经比较常见了。但如果在引擎外部省去这一步流程,对整个美术资产的workflow也是一个很大的提升。
结合采访的内容我们可以看到,Nanite会根据导入的高模为目标游戏平台自动生成对应的LOD:
“The engine does all the work behind the scenes. Even if ultimately your target’s going to also cover mobile, the engine will make clever LODs (level of detail) for that platform without the usual drudgery associated with making game assets
引擎会在后台完成所有的优化工作。就算你的目标平台是移动端,引擎也可以根据对应的硬件指标去创建智能LOD,而不是像传统流程一样花费大量时间去做优化苦力。“Nanite在渲染画面时,只会保留必要的环绕Player周边环境的三角面,因为在实际渲染中不可能在场景中同时读取内存中的所有信息,这是不现实的。需要在视角移动时去实时加载。
这里可以注意到很重要的一点是和SONY的合作,文中多次提到PS5中的硬件内存读取速度大大提升(SSD)。Epic也在努力把这一步从硬件条件中解放出来(off actual hardware)
接下来是Lumen,
我们知道对于PBR光照环境中最重要的一点是Ambient Light,也叫GI,传统的流程中需要我们给场景物件划分2U(Lightmap UV)来烘焙光照贴图,这时候得到的场景光照是静态的,不能随灯光的改变而变化。
在宣传片中Lumen给到的核心feature是Dynamic GI,这不是一个新鲜的东西,实际上可以当做我们更熟悉的光线追踪。像在虚幻4中也都有Ray Tracing的尝试,在较好的硬件设备上可以达到Ray Tracing GI,Shadow,AO,SSR等效果。
An overview of Ray Tracing in Unreal Engine 4但重点是Lumen宣称无需DXR的硬件支持就可以达到Runtime RTX的效果,但官方也没有提供任何对比,所只能理解为第二块大饼。
当然我本人也非常期待这个feature能优化到什么程度,这对美术的生产流程有着重大意义。
(感觉可能是更优化的Ray Tracing算法,欢迎了解的大佬们讨论~)
新的feature看爽了也希望虚幻官方能更多的关注在流程搭建上,毕竟Fortnite作为Unreal5首发游戏,只有在开发过程中才会总结出一套能真正用于游戏开发中的Pipeline经验,为业界所用。
Image Credit: Epic Games
今晚的Unreal5宣称片推出后,我们又会把它和当前的Unity版本进行比较。虽然我本人对此不可置否,但这很明显能够反映出两家对于自身产品线路的规划。
近两年来Unity也开始在基础建设领域发力,从17年普及的PostProcessing Stack到18、19年的HDRP和URP定制渲染管线。让开发者们在Unity中获得一个物理准确的场景变得更容易了起来。但很多地方还很难尽如人意,只能等待官方的进一步更新。
由于本质上Unity是个平台公司,内部并没有游戏项目,所以近两年除了在Gaming外,也开始拓展Industry、M&E、AEC等业务。但这几个新发力的领域除了官方MWU的几个Demo一直没有特别有说服力的客户案例。(虚幻:谁不是呢)
反观Unreal,因为Epic Games本身有游戏项目推进,所以Unreal从产品角度讲对开发者就更加友好。毕竟只有真正做游戏的公司才会了解到制作过程中遇到的坑,能更focus在优化整个游戏开发的Pipeline上。(当然还是有很多朋友吐槽编译的)
无论如何,从本次推出的这两个feature来看,Unreal5已经在为进军下个世代Assets Creation Workflow发力,在这之后应该会成为一个新的趋势,值得期待。
Reference link:
Epic Games: Unreal Engine 5 will bring a generational change to graphics 业界革命
从晚上10点开始, 这个贴子开始在朋友圈刷屏.
点开之后, 开幕雷击:
Nanite虚拟微多边形几何体可以让美术师们创建出人眼所能看到的一切几何体细节。Nanite虚拟几何体的出现意味着由数以亿计的多边形组成的影视级美术作品可以被直接导入虚幻引擎——无论是来自Zbrush的雕塑还是用摄影测量法扫描的CAD数据。Nanite几何体可以被实时流送和缩放,因此无需再考虑多边形数量预算、多边形内存预算或绘制次数预算了;也不用再将细节烘焙到法线贴图或手动编辑LOD,画面质量不会再有丝毫损失。然后看了演示视频... 不愧是次世代的游戏画面, 超出现有游戏画面一个档次.
但是从业界角度来看, 画面的质量还是次要的, 最重要的是生产流程...
在现行的业内流程里, 一个模型制作完成后, 美术需要制作低精度版本, 需要制作法线贴图, 需要烘培静态光照贴图... 但这不是流程最长的步骤. 流程最长的步骤通常是在游戏实测中发现模型的面数还是太多, draw call和内存占用还是太高, 因此需要反复进行之前的流程, 降低面数, 调整LOD, 巧妙的混用静态光照图和实时光影, 最终达到性能和画面质量的平衡.
美术资源很贵, 很大一部分钱是用来"调整(降低)精度"和"制作辅助资源"的.
现在虚幻5说, 这套流程不需要了... 模型做完 (或者扫描完), 直接放进来就行了... 是一亿面还是十亿面, 你们不用关心... 这就是大家高呼神迹的原因.
从生产线的角度来讲, 这个技术的普及, 会大幅降低美术资源的制作成本和流程, 将很多人力从繁琐的工作中解放出来. 夸张一点, 或许会压缩某些人力需求市场.
原理猜想
这种神迹是如何实现的呢? 现在透露的信息还不多, 大家只能做一些猜测.
大部分人并不相信, 在硬件没有奇迹的情况下, 仅靠引擎算法就能几百倍的提高渲染性能, 所以很多人都猜测是虚幻引擎对这些资源进行了自动化处理, 根据目标机器的性能, 预先自动生成合适精度的资源 (我是指在游戏开发阶段而非运行阶段, 评论区好像有同学误解), 并在游戏里实时切换. 游戏运行时仍然需要低模和LOD, 只不过这些资源是自动化生产的.
这个猜测在视频中也有印证:
但是等等... 2000万? 这个好像仍然比我们日常提到的面数高了一个数量级...
底层原理似乎是20年前的一篇论文...
Play Station 5 扬眉吐气
所有的技术都是虚幻引擎提供的, 但视频中却反复强调, 实机画面是在PS 5上演示的. 虽然可以肯定, 未来所有的主流平台, 包括 XBOX, PC, 手机, 都可以陆续进入次时代, 但在目前的时间点上, 大概PS 5就是最合适的演示平台. 毕竟, PS 5虽然别的不行, 但那个SSD架构还是非常惊艳的.
如此出色的画面, 如此流畅的动态表现, 什么都能优化, 只有数据量大小是没法优化的: 没有超高速的硬盘读取速度, 怕是享受不了这场次时代盛宴.
年初 PS 5 的首秀被众多玩家诟病: 几乎有一半时间都在讲那个SSD的硬件架构原理, 没有任何真机画面, 公布的GPU参数也差强人意. 但是现在回头来看, 或许索尼的布局反而颇有深意: 下一代的游戏引擎会自动处理好全局动态光照和像素级的面数, 最大的瓶颈就是在硬件传输上
如果早在那个时候, 索尼就公布了这一段 PS 5 的真机视频, 那我等索狗也不用忍辱负重这么多天了...
展望未来
虽然真机演示视频已经有了, 大话也都吹满了, 但是虚幻5离我们还有段距离. 虚幻5的预览版要在2021年初发布, 完整版则要更晚. 如此出色的表现, 怕是各个硬件商, 包括电脑和手机, 也都需要相应的时间去调整适应. 在未来的一年(或者几年)里, 场景美术和TA们只能一边期待一边继续优化资源了.
但是, 未来一定是光明的!
It's time to see what's next!
页:
[1]
2