現在、深度レンダリングバッファが接続されたFBOにいくつかのものをレンダリングしています。
ただし、レンダリングバッファを使い終わった後、深度情報はほとんど失われます。
レンダリングバッファから固定関数深度バッファにデータをコピーするにはどうすればよいですか?
glBlitFramebufferを使用して、フラグを有効にすることができますGL_DEPTH_BUFFER_BIT
。
コード例:
glBindFramebuffer(GL_READ_FRAMEBUFFER, fbo_id);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
glBlitFramebuffer(offset_x, offset_y, offset_x + size_x, offset_y + size_y,
offset_x, offset_y, offset_x + size_x, offset_y + size_y,
GL_DEPTH_BUFFER_BIT,
GL_NEAREST);
これにより、デプスバッファのみがコピーされます。