Vsyncは、ほとんどのPCビデオゲーム に表示されるオプションであり、他のアプリケーションでも表示される場合があります。しかし、Vsyncとは何ですか?それは何をするためのものか?オンまたはオフに切り替える必要がありますか?
これに対する答えは複雑ですが、Vsyncの目的を理解すると、いつオンにするかオフにするかがわかります。
Vsyncとは何ですか?
最初に知っておく必要があることモニターは毎秒特定の数の個別の画像を表示できるということです。これはリフレッシュレートと呼ばれ、モニターが画面上の画像を新しいもので完全にリフレッシュできる回数です。
まだわからない場合は、画面上の動画の錯覚は、一連の静止画像をすばやく表示することによって作成されます。各画像は、異なる時間のスライスで被写体を示しています。映画館で見るほとんどの映画は、毎秒24フレームで撮影されています。したがって、1秒以内に24スライスの時間が表示されます。
30フレーム/秒と60フレーム/秒で記録されたコンテンツもたくさんあります。たとえば、アクションカメラ の映像は通常、毎秒60フレームで記録されます。
1秒で表示できるフレームが多いほど、滑らかでシャープな動きが表示されます。あなたの脳はフレームを結合し、それを動画として認識します。
In_content_1 all:[300x250] / dfp:[640x360]->コンピュータシステムでは、GPU (グラフィックス処理ユニット)は、ディスプレイに送信されるフレームを準備します。ただし、前のフレームの描画に取り組んでいるためにディスプレイが新しいフレームの準備ができていない場合は、異なるフレームの一部が同時に表示される状況が発生する可能性があります。 Vsyncは、GPUからのフレームをモニターのリフレッシュレートに同期することにより、この状況を防ぐことを目的としています。
一般的なリフレッシュレート
最も一般的なディスプレイのリフレッシュレートは60Hzです。 。つまり、1秒あたり60回の更新です。ほとんどのコンピューターモニターとテレビは、少なくともこれだけの機能を備えています。
コンピュータモニターはさまざまなリフレッシュレート で購入することもできます。 75Hz、120 Hz、144 Hz、240 Hz、300Hz。他の奇妙な数字もあるかもしれませんが、これらは典型的なものであり、特殊なゲームシステムの外ではリフレッシュレートが高くなることはめったにありません。
テレビはほとんどすべてです60 Hzユニット、120 Hz セットが、そのリフレッシュレートをサポートする最新世代のゲームコンソールとともに主流の市場に参入しています。
フレームレートとリフレッシュレートのマッチング
画面のリフレッシュレートは、コンテンツのフレームレートと正確に一致している必要はありません。たとえば、60Hzのディスプレイで毎秒30フレームのビデオを再生している場合、60Hzで2つの同じフレームを表示するだけで、合計30の一意のフレームが表示されます。
24 fpsのフッテージは、24が60にきちんと分割されないため、課題があります。これを解決するにはさまざまな方法があります。一部の画面では、「プルダウン」と呼ばれる形式のビデオ変換を使用します。これは、意図した速度とはわずかに異なる速度でコンテンツを実行することを犠牲にして、不一致を補正します。
多くの最新のディスプレイはまた、異なるリフレッシュレートに切り替えます。そのため、テレビは48Hzまたは24Hzに切り替えて、24fpsの映像と完全に同期する場合があります。 120Hz TVは、24が120に均等に分割されるため、これを行う必要はありません。
Vsyncを使用する場合
ビデオゲームでは、フレームは次のような順序で作成されません。映画やビデオで。リミッターなしで放置すると、CPU、GPU、およびゲームエンジンは、可能な限り多くのフレームを生成しようとします。ただし、ゲームエンジンがこれらのコンポーネントにかけるワークロードは変動する可能性があるため、フレームレートが変動する可能性があります。
前述のように、GPUがモニターのリフレッシュレートと同期していないフレームを送信している場合、画像のさまざまな部分が並んでいない場所で、そのわかりやすいティアリング の外観が得られます。
Vsyncをアクティブにすると、GPUは、モニターが新しいフレームを描画する準備ができたときにのみ表示されるフレームを送信します、フレームがレンダリングされる速度も効果的に制限します。しかし、これは実際には、フレームがどのように「バッファリング」されるかに起因するさらに別の問題を引き起こす可能性があります。次に、2つの一般的なタイプのフレームバッファリングについて説明します。
ダブルバッファリングとトリプルバッファリングのVsync
「バッファ」は、次の待機領域として指定されるメモリ領域です。他のデバイスまたはプロセスの準備ができたら読んでください。 GPUがフレームをレンダリングすると、バッファに書き込まれます。次に、画面はそのバッファからフレームを読み取って描画します。
いわゆる「ダブルバッファリング」が今日の標準です。 2つのバッファがあり、交互に「フロント」バッファとバックバッファとして機能します。 GPUがバックバッファに書き込む間、ディスプレイはフロントバッファからフレームを描画します。次に、2つのバッファが役割を切り替え、プロセスが繰り返されます。
Vsyncがない場合、2つのバッファはいつでも交換できます。そのため、画面がフレーム内の各バッファの一部を描画し、その結果、ティアリングが発生する可能性があります。 Vsyncをオンにすると、そのティアリングはなくなります。ただし、GPUが1/60秒でバックバッファーへの書き込みを完了できない場合、そのフレームはスキップされます。これにより、1秒あたり30フレームが有効になります。
コンピューターで処理できる場合を除く一貫して毎秒60フレームをレンダリングすると、ロックされた30 fps、または30〜60の間でスナップする激しく揺れるフレームレートが発生する可能性があります。
トリプルバッファリングにより、2番目のバックバッファが追加されます。つまり、常にフレームが存在します。フロントバッファにスワップする準備ができているため、60Hzの画面で毎秒45または59フレームなどの奇数を使用できます。オプションが与えられた場合、トリプルバッファリングは常に良いオプションです。
拡張Vsyncタイプ
グラフィックカードメーカーは、画面のティアリングや、画面のティアリングによって引き起こされるその他のアーティファクトに取り組み続けています。各主要メーカーは、欠点なしにすべての利点を提供しようとするVsyncの高度なバージョンを考案しました。
NvidiaにはAdaptiveSyncとFastSyncがあり、それぞれにVsyncへの独自のインテリジェントなアプローチがあります。前者は、ゲームのフレームレートがリフレッシュレート以上の場合にのみVsyncをオンにします。それを下回ると、Vsyncが無効になり、バッファーの待ち時間がなくなります。後者のソリューションは、トリプルバッファリングを可能にし、ティアリングなしで最高のフレームレートを提供するため、より優れています。
AMDには、AdaptiveSyncのような拡張同期があります。
Vsyncと可変リフレッシュレートh2>
可変リフレッシュレートと呼ばれる、Vsyncの強力な代替手段があります。 NvidiaのテクノロジーはG-Sync として知られており、AMDはFreeSync を開発しましたが、無料で誰でも使用できるようにしています。
どちらのテクノロジーでもモニターを使用できますとGPUは、フレームがほぼ完璧な精度で同期されるように相互に通信します。つまり、Vsyncのすべての欠点がここで解決されます。
主な注意点は、モニター自体がテクノロジーをサポートしている必要があるということです。両方の標準をサポートするモニターを見つけることはめったにありませんが、Nvidiaは最近、特定のモニターにFreeSyncサポートを追加しました。 Nvidiaによってホワイトリストに登録されていないモニターでFreeSyncをアクティブ化することもできますが、場合によっては結果が良くないことがあります。
Vsyncの使用について知っておくべきことを要約しましょう:
これらがVsyncの基本です。さあ、そこに出て、涙のないゲーム体験を楽しんでください。