Use legacy call when rendering to a single texture

Fixes depth buffer in when undersampling > 1
This commit is contained in:
x2048 2022-10-04 21:02:42 +02:00
parent 579fc93c24
commit 1e96403954

@ -168,6 +168,13 @@ void TextureBufferOutput::activate(PipelineContext &context)
size = texture->getSize(); size = texture->getSize();
} }
// Use legacy call when there's single texture without depth texture
// This binds default depth buffer to the FBO
if (textures.size() == 1 && depth_stencil == NO_DEPTH_TEXTURE) {
driver->setRenderTarget(textures[0], m_clear, m_clear, context.clear_color);
return;
}
video::ITexture *depth_texture = nullptr; video::ITexture *depth_texture = nullptr;
if (depth_stencil != NO_DEPTH_TEXTURE) if (depth_stencil != NO_DEPTH_TEXTURE)
depth_texture = buffer->getTexture(depth_stencil); depth_texture = buffer->getTexture(depth_stencil);