Eu tenho um framebuffer personalizado que possui um anexo de profundidade e estêncil:
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_TEXTURE_2D, texId, 0);
A operação a seguir mistura profundidade e estêncil ou apenas profundidade?
glBindFramebuffer(GL_READ_FRAMEBUFFER, fboId);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
glBlitFramebuffer(0, 0, w, h, 0, 0, w, h, GL_DEPTH_BUFFER_BIT, GL_NEAREST);
O que acontecerá quando na operação acima eu substituir GL_DEPTH_BUFFER_BIT
por GL_STENCIL_BUFFER_BIT
?
Se você chamar
glBlitFramebuffer
comGL_DEPTH_BUFFER_BIT
, apenas o buffer de profundidade será copiado e se você chamar comGL_STENCIL_BUFFER_BIT
apenas o buffer de estêncil será copiado. Se você deseja copiar os dois buffers de uma vez, você deve definir os dois bits: