目前都有哪些系统降延迟技术NVIDIAA

中科白癜风公益活动 http://m.39.net/baidianfeng/a_11081309.html

相信一说到电竞游戏,大家肯定会想起「高帧率」、「高刷新率」、「P」这几个关键词。这也是难怪的,因为电竞游戏最理想的状态下的确是显示器愈高刷新率、计算机能够给到愈高帧数愈好,而目前最高刷新率的显示器也是P分辨率的。

其实,除了帧数之外,还有一个关键因素对于电竞玩家们来说是可以左右大局的,那就是延迟。可能很多人都觉得:「只要我帧数够高,刷新率跟得上,延迟就低了呀」这个说法是没问题的,因为如果刷新率愈高而游戏内的帧数也跟得上的话,那么帧与帧之间的等待时间也会愈低,从而降低延迟。

系统延迟

不过帧延迟其实只占整体延迟的一部分,从玩家点击鼠标到显示器上最终显示出相应的变化这个过程当中,是包含着好几个不同部份的延迟。那么,这其中到底有些什么延迟呢?下面的这个图就简单显示了都有哪些。

简单来说,延迟是分为3个部分的:外设、计算机内部以及显示器延迟。外设的延迟很好理解,以鼠标为例,一部份是鼠标接收到玩家点击讯号的延迟,另一部分就是鼠标发送讯号之后,连接着鼠目标USB接口处理这些讯号的时间。计算机内部的延迟主要是分为两部分,游戏内容的延迟以及渲染的时间,前者主要是由CPU负责的,包括了采样、提交渲染、驱动等等,而后者则是由显卡负责的,最大头的两部分就是渲染序列以及实际的渲染。在显卡渲染完画面到显示器实际显示那帧画面前,还需要经过扫瞄输出、显示器处理画面才可以最终输出到玩家眼前。

在这里面,可能大家比较熟悉的是显示器部分的延迟,毕竟响应时间以及输入延迟这两个东西也是不少玩家经常挂在嘴边的,也是不少电竞显示器经常强调的并且尝试改进的。至于计算机主机延迟这个比较大头的部分则是比较少被提及。那么,既然显示器的响应时间可以被改进,主机延迟有方法减少吗?NVIDIA以及AMD两家就给出了答案,并且都是以减少渲染延迟为主。

在这里笔者要先解决一下渲染延迟。当显示器在显示一帧画面时,显卡会同时渲染下一帧,而CPU提交给显卡等待渲染的渲染序列里也至少有一帧,等到一个60Hz刷新率的显示器显示出这帧原本在渲染序列中的画面时,已经比它原本从CPU提交时慢了两帧也就是33.3毫秒,因此造成更高的渲染延迟。

NVIDIAUltraLowLatnecy

在NVIDIA显卡这边,玩家可以在NVIDIA控制面板内开启NVIDIAUltraLowLatency模式,或者在特定的游戏里打开NVIDIAReflexLowLatency模式,而AMD显卡的玩家则可以在驱动中心内打开Anti-Lag选项。

我们先来说NVIDIAUltraLowLatency模式(下称NULL)。NULL是NVIDIA去年8月份随着.02GameReady驱动而推出的一个新功能。透过把渲染序列中的待渲染帧数完全清空,让渲染序列在显卡准备渲染下一帧画面时才把所需的帧画面提交给显卡,NULL可以有效减少渲染延迟,从而缩减整体的系统延迟。

在NULL的选项中,「On」代表把渲染序列设为1帧,而「Ultra」则是把渲染序列完全减至显卡需要渲染时才会提交下一帧画面,而这也是NULL要达到的目的。但是有一点要注意的是,NULL只适用于基于DX9以及DX11这两个API的游戏,DX12、Vulkan由于是游戏决定渲染序列,所以NULL起不到作用。

AMDAnti-Lag

AMD的Anti-Lag的作用也是差不多的。这个在去年随着RX系显卡一起登场的功能在开启之后系统会自动调整CPU的工作进度,使CPU可以覆盖部分显卡的工作,这样CPU的工作进度就不会领先显卡过多,从而减少渲染延迟。而与NVIDIA的NULL一样,Anti-Lag只支持DX9以及DX11的游戏。

不过NULL以及Anti-Lag对于降低系统延迟还是有不足的地方,最明显的一点就是两者都是在驱动层面进行的,并不能够对游戏本身进行优化,也正因如此,所以NULL以及Anti-Lag都不能够支持DX12以及VulkanAPI游戏的原因。

虽然说目前大部分游戏都是以DX11来运行的,不过近年来已经有愈来愈多的游戏开始使用或者增加DX12以及Vulkan的选项,因为两者对比起DX11以及更久的DX9可让游戏的性能表现更佳,也会加入众多新特性,例如EPIC大热的《堡垒之夜》就已经用上了DX12来实现光追效果,使用Vulkan的也有不少,例如《Doom:Eternal》以及《荒野大镖客2》这样的大作。因此一个可以兼容DX12以及VulkanAPI的降延迟技术会是一个比较全面的解决方案。

NVIDIAReflexLowLatency

而来自NVIDIA的ReflexLowLatency模式(下称NVIDIAReflex)则是第一个支持DX12以及Vulkan的降低延迟功能。其实NVIDIAReflex和NULL是有点相似的,因为两者都同样可以把渲染延迟降低,但前者对于延迟的缩减可以有更精准的控制并且可以做得更多。透过把NVIDIAReflexSDK植入到游戏当中,玩家只要在游戏内打NVIDIAReflex选项,游戏就可以动态平衡CPU和GPU的负载配比,减少CPU从渲染序列以及其他管线受到的反压,而这点是NULL所做不到的。

当一个场景很吃CPU的时候,显卡基本上是等着CPU完成一帧画面来渲染,这时候渲染序列是完全空的,NVIDIAReflex就会让显卡维持在较高的频率并且让帧画面稍微快点发送到显示器上来减少延迟。

反之如果是很吃显卡的话,那么NVIDIAReflex也会让CPU处理的进度慢下来,使得渲染序列不会有待处理的帧画面堆积起来,只会让显卡在准备渲染下一帧时才把画面提交上去。而减慢CPU的工作进度也可以让玩家的操作输入在最后一刻才被采样,进一步减低延迟。

除了理论上可以更有效地外削减延迟外,NVIDIAReflex对比起NULL以及Anti-Lag还有一个更加优胜的地方,那就是透过配搭相应的分析工具以及软件,可以更加直观地让玩家得知目前的系统延迟是多少,前阵子推出的Hz电竞显示器以及其内置的LowLatencyAnalyzer就是这些工具的其中一种。不过这个功能的目标对像更多的是那些专业的电竞选手,可以协助他们更科学地训练。

延迟成绩

那么,NVIDIAReflex对比起自家的NULL以及AMD的Anti-Lag,在降低延迟方面可以有什么实际表现呢?笔者就以3款游戏,配合LDAT来测试了一下这几个技术在不同显卡下可以有甚么效果,分别是拥有NVIDIAReflex的《堡垒之夜》及《使命召唤:黑色行动冷战》,以及暂时还没有NVIDIAReflex的《CS:GO》。

所有游戏的画质特效都会调至最高。至于显卡方面,笔者选择的是NVIDIA的RTX、RTX,以及AMD的RXXT以及RX。至于测试用的显示器则是一部4KHz的游戏显示器。

先来看看《CS:GO》的表现,由于这款游戏目前仍然没有NVIDIAReflex,因此这里可以对比的只有开关NULL及Anti-Lag的成绩。

可以看到,NVIDIAReflex以及Anti-Lag都是有作用的,不过作用其实不太明显,延迟削减幅度是在2%至6%左右,在大部分情况下还是比起在2K分辨下的延迟要高。

在《堡垒之夜》中,由于NULL以及Anti-Lag不支持DX12,两者的成绩都是以游戏在DX11的情况下测试得出的。

这个游戏就可以看到各种降延迟技术的最大潜能了。在只开NULL或者Anti-Lag之下,延迟都可以比原本的降低了15%左右,效果已经很明显了。但要说降延迟效果最好的,还是那个做进了游戏内的NVIDIAReflex,开启之后延迟可以降到原本的40%左右,而这时的系统延迟甚至差不多降到了使用2K分辨率的程度,整体系统的反应可以说是大大改善不少。

不过NVIDIAReflex的实际效果其实也是要看游戏对于这个功能的优化。在《使命召唤:黑色行动冷战》中,可以看到NVIDIAReflex大概是把延迟降低了4%至5%。

总结

如果想要降低系统延迟的话,不论是NVIDIA的NULL还是AMD的Anti-Lag都是可以做到的,但是它们两者都只是属于表层的功能,如果要想获得更好的效果,那么NVIDIAReflex可能会是比较好的选择。

一来NULL以及Anti-Lag在运行DX12以及VulkanAPI游戏时起不了效果,这在未来游戏会以DX12以及Vulkan为主的大趋势下显然并不是一个最佳的方案。二来是NVIDIAReflex由于是植入到游戏中,与游戏的配合可以做得更好,因此可以做到更为准确以及动态的延迟控制,弹性会稍为好点。

总的来说,要实现更好的延迟削减的话,那么诸如NVIDIAReflex这样,直接植入到游戏里的会比起仅仅在驱动层面的要来得好,并且也会是最为全面的一种方案。



转载请注明:http://www.abuoumao.com/hyfz/3873.html

网站简介| 发布优势| 服务条款| 隐私保护| 广告合作| 网站地图| 版权申明

当前时间: 冀ICP备19029570号-7