「スワップチェーン」の版間の差分
ナビゲーションに移動
検索に移動
Administrator (トーク | 投稿記録) |
Administrator (トーク | 投稿記録) |
||
1行目: | 1行目: | ||
'''スワップチェーン'''([[英語]]:Swap Chain)とは、主に[[コンピューターグラフィックス]]で用いられる1つのフロントバッファと、1つ以上のバックバッファで構成されるフレームバッファを管理するための機構(コレクション)である。 | '''スワップチェーン'''([[英語]]:Swap Chain)とは、主に[[コンピューターグラフィックス]]で用いられる1つのフロントバッファと、1つ以上のバックバッファで構成されるフレームバッファを管理するための機構(コレクション)である。 | ||
+ | |||
+ | == 概要 == | ||
1つのフロントバッファと1つのバックバッファ(計2つ)という最小構成のスワップチェーンは「[[ダブルバッファ]]」と呼ばれる。 | 1つのフロントバッファと1つのバックバッファ(計2つ)という最小構成のスワップチェーンは「[[ダブルバッファ]]」と呼ばれる。 | ||
− | |||
[[ダブルバッファ]]の場合は単純なスワップであるが、 | [[ダブルバッファ]]の場合は単純なスワップであるが、 | ||
トリプルバッファ以上になるとバッファの遷移がリング状になるので、 | トリプルバッファ以上になるとバッファの遷移がリング状になるので、 |
2020年1月20日 (月) 08:57時点における版
スワップチェーン(英語:Swap Chain)とは、主にコンピューターグラフィックスで用いられる1つのフロントバッファと、1つ以上のバックバッファで構成されるフレームバッファを管理するための機構(コレクション)である。
概要
1つのフロントバッファと1つのバックバッファ(計2つ)という最小構成のスワップチェーンは「ダブルバッファ」と呼ばれる。
ダブルバッファの場合は単純なスワップであるが、 トリプルバッファ以上になるとバッファの遷移がリング状になるので、 それを「スワップ操作」だけでグルグル回るようにしたものを「スワップチェーン」と呼ぶことが多い。
ぶっちゃけよくある「リングバッファ」を「スワップチェーン」という方言で呼んでいるだけだな。
トリプルバッファの例
フロントバッファ | バックバッファ1 | バックバッファ2 | |
---|---|---|---|
1フレーム目 | A | B | C |
2フレーム目 | B | C | A |
3フレーム目 | C | A | B |
4フレーム目は1フレーム目と同じになる。
動画の切り出し
一般的に動画のデコードは非常に重たい処理であり、1フレーム単位で静止画を取得しようとするとリアルタイムでは厳しい結果になることが多い。基本的に動画はキーフレームからの差分で表現されるので、連続再生ではない場合はどうしても重くなる。
そこで巨大なスワップチェーンを生成し、別スレッドで動画から一定フレーム数を先読み的に静止画としてそこへ書き出しておく構造にすることでサクサクと静止画を取得できるようになる。ゲーム内のテレビなどに動画をテクスチャとして貼り付けるなどの用途でよく使われる。