2017-01-09 37 views
1

這種行爲的標準原因是什麼?我有2個相同的緩衝區,其中有2個網格物體,帶有預乘alpha和alpha背景:第一個物體在背景上,但第二個物體在這個alpha背景上移動時留下物體。我不明白爲什麼! FBO的是相似的。對象在alpha背景上留下痕跡

enter image description here

謝謝!

+4

不清除緩衝區 –

+0

沒錯,你是對的!我的第二個FBO被綁定之前,我的錯誤就是清除。 – OpenglNoob

+0

這實際上是一個很好的效果。 –

回答

1

我的錯誤是我忘了清除之前綁定FBO:

glClearColor(0.0f, 0.0f, 0.0f, 1.0f); 
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 
    glBindFramebuffer(GL_FRAMEBUFFER, FBO); 
    glBindFramebuffer(GL_FRAMEBUFFER, 0); // WRONG! 

    glBindFramebuffer(GL_FRAMEBUFFER, FBO); 
    glClearColor(0.0f, 0.0f, 0.0f, 1.0f); 
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) 
    glBindFramebuffer(GL_FRAMEBUFFER, 0); // RIGHT!