状況は次のとおりです。いくつかの深度値を含むテクスチャがあります。そのテクスチャを深度バッファとして使用してジオメトリをレンダリングしたいのですが、色を通常のフレームバッファ(つまり、ウィンドウのフレームバッファ)に書き込んでもらいたいのです。
どうすればよいですか?FBOを作成し、それにデプステクスチャ(GL_DEPTH_COMPONENT)のみをバインドしようとしましたが、機能しませんでした。どの色も現れませんでした。
いいえ、できません。レンダリング先のFBOは、メインフレームバッファまたはオフスクリーンバッファのいずれかです。それらを混ぜることはできません。
代わりに、カラーレンダーバッファーにレンダリングしてから、メインフレームバッファーに単純なブリッティング操作を実行することをお勧めします。
編集-1。
または、メインFBにすでに深度がある場合は、最初に深度をブリットしてからメインFBにレンダリングすることで、追加のカラーレンダーバッファーのビデオメモリを節約できます。
PSブリッティングはを介して行われglBlitFramebuffer
ます。それを機能させるには、それぞれに、、およびglDrawBuffer()を設定する必要がGL_READ_FRAMEBUFFER
ありGL_DRAW_FRAMEBUFFER
ます。