cifzの応答に加えて、あまりコードを必要としないFBOを視覚化する別の方法は、glBlitFramebuffer()を使用してフレームバッファーからウィンドウにピクセルを転送することです。
// XXX WARNING: Untested code follows
// Blit from fbo...
glBindFramebuffer(GL_READ_FRAMEBUFFER, fbo);
// ...to the front buffer.
glBindFramebuffer(GL_WRITE_FRAMEBUFFER, GL_FRONT);
GLsizei HalfWindowWidth = (GLsizei)(WindowWidth / 2.0f);
GLsizei HalfWindowHeight = (GLsizei)(WindowHeight / 2.0f);
// Blit attachment 0 to the lower-left quadrant of the window
glReadBuffer(GL_COLOR_ATTACHMENT0);
glBlitFramebuffer(0, 0, FboWidth, FboHeight,
0, 0, HalfWindowWidth, HalfWindowHeight,
GL_COLOR_BUFFER_BIT, GL_LINEAR);
// Blit attachment 1 to the lower-right quadrant of the window
glReadBuffer(GL_COLOR_ATTACHMENT1);
glBlitFramebuffer(0, 0, FboWidth, FboHeight,
HalfWindowWidth, 0, WindowWidth, HalfWindowHeight,
GL_COLOR_BUFFER_BIT, GL_LINEAR);
// ...and so on. You can switch FBOs if you have more than one to read from.
いくつかの明らかな「落とし穴」があります。HDRバッファーはおそらく期待する方法を視覚化せず、おそらく深さ/ステンシルバッファーを明らかな方法で「見る」ことはできず、FBOのサイズがブリットされる領域と一致しない場合、拡大/縮小方法は非常に単純かもしれません。
しかし、クイックアンドダーティハックが進むにつれて、それはかなり良いことです。