テクスチャ バッファ オブジェクト (ARB_texture_buffer_object) をフレーム バッファ (EXT_framebuffer_object) にアタッチして、テクスチャ バッファ オブジェクトに直接レンダリングできるようにする方法はありますか?
マルチサンプル フレームバッファ (カラー バッファ、深度バッファ、ステンシル バッファ) の正確なビット単位のコピーを作成し、このコピーを VRAM ではなくメイン メモリに常駐させるために、これが必要です。
更新: 問題は、マルチ サンプリングされたフレーム バッファーで glReadPixels を直接呼び出して、その内容をコピーできないことです。代わりに、マルチ サンプリングされたフレーム バッファーを中間フレーム バッファーにブリットし、その上で glReadPixels を呼び出す必要があります。このプロセス中に、複数のサンプルが平均化され、中間バッファーに書き込まれます。もちろん、このバッファを glWritePixels で復元すると、精度が低下します。
マルチ サンプル テクスチャをフレーム バッファ オブジェクトのバッキング ストレージとして使用できることはわかっていますが、このテクスチャは VRAM に常駐し、同じ精度の損失なしにメイン メモリにコピーする方法はないようです。具体的には、カラー バッファーではなく、マルチ サンプリングされた深度バッファーのアタッチメントに関連する精度の低下が心配です。
OpenGL でマルチサンプリング フレーム バッファの正確なコピーを作成 (およびこのコピーを復元) する別の方法はありますか?
TL;DR: マルチ サンプル フレーム バッファー (具体的には深度バッファー) の正確な内容をメイン メモリにコピーし、精度を落とさずにそれらの内容を後で復元する方法。