相信我们的游戏玩家朋友对于下面这句话肯定有所耳闻:玩FPS游戏要关垂直同步。我们在逛论坛或者看文章评论时,如果有人发帖说自己电脑玩游戏很卡,那么总会有人建议他关闭垂直同步。垂直同步究竟是个什么东西?为什么都说要关闭它呢?
垂直同步是个啥?
首先简单说说垂直同步是个什么东西?我们知道,一块显示器要显示出画面,先要靠显卡渲染好画面再进行传输,说传输大家都懂,但显示器和显卡是通过什么途径传输的呢?这里有一个“缓冲区”的概念,显卡在每一次完成画面的渲染后先将这个信号传到缓冲区里,显示器再通过读取扫描缓冲区中的信号将画面逐行显示出来。
打个比喻:就是显卡是绘画师,显示器是个贴画的师傅,而缓冲区就是辆装着画还往返于他们两者之间的小推车。师傅拿着图画从左到右地往一面墙上贴,贴完上面一行再贴下一行,直至贴完整面墙,也就是显示器整个画面都刷新了一次。
而且实际上传统的缓冲区数量有两个,分别是前缓冲区和后缓冲区,在显卡渲染完一帧画面后两个缓冲区会调换位置,就好比显卡把画画完了就会放到小推车上。但小推车这位置一调换,那么问题就来了,之所以会产生画面撕裂,就是因为显示器还没扫描完一帧画面,缓冲区的位置就调换了。打个比喻就是,显示器师傅要从小推车上拿出画往墙上贴,但这画刚拿起来半张,画的下半截就被撕掉,还拼接上下一张画的半截,那结果就是贴上墙的画不是原来的同一张画,而是原本两张不同的画贴在一起了。
可见,显卡画得越快或者画画速度越不稳定,小推车往返的节奏就越不规律,师傅就越反应不过来了,将越容易贴出上下拼接的画了,也就是高刷新率之下反而更容易出现画面垂直方向的撕裂。
OK,既然双重缓冲还是有撕裂,那我们熟悉的三重缓冲就应运而生了。三重缓冲中的第三重缓冲,就相当于给前面两重缓冲请了个审核员,他的工作就是强制推迟缓冲区互换,也就是让小推车往返得慢一些,这就能确保师傅有时间将一张完整的画从车里拿出来再贴到墙上去了。所以三重缓冲的垂直同步的优缺点就都很明显了,优点能确保画面完整不撕裂,但缺点就是画面变慢了,也就是延迟变大了。
一台60Hz的显示器一秒钟刷新60次画面,每次画面的间隔时间就是16.6ms,如果画面被推迟到了下一帧出现,帧率在那一瞬间就会突然降低,而且延迟也多了十几毫秒。所以为什么总有人喜欢说玩电竞都关垂直同步呢?因为这突然降低的帧率和多延迟的十几毫秒对于电竞选手来说是致命的啊,但对于普通人来说影响就小得多了。