Skip to main content

スワップチェーンとは何ですか?

swapチェーンは、実際のモニターまたは他のデバイスに表示される前に画像をレンダリングするために使用される一連のフレームバッファまたはコンピューターメモリ内の場所です。スワップチェーンには、最初のまたはアクティブなバッファーが現在ディスプレイに表示されているものとして識別されるため、常に少なくとも2つのフレームバッファーがあります。1つのFrameBufferが表示されている間、次のバッファーをレンダリングおよび準備することができ、必要に応じてデバイスに交換できます。スワップチェーンを使用すると、ハードウェアとソフトウェアのタイミングの間の競合のために発生する問題のいくつか、およびディスプレイデバイスに直接レンダリングするために表示されるグラフィカルアーティファクトが排除できます。実際には、正しい数字のシーケンスを指定されたメモリの領域に配置するだけです。このメモリの領域にあるものは何でも、毎秒数回画面に描かれています。画面は、左上隅から右下隅まで水平線に描かれています。画面が次のフレームを起動している瞬間、画面の右下隅から左上隅に移動すると、垂直リトレースとして知られています。引き返す。このタイミングがオフになっている場合、またはプログラムがフレームがレンダリングされている期間中に画面に描画しようとする場合、涙として知られるグラフィカルな異常が現れる可能性があります。これは、ディスプレイデバイスのメモリ内の画像がレンダリングの途中で突然変更され、ディスプレイの片側が最後のフレームを表示し、残りの画面が新しいフレームを表示すると発生します。フレームバッファーへの時間の中で、表示される次のフレームはすでに準備されており、表示メモリにすばやく押し込むことができるため、表示されます。1つの画像が表示されている間、次の画像はバックバッファーとも呼ばれる非アクティブなフレームバッファに描画されています。これにより、滑らかなアニメーションと視覚効果が生成され、涙を防ぐために正確にタイミングを合わせることができます。ナノ秒またはミリ秒のタイミングアルゴリズムを使用することは、スワップチェーンを使用して、モニターの最大フレームレートが超えず、プログラムがシステム上に独自の処理とリソースをペースできるようにすることの不可欠な部分です。適切に実装されている場合、スワップチェーンを使用すると、ディスプレイデバイスのプロパティや、単一のアニメーションのフレームをレンダリングするのにかかる時間に関係なく、スムーズなアニメーションが発生する可能性があります。