Vsyncは、ほとんどのPCビデオゲーム(PC video games)や、場合によっては他のアプリケーションでも見られるオプションです。しかし、Vsyncとは何ですか?それは何をするためのものか?オンまたはオフに切り替える必要がありますか?
これに対する答えは複雑ですが、Vsyncの目的を理解すると、いつオンにするかオフにするかがわかります。
Vsyncとは何ですか?
最初に知っておく必要があるのは、モニターが毎秒特定の数の個別の画像を表示できることです。これはリフレッシュレート(refresh rate)と呼ばれ、モニターが画面上の画像を新しいもので完全にリフレッシュできる回数です。
まだご存じない方もいらっしゃると思いますが、静止画の連続をすばやく表示することで、画面に動画のような錯覚を起こさせます。各画像は、異なる時間のスライスで被写体を示しています。映画館で見るほとんどの映画は、毎秒24フレームで撮影されています。したがって、1秒以内に24スライスの時間が表示されます。
また、毎秒30フレームと60フレームで記録されるコンテンツもたくさんあります。たとえば、アクションカメラ(Action camera)の映像は、通常、毎秒60フレームで記録されます。
1秒で表示できるユニークなフレームが多いほど、よりスムーズでシャープな動きが現れます。あなたの脳はフレームを一緒にマージし、それを動画として認識します。
コンピュータシステムでは、GPU(グラフィックスプロセッシングユニット)がディスプレイに送信するフレームを準備します。ただし、前のフレームを描画しているためにディスプレイが新しいフレームの準備ができていない場合は、異なるフレームの一部が同時に表示される状況が発生する可能性があります。Vsyncは、 (Vsync)GPUからのフレームをモニターのリフレッシュレートに同期することにより、この状況を防ぐことを目的としています。
典型的なリフレッシュレート
そこにある最も一般的なディスプレイのリフレッシュレートは60Hzです。つまり、1秒あたり60回の更新です。ほとんどのコンピューターモニターとテレビは、少なくともこれだけの機能を備えています。
また、次のようなさまざまなリフレッシュレート(refresh rates)でコンピューターモニターを購入することもできます。75Hz、120 Hz、144 Hz、240 Hz、300Hz。他の奇妙な数字もあるかもしれませんが、これらは典型的なものであり、特殊なゲームシステムの外ではリフレッシュレートが高くなることはまれです。
テレビはほぼすべて60Hzのユニットであり、120 Hzのセットが、そのリフレッシュレートをサポートする最新世代のゲーム機とともに現在主流の市場に参入しています。
フレーム(Frame) レート(Rates)とリフレッシュレート(Rate)のマッチング
画面のリフレッシュレートは、コンテンツのフレームレートと正確に一致している必要はありません。たとえば、60Hzのディスプレイで毎秒30フレームのビデオを再生している場合、60Hzで2つの同じフレーム、合計30の一意のフレームを表示する必要があります。
24は60にきちんと分割されないため、24fpsのフッテージには課題があります。これを解決するにはさまざまな方法があります。一部の画面では、「プルダウン」と呼ばれる形式のビデオ変換を使用します。これは、意図した速度とはわずかに異なる速度でコンテンツを実行することを犠牲にして、不一致を補正します。
最新のディスプレイの多くは、異なるリフレッシュレートに切り替えることもできます。そのため、24 fpsの映像と完全に同期するために、テレビが48Hzまたは24Hzに切り替わる場合があります。24は120に均等に分割されるため、120HzTVはこれを行う必要はありません。(TVs)
Vsyncを使用する場合
ビデオゲームでは、フレームはフィルムやビデオのように順序付けられた方法で作成されません。リミッターなしで放置すると、CPU、GPU、およびゲームエンジンは、可能な限り多くのフレームを生成しようとします。ただし、ゲームエンジンがこれらのコンポーネントにかけるワークロードは変動する可能性があるため、フレームレートが変動する可能性があります。
上記のように、GPUがモニターのリフレッシュレートと同期していないフレームを送信している場合、画像のさまざまな部分が整列していない、はっきりとした画面のティアリングの外観が得られます。(screen tearing)
Vsyncをアクティブにすると、GPUは、モニターが新しいフレームを描画する準備ができたときに表示されるフレームのみを送信し、フレームがレンダリングされる速度を効果的に制限します。しかし、これは実際には、フレームがどのように「バッファリング」されるかに起因するさらに別の問題を引き起こす可能性があります。次に、2つの一般的なタイプのフレームバッファリングについて説明します。
ダブルバッファリングされたVsyncとトリプルバッファリングされたVsync(Versus Triple- Buffered Vsync)
「バッファ」は、他のデバイスまたはプロセスの準備ができたときに読み取られる待機領域として指定されたメモリの領域です。GPUがフレームをレンダリングすると、バッファに書き込まれます。次に、画面はそのバッファからフレームを読み取り、それを描画します。
いわゆる「ダブルバッファリング」が今日の標準です。2つのバッファがあり、交互に「フロント」バッファとバックバッファとして機能します。ディスプレイはフロントバッファからフレームを描画し、GPUはバックバッファに書き込みます。次に、2つのバッファーが役割を切り替え、プロセスが繰り返されます。
Vsyncがない場合、2つのバッファはいつでも交換できます。そのため、画面がフレーム内の各バッファの一部を描画し、その結果、ティアが発生する可能性があります。Vsyncをオンにすると、そのティアリングはなくなります。ただし、GPUが1/60秒でバックバッファーへの書き込みを完了できない場合、そのフレームはスキップされます。これにより、1秒あたり30フレームが有効になります。
コンピューターが毎秒60フレームを一貫してレンダリングできない限り、30 fpsがロックされているか、フレームレートが30〜60の間で激しく変動する可能性があります。
トリプルバッファリング(Triple-buffering)は、2番目のバックバッファを追加します。これは、フロントバッファにスワップする準備ができているフレームが常にあることを意味し、60Hzの画面で毎秒45または59フレームなどの奇数を使用できるようにします。オプションが与えられている場合、トリプルバッファリングは常に良いオプションです。
強化されたVsyncタイプ
グラフィックカードメーカーは、画面のティアリングや画面のティアリングによって引き起こされるその他のアーティファクトに取り組み続けています。各主要メーカーは、欠点なしですべての利点を提供しようとするVsyncの高度なバージョンを考え出しました。
NvidiaにはAdaptiveSyncとFastSyncがあり、それぞれに(FastSync)Vsyncへの独自のインテリジェントなアプローチがあります。前者は、ゲームのフレームレートがリフレッシュレート以上の場合にのみVsyncをオンにします。それを下回ると、Vsyncが無効になり、バッファーの待ち時間がなくなります。後者のソリューションは、トリプルバッファリングを可能にし、ティアリングなしで最高のフレームレートを提供するため、より優れています。
AMDには(AMD)AdaptiveSync(Sync)のようなEnhancedSyncがあります(AdaptiveSync)。
Vsyncと可変リフレッシュレート
可変リフレッシュレートとして知られているVsyncの強力な代替手段があります。NvidiaのテクノロジーはG-Syncとして知られており、AMDはFreeSyncを開発しましたが、無料で誰でも使用できるようにしています。
どちらのテクノロジーも、フレームがほぼ完璧な精度で同期されるように、モニターとGPUが相互に通信できるようにします。つまり、Vsyncのすべての欠点がここで解決されます。
主な注意点は、モニター自体がテクノロジーをサポートする必要があるということです。両方の標準をサポートするモニターを見つけることはめったにありませんが、Nvidiaは最近、特定のモニターにFreeSyncサポートを追加しました。Nvidiaによってホワイトリストに登録されていないモニターでFreeSyncをアクティブ化することもできますが、場合によっては結果が良くないことがあります。
それでは、 Vsync(Vsync)の使用について知っておくべきことを要約しましょう。
- ゲームがモニターのリフレッシュレート以上のフレームレートを維持できない場合は、トリプルバッファリングを有効にするか、リフレッシュレートを下げてください。
- GPUが(GPU)Vsyncのより高度なバージョンを提供している場合は、試してみる価値があります。
- G-SyncとFreeSyncは、それらにアクセスできる場合、Vsyncの望ましい代替手段です。
- 競争力のあるゲームで入力遅延を最小限に抑えたい場合は、Vsyncをオフにして、可変リフレッシュが利用できない場合は画面をティアリングして生きてください。
これらがVsyncの基本です。さあ、そこに出て、涙のないゲーム体験を楽しんでください。
What Is Vsync and Should You Use It?
Vsync is an option that you’ll see in most PC video games and sometimes even in other applications. But what is Vsync? What does it do? Should you switch it on or off?
The answer to this is complicated, but once you understand the purpose of Vsync you’ll know when to switch it on or leave it off.
What Is Vsync?
The first thing you need to know is that your monitor can show a certain number of discrete images every second. This is known as the refresh rate, which is how many times the monitor can completely refresh the image on-screen with something new.
If you don’t already know, the illusion of moving pictures on a screen is created by rapidly displaying a sequence of still images. Each image shows the subject in a different slice of time. Most movies you watch in the cinema are filmed at 24 frames per second. So you see 24 slices of time shown within each second.
There’s also plenty of content recorded at 30 and 60 frames per second. Action camera footage, for example, is typically recorded at 60 frames per second.
The more unique frames that can be shown in one second, the smoother and sharper motion appears. Your brain merges the frames together and perceives it as a moving picture.
In a computer system, the GPU (graphics processing unit) prepares frames to be sent to the display. However, if the display isn’t ready for a new frame because it’s still working on drawing the previous one, it can cause a situation where parts of different frames are displayed at the same time. Vsync is meant to prevent this situation, by syncing the frames from the GPU to the refresh rate of the monitor.
Typical Refresh Rates
The most common display refresh rate out there is 60Hz. That is, 60 refreshes per second. Most computer monitors and televisions offer at least this much.
You can also buy computer monitors in a variety of refresh rates, which include; 75Hz, 120 Hz, 144 Hz, 240 Hz and 300 Hz. There may be other oddball numbers as well, but these are typical, with higher refresh rates being rarer outside specialized gaming systems.
Televisions are almost all 60 Hz units, with 120 Hz sets now entering the mainstream market along with the latest generation of gaming consoles that support that refresh rate.
Matching Frame Rates to Refresh Rate
The refresh rate of the screen doesn’t have to match the frame rate of the content exactly. For example, if you’re playing 30 frames per second video on a 60Hz display, then you just need to display two identical frames at 60Hz, totaling 30 unique frames.
24fps footage poses a challenge, since 24 does not divide neatly into 60. There are different ways to solve this. Some screens use a form of video conversion known as a “pulldown” that compensates for the mismatch at the cost of running the content at a slightly different speed than intended.
Many modern displays can also switch to different refresh rates. So a TV might switch to 48 Hz or even 24 Hz to get perfect synchronization with 24fps footage. 120Hz TVs don’t have to do this, since 24 divides evenly into 120.
When to Use Vsync
With video games, frames aren’t produced in such an ordered fashion as with film or video. Left without any limiters, the CPU, GPU, and game engine try to produce as many frames as possible. However, since the workload that the game engine puts on these components can vary, the frame rate may fluctuate.
As mentioned above, when the GPU is sending frames that are not in sync with the monitor’s refresh rate, you’ll get that tell-tale screen tearing look where different parts of the image don’t line up.
When you activate Vsync, your GPU only sends out a frame to be displayed when the monitor is ready to draw a new frame, also effectively limiting the rate at which frames are rendered. But this can actually cause yet another issue that results from how frames are “buffered”. Next, we’ll discuss two common types of frame buffering.
Double- Versus Triple- Buffered Vsync
A “buffer” is a region of memory that’s designated as a waiting area to be read when some other device or process is ready for it. When your GPU renders a frame, it’s written to a buffer. Then the screen reads the frame from that buffer to draw it.
So-called “double buffering” is the norm today. There are two buffers, taking turns to act as the “front” and back” buffer. The display draws the frame from the front buffer, while the GPU writes to the back buffer. Then the two buffers switch roles and the process repeats.
Without Vsync, the two buffers can be swapped at any time. So it’s possible that the screen will draw part of each buffer in the frame, which results in tearing. When you switch Vsync on, that tearing does go away. However, if the GPU doesn’t manage to finish writing to the back buffer in 1/60th of a second, that frame is skipped. This results in an effective 30 frames per second.
Unless your computer can consistently render 60 frames per second, you’re liable to experience either a locked 30fps or wildly swinging framerates snapping between 30 and 60.
Triple-buffering adds a second back buffer, which means that there’s always a frame ready to be swapped to the front buffer, making it possible to have odd numbers such as 45 or 59 frames per second on a 60 Hz screen. If you’re given the option, triple-buffering is always a good option.
Enhanced Vsync Types
Graphics card makers continue to grapple with screen tearing and other artifacts caused by screen tearing. Each major manufacturer has come up with advanced versions of Vsync that try to offer all the benefits without the drawbacks.
Nvidia has AdaptiveSync and FastSync, each with their own intelligent approach to Vsync. The former only switches on Vsync if a game’s frame rate is equal or higher than the refresh rate. Should it drop below that, Vsync is disabled, eliminating buffer latency. The latter solution is better as it enables triple buffering and provides the highest frame rate without tearing.
AMD has Enhanced Sync, which is like AdaptiveSync.
Vsync Versus Variable Refresh Rate
There’s a powerful alternative to Vsync known as variable refresh rate. Nvidia’s technology is known as G-Sync and AMD has developed FreeSync, but have made it free and open for anyone to use.
Both technologies let the monitor and GPU talk to each other in such a way that frames are synced with near flawless precision. In other words, all drawbacks of Vsync are addressed here.
The main caveat is that the monitor itself has to support the technology. It’s rare to find monitors that support both standards, but Nvidia has recently relented and added FreeSync support for certain monitors. You can also attempt activating FreeSync on monitors not whitelisted by Nvidia, but the results may not be great in some cases.
So let’s summarize what you need to know about using Vsync:
- If your game cannot sustain a frame rate equal to or above your monitor’s refresh rate, enable triple buffering or lower the refresh rate.
- If your GPU offers a more advanced version of Vsync, it’s worth trying out.
- G-Sync and FreeSync are desirable alternatives to Vsync if you have access to them.
- If you want the minimum of input lag for competitive gaming, switch off Vsync and live with the screen tearing, if variable refresh is unavailable.
Those are the basics of what Vsync is. Now get out there and have some fun with a tear-free gaming experience.