0

fbo にレンダリングしてから、そのテクスチャを後処理用の 2 番目のレンダー パスへの入力として使用しようとしていますが、レンダリングされたテクスチャglClearglClearColor影響しているようです。表示バッファのみに影響を与えるにはどうすればよいですか?

私のコードは次のようになります。

UseRenderingShaderProgram();
glBindFramebuffer(GL_FRAMEBUFFER, fb);
glClearColor(0.0, 0.0, 0.0, 0.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

renderWorld();

// render to screen
UsePostProcessingShaderProgram();
glBindFramebuffer(GL_FRAMEBUFFER, 0);

glClearColor(0.0, 0.0, 0.0, 1.0); // <== texture appears to get cleared in this two lines.
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

renderWorld();

glfwSwapBuffers();
4

1 に答える 1