ストライド頂点バッファーを使用する場合と、各属性にぎっしり詰まったバッファーを使用する場合の長所と短所は何ですか? 私が意味するのは、たとえば次のとおりです。
ストライド:xyzrgb xyzrgb xyzrgb
きつい:xyzxyzxyz rgbrgbrgb
一見、stride を使用すると簡単にサイズを変更できるように見えますが、 で再割り当てすると、頂点バッファーの内容が削除されますglBufferData()
。
位置、色、texcoords がローカル メモリ内の異なる配列から取得される可能性があり、ストライド バッファ データ関数がないため、タイトなモデルを使用するのが最善のように思えます。glBufferSubData()
アップロードする前に、すべての配列をインターリーブ バッファにコピーするか、属性ごとに頂点ごとに 1つ使用する必要があります (ひどい考えだと思います)。
インターリーブ バッファ (ストライド) を使用する一般的な方法があるようです。何故ですか?ここに欠けているものはありますか?