Screen Tearing

Screen Tearing

notion image
最后一步就是渲染到屏幕了。
notion image
In most games your GPU frame rate will be highly volatile When new GPU frame updates in the middle of last screen frame, screen tearing occurrs
notion image
游戏中 V-Sync 关掉的话,会发现有画面错开的情况,这种学名叫 Screen Tearing。
本质是引擎在疯狂渲染,但引擎每一帧时间是不一定的,有时候场景复杂,有时候场景简单。但是显示器刷新频率是一定的,如果不巧刚好错过显示器的刷新频率,就会出现等待的情况。
 

V-Sync Technology

Synchronizing buffer swaps with the Vertical refresh is called V-sync V-Sync can be used to prevent tearing but framerates are reduced, the mouse is lagging & stuttering ruins gameplay
notion image
每一次都要等 Frame Buffer 写完之后,等到下一次刷新的时候,整个 Frame 刷新过去,而不是写到一半再刷新。
这样还可能出现画面一会快一会慢,错过一点点。这对非常专业的游戏玩家可能会注意到,但是现在显示器刷新频率高所以还好。

Variable Refresh Rate

notion image
Nvidia、AMD 都有对应的名字,这个方案简单的说就是把显示器的刷新频率变成动态可调的。
游戏按照什么帧率渲染,显示器就对接在一起,这样就不会 Screen Tearing。