屏幕撕裂,怎么影响游戏体验?
为了更好地了解垂直同步对游戏体验的影响,首先有必要了解它的实际工作原理。VSync 一词是垂直同步的缩写,也是在游戏中大家见到的设置项目的英文。
这是一项为避免称为“屏幕撕裂”的烦人的视觉缺陷而开发的技术,而“屏幕撕裂”是游戏中最讨厌的事情之一。
当由于显示器的刷新率和显卡的帧速率之间的不同步而导致视频游戏图像被拉伸或撕成两半时,就会发生这种情况,即(每当 显卡每秒向显示器发送的帧数超过其处理能力时)。结果是两帧将投影在同一屏幕上更新,这是一种令人不快的撕裂,严重降低了体验。
那么出现这种现象的原因是什么呢?
在没有垂直同步时,只要是优化正确的游戏,现在的显卡都会火力全开的尽可能快地渲染帧(除非出现任何瓶颈)。在主流3A游戏中,一个高端显卡可以轻松地以 1080p 的速度每秒吐出数百帧渲染的画面。
每当显卡绘制帧时,它都会在所谓的“帧缓冲区”中渲染它(下图)。帧缓冲区,是显存中划分的一部分,用于存储要在显示器上显示的最终图像的信息。关闭垂直同步后,显卡会尽可能快地把帧渲染到帧缓冲区,而显示器会尽可能快地在屏幕上绘制帧缓冲区内的画面。
假设显示器的刷新率为 60 Hz,并且你正在以 100 FPS 的渲染速度玩游戏。这意味着显示器每秒可以更新自身(并渲染下一帧)60 次,但显卡每秒发送 100 帧。这比显示器可以显示的速度快 66%。
树*上半截和下半截明显分开了,这就是画面撕裂
由于显示器无法一秒内显示所有 100 帧,因此它最终会同时显示每 x 帧的 33% 和随后 x 1 帧的 66%。结果,玩家会看到一个画面帧 x 的三分之一,而其余帧是帧 x 1的内容,对于高速运动的游戏画面来说,显然就会出现参照物在画面上的错位,从而造成了一种“撕裂感”。只要帧速率停留在 100 FPS,这种情况就会继续。
而从根本上,这是显卡传统的“双缓冲”机制造成的:双缓冲是一种通过利用两个缓冲区而不是一个缓冲区(即后台缓冲区back buffer和前端缓冲区front buffer)来减少屏幕撕裂的技术。两个缓冲区一个位于显示器上,后台缓冲区位于显卡上。