开发者

游戏帧数暴涨&无需读图?谈谈PS5和RTX3000的黑科技?

开发者 https://www.devze.com 2023-01-11 16:34 出处:网络 作者:JS百科
【PConline杂谈】对于游戏玩家来说,最近是一系列重磅消息。新一代游戏机,无论是PS5还是XboxSX,都已经公布了价格,并将在年底上市;在PC领域,老黄也提供了全新的核弹RTX3000系列,性价比高得可怕。这些新的游戏硬

【PConline杂谈】对于游戏玩家来说,最近是一系列重磅消息。新一代游戏机,无论是PS5还是Xbox SX,都已经公布了价格,并将在年底上市;在PC领域,老黄也提供了全新的核弹RTX3000系列,性价比高得可怕。这些新的游戏硬件不仅会在性能和价格上带来惊喜,还会带来新的技术,这将彻底改变未来游戏的体验。

Xbox SX和PS5都出现了,但你能说出它们将如何改变游戏吗?

至于新硬件带来的游戏技术,光线追踪可能是提到最多的一个,可以带来更逼真的画面。不过,对于游戏的整体体验来说,可能是另一种技术,会有更翻天覆地的影响。然而这项技术却被很多玩家忽略了。今天就来说说新一代游戏硬件在游戏数据传输的I/O机制上的创新会给游戏带来的惊人变化。

现今游戏的大问题:数据I/O瓶颈

如果你是一个有一定经验的游戏玩家,应该不难发现,游戏多年来一直都有一个大问题。在过去,这可能不是什么大问题,但在过去的十年里,越来越多的游戏拥抱了开放世界,地图被做得越来越大,花在阅读上的时间也越来越夸张。有些游戏,也就是在SSD环境下,依然有足够的时间读图给你泡杯茶,体验相当疯狂。

即使换成SSD,还是需要等很长时间才能看完图片

这其实反映了游戏在I/O方面的瓶颈,在传统的过程中,数据存储在硬盘上,游戏数据必须从硬盘读取到内存,然后由CPU分发,再传输到视频内存,最后由GPU处理。可以看出,游戏数据需要通过硬盘-内存-视频内存的冗长链路进行传输,在这些链路中还需要依靠CPU调度,效率不高。

游戏数据的传输过程,首先通过CPU从硬盘读取内存,然后CPU将数据加载到视频内存中交给GPU进行渲染

随着游戏的地图越来越大,越来越细致,游戏数据I/O的瓶颈越来越突出。这主要在以下几个方面制约了游戏的表现。

读图。's对自然的第一个影响是阅读前面提到的图片。只要地图足够大,即使使用SSD,也还是会有明显的等待时间,所以就不赘述了。

对于像《血源诅咒》这样的游戏,复活、通关和地图更改都需要冗长的阅读

读图作为一种古老的游戏机制,已经陪伴玩家很久了。但是为什么游戏一定要看图呢?甚至游戏为什么要做成不同的等级?在游戏数据I/O瓶颈越来越突出的今天,越来越多的人开始思考这个问题。

场景制作。游戏数据的I/O效率不高,使得游戏制作者无法一次调用太多数据来制作理想的巨大场景。

游戏运行时,GPU处理的数据来自视频内存,视频内存甚至内存的容量都比不上硬盘。游戏制作者必须在蜗牛壳里做一个道场,用几个G数据构建当前画面的所有游戏场景;否则,需要从硬盘中重新读取数据,以替换当前的视频内存和内存数据。

这样一来,游戏场景要么牺牲精细度,要么缩小尺度,否则就会频繁读图——。其实很多游戏确实需要经常看图。为了掩盖阅读图片,避免中断游戏体验,游戏制作者采用了许多巧妙的方法。比如《神秘海域》中,玩家长时间爬山,身后会出现悬崖崩塌等场景。同时,随着崩溃,旧地图被删除,视频内存中的数据被清空,下一个场景的数据被读取,而读取图片的过程被CG动画等手段掩盖。

《神秘海域》系列游戏会使用崩溃、爆炸等。删除旧地图并释放视频内存容量

但无论如何,这只是暂时的解决办法。受限于有限的视频内存和较低的I/O效率,游戏场景始终难以随意扩展。如今,随着越来越多的精细画面和越来越多的高精度纹理占据越来越大的容量,游戏场景的制作受到游戏数据I/O瓶颈的制约,这一点越来越明显。很多游戏都做过打洞开发者_开发问答等很多场景,也就是在——打洞,没有太多数据堆积场景,此时也可以加载下一个大场景的数据。想像超人一样几秒钟飞越几个城市?抱歉,游戏现在无法完成。

近年来,帧数上限。,市场上出现了许多高刷新率显示器,最好的甚至将刷新率堆积到240赫兹。但是不难发现,即使游戏质量降低,很多游戏的帧数还是达不到这个水平,此时的GPU占用率其实并不高,这其实是游戏数据的I/O瓶颈造成的。

CPU频率已经达到最大值,但GPU还远未满负荷,帧数仍然无法运行到240以上,部分原因是CPU成为了I/O调度的瓶颈

如前所述,需要CPU参与游戏数据从硬盘到内存,最后到视频内存的调度。高频调度数据时,CPU成为瓶颈,游戏帧数无法进一步增加。

下一个时代的游戏硬件往往肩负着引领游戏变革的使命,PS5和RTX3000 Ampere GPUs正是如此。

PS5:独有的架构打破I/O瓶颈

先说说PS5。Xbox SX和PS5都使用SS

D作为存储介质。但是,双方又有所不同,PS5的架构更多地为打破游戏I/O的瓶颈而设计。

根据当前信息,PS5的SSD传输速率达到了5.5 GB/s,但这不是关键。关键在于,PS5的游戏数据读取,和传统流程是不同的。在PS5的架构中,在一定程度上,GPU可以直接向SSD索取所需要的游戏数据,这减少了数据中转的环节,效率大为提升。

PS5的SSD速度非常快,但真正的革新在于架构

PS5是如何做到这一点的呢?这需要从当前游戏的数据存储架构说起。

当前游戏的数据,是以打包的形式存放在硬盘中的。一张张贴图、各种纹理的文件,往往会集中打包,当游戏需要相应数据时,才会解包输送到显存当中,随后再交给GPU渲染。

某PC游戏中的纹理文件,其实是一个纹理包,要输送到显存解压

如此一来,显存就不得不存放大量未必用得到的贴图纹理数据,每次切换新场景都必须历经一次读包-解包的过程,这在游玩过程中,就体现为读图。

为什么游戏数据要打包放置?在传统HDD硬盘中,将零散文件统一打包,有助于减少磁头寻道,HDD硬盘的性能瓶颈就在于此。将游戏数据打包为大文件,可以让HDD持续传输数据,提升性能。

PS4等机器仍使用HDD,如果纹理不打包分散存储,那么HDD冗长的寻道时间,会占据更多读图时长

现在已经进入了SSD时代,SSD没有寻道这一概念,对零散文件的读取速度是HDD的百倍不止,更合理的机制是GPU需要什么贴图纹理,就直接读取什么贴图纹理。但由于当前的游戏主机PS4、Xbox One依然采用HDD,游戏也只能随主流适配HDD,因此游戏的做法还是将数据打包在一起,这令SSD需要读取额外的大量数据,并没有发挥出应有特长。大家从HDD换用SSD,感觉到的变化也就是读图更快了,但读图始终是一道迈不过去的槛。

在PS5中,情况终于得以改变。根据目前透露的消息,针对PS5开发的游戏,其贴图等数据不再集中打包,而是分布放置(或是打成更小的包),游戏可以仅仅读取所需数据到显存,效率大为提升。

PS5的存储架构,GPU能更直接读取到SSD的数据,SSD的主控也提供了解压纹理包的功能

PS5的独到设计,有两个好处。

·消灭读图的过程。游戏数据不再需要统一打包、读取,可以按需实时读取,更加灵活,没有了统一载入也就是读图的过程;

·解除场景规模限制。前面提到,游戏场景规模受限,是由于显存难以承载大场景所需的海量数据。在PS5的新存储架构中,场景所需要的数据分散存储在SSD中,实际需要的时候才会实时读取,这些数据再无必要一次性载入显存,大大减轻了显存负担,也令更大场景的制作成为了可能。

在PS5中,SSD的作用在某种意义上,更像是显存

理论上如此,实际也是如此。索尼早前演示了运行中PS5中的《蜘蛛侠》新作,演示中蜘蛛侠在地图上自由飞荡过一座座高楼,尽管地图非常广阔,但PS5基本不需要读图。

PS5中运行《蜘蛛侠》Demo,高速在大地图移动无需读图

PS4Pro运行同样的Demo,可以看到频频出现读图等待

索尼自己的演示信不过?再来看看第三方的演示。Epic之前放出了新一代引擎虚幻5的演示,这段Demo全程运行在PS5实机上,从中可以看到场景非常辽阔,而且人物可以在场景中高速移动,一气呵成,毫无读图痕迹,非常爽快。

虚幻5引擎的官方演示,运行于PS5实机上,可以直接跳转到7:50,体会一下无缝大地图的高速移动

RTX3000“安培”GPU:开创性的RTX IO

改善游戏数据读取流程这一思路,不仅索尼有想到,老黄也意识到了。在最近发布的RTX3000系列“安培”GPU中,带来了DirectX Storage的特性,它有望打破PC游戏的I/O瓶颈。

DirectX Storage其实是微软推出新DirectX API,而NV在安培GPU中,对其进行了支持,推出了RTX IO技术。简单来说,RTX IO可以让PC游戏的数据传输绕过CPU,直接传输到显存供GPU使用,这其实和PS5的设计是有相似之处的。

DirectX Storage针对SSD进行优化,无论是PC还是新一代的Xbox,都会使用这个API

毫无疑问,RTX IO可以大大增加PC游戏数据传输的效率,根据NV给出的数据,通过RTX IO,GPU解压游戏数据的性能甚至超过了PCIe Gen4下SSD的传输速度。这一方面可以大大减少读图时间,另一方面可以突破CPU瓶颈,让PC游戏的帧数更加“电竞级”。

前面提到过,很多PC电竞游戏,帧数上不去,其实不是GPU的问题。通过软件观察到,GPU的占用率其实根本不高,但CPU却已经是满频率运行,帧数的瓶颈在于CPU。CPU调度的数据“喂不饱”GPU?现在RTX IO可以让游戏数据I/O绕开CPU,从根本上解决这问题。如此一来,游戏帧数就有了更高的上限,在高刷新率屏幕逐渐普及的今天,无论对于职业电竞选手还是普通玩家,这项技术都意义重大。

当前PC游戏帧数的一个瓶颈,在于I/O系统,游戏数据传输都需要经过CPU,CPU已经不堪重负

RTX IO示意图,数据可以直接从SSD传输到显存

另外,RTX IO也可以带来解除场景规模限制的好处,这和上面PS5文段中所叙述的是类似的,这里就不多作赘述了。

总结

很多老玩家都感概,近年来游戏画面,已经没有什么质的提升了。现在的大部分游戏的画面对比的《孤岛危机》,有质变的提升么?《孤岛危机》诞生于2007年,用《孤岛危机》对比它五年前也就是2002年的游戏,再用现在的游戏对比距离现在十多年前《孤岛危机》,不能难发现最近十几年游戏画质提升之小,是远慢于之前的。

大部分游戏画面对比2007年的《孤岛危机》,并没有质的提升,光线追踪的普及才能改变这一切

之所以如此,是因为游戏的图形技术,久久未有根本性的革新。PS4、Xbox One这代游戏主机,将光栅化等图形技术发挥到了一个新高度,然而游戏的渲染流程没有质变。PS3/Xbox360时代开始出现的法线贴图、环境光遮蔽、动态光照、体积光等,当今依然是提升游戏画质的法宝。同样,游戏的渲染流程,也依然停留在从硬盘读取数据包、传输到内存显存解压,再交由GPU渲染的传统。从这个角度来看,其实PS4、Xbox One是设计相当保守、缺乏开创性的一代游戏主机。

在这个世代,转机终于来了。支持光线追踪的GPU实装在了PS5、Xbox SX等下一代游戏主机以及PC显卡中,SSD也成为了游戏硬件的标配。游戏全方位发生质变,终于有了前提条件。

光线追踪大大提升了游戏画面的上限,而游戏数据I/O的变革,则可以让游戏流程天翻地覆。相信随着新一代游戏硬件的普及,越来越多的玩家会感叹“原来游戏还可以这么做”,共同期待吧。

0

精彩评论

暂无评论...
验证码 换一张
取 消