「スワップチェーン」の版間の差分

編集の要約なし
編集の要約なし
2行目: 2行目:


== 概要 ==
== 概要 ==
1つのフロントバッファと1つのバックバッファ(計2つ)という最小構成のスワップチェーンは「[[ダブルバッファ]]」と呼ばれる。
1つのフロントバッファと1つのバックバッファ(計2つ)という最小構成のスワップチェーンは「[[ダブルバッファ]]」と呼ばれる。


9行目: 8行目:
それを「スワップ操作」だけでグルグル回るようにしたものを「スワップチェーン」と呼ぶことが多い。
それを「スワップ操作」だけでグルグル回るようにしたものを「スワップチェーン」と呼ぶことが多い。


ぶっちゃけよくある「[[リングバッファ]]」を「スワップチェーン」という方言で呼んでいるだけだな。
== 実装 ==
[[github]]に転がっている[[オープンソース]]の各種フレームワークではどのようにスワップチェーンを実装しているのか眺めてみた。


== トリプルバッファの例 ==
=== リングバッファ ===
ほとんどスワップチェーンは「[[リングバッファ]]」で実装されているようだ。
{| class="wikitable"
{| class="wikitable"
|-
|-
32行目: 33行目:
|}
|}


4フレーム目は1フレーム目と同じになる。
=== キュー ===
一部の実装では「[[キュー]]」を用いてものもあった。コメントによるとキューは前述のリングバッファと異なりバッファ数が可変なので速度的に有利であると書かれていた。本当かどうかは知らない。バッファの動的確保に時間がかかりそうな気がするがどうなんだろうか。


== 動画の切り出し ==
== 動画の切り出し ==