以下内容部分源自油管博主 Battle(non)sense 的视频内容。 众所周知,对于第一人称射击游戏来说,时延的高低往往决定了最终的游戏体验,肉眼看到敌人,反馈到脑部,然后控制手指肌肉移动、点击发射,CPU 接收到指令后,计算出绘制调用,发送给 GPU 处理,GPU 完成渲染后,发送至屏幕处理器,屏幕处理器完成显示前的最终计算(例如内置 LUT 的显示器需要做色彩校正)后,将信号发送至驱动电路,最终画面得以呈现在屏幕上。 现在的 PC 为了给第一人称游戏提供最快的时延,往往是多方面入手,例如将显示器的计算电路尽量节省(造成的问题自然是色彩不准确,这通常就是显示器所谓的游戏模式,目前无解)、提升鼠标速度和 USB 缓存刷新频率,而对于 GPU 来说,最重要的就是尽可能及时完成 CPU 递交的渲染调用。 英伟达的 Reflex 在这方面采取的办法是优化渲染流水线,改进连 CPU 和 GPU 之间的通信协调、让 CPU 在得知 GPU 完成之前的渲染调用后才发送当前最新的渲染调用,这样的好处是即使渲染瓶颈卡在 GPU 这边,让人机间的时延尽可能保持在最低的水平。 Radeon Boost 是另一种希望达成类似效果的技术,但是它是基于微软 VSR(可变倍率渲染)的技术,在画面高速运动的时候能降低渲染分辨率,试图在尽量减少画质损失的同时实现更快的时延。 此外,NVIDIA 和 AMD 还提供了各自基于驱动层面的低时延技术:Nvidia Low Latency Mode 和 AMD 的 Radeon Anti-Lag。 由于是基于驱动程序层面的,Nvidia Low Latency Mode 和 AMD 的 Radeon Anti-Lag无需游戏特别支持也能采用。 还有一种降低时延的技术就是锁帧率,就是将游戏的最高帧率锁定某个帧率上,其目的是让渲染流水线的瓶颈抹平,或者说让 GPU 不再成为瓶颈,原理其实和 NVIDA Reflex 一样,但是缺点是最高帧率被限制了。 那么,哪一种技术才是最好的降低时延技术呢?我今天逛油管的时候,发现 Battle(non)sense 进行了相应的测试,我将其搬过来,相信玩家们应该会感兴趣: 首先是锁帧率 vs 关闭 NVIDIA Reflex,锁帧率(右侧的四个结果)比驱动层面的 Nvidia Low Latency Mode(图中左起第三个)效果更好。 然后是和打开 NVIDIA Reflex 的对比: 可以看到,开启 NVIDIA Reflex 技术后,时延进一步降低,平均系统时延降低至 50.55 毫秒,而上一图的锁帧率只能做到系统平均时延 51.59 毫秒。 接下来就是和 AMD Radeon Boost 的对比。 正如大家所看到的那样,NVIDIA Reflex 相对于 Radeon Boost 来说有无可置疑的优势,系统平均时延方面,NVIDIA Reflex 是大约 51 ms,而 Radeon Boost 在静止画面是大约 88 ms, 鼠标移动的时候虽然可以降低到 68 ms,但是此时的问题是画质出现下降。 大家如果感兴趣的话,可以自己亲自上去看看,也许比我这里描述更加直观,当然如果大家不方便溜出去,我这里阐述的基本上也足够了。