GPU: Avoid blit operation modifying the wrong framebuffer during restore
At the end of `GPU_framebuffer_blit` when `prev_fb->bind(true);` is called, the `context_->active_fb` was not in sync and lead to the wrong framebuffer being modified by bind function. This fix T81055 SSS light is missing from the diffuse light render pass
This commit is contained in:
@@ -489,6 +489,8 @@ void GLFrameBuffer::blit_to(
|
|||||||
/* Restore the draw buffers. */
|
/* Restore the draw buffers. */
|
||||||
glDrawBuffers(ARRAY_SIZE(dst->gl_attachments_), dst->gl_attachments_);
|
glDrawBuffers(ARRAY_SIZE(dst->gl_attachments_), dst->gl_attachments_);
|
||||||
}
|
}
|
||||||
|
/* Ensure previous buffer is restored. */
|
||||||
|
context_->active_fb = dst;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** \} */
|
/** \} */
|
||||||
|
|||||||
Reference in New Issue
Block a user