mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
Correct multisample texture resolving in FrameBufferList::renderBuffer.
This commit is contained in:
parent
70ede8237e
commit
88656c9059
|
@ -977,15 +977,15 @@ void FrameBufferList::renderBuffer(u32 _address)
|
||||||
render.clearColorBuffer(clearColor);
|
render.clearColorBuffer(clearColor);
|
||||||
|
|
||||||
GLenum filter = GL_LINEAR;
|
GLenum filter = GL_LINEAR;
|
||||||
if (config.video.multisampling != 0 && pFilteredBuffer == pBuffer) {
|
if (pFilteredBuffer->m_pTexture->frameBufferTexture == CachedTexture::fbMultiSample) {
|
||||||
if (X0 > 0 || dstPartHeight > 0 ||
|
if (X0 > 0 || dstPartHeight > 0 ||
|
||||||
(srcCoord[2] - srcCoord[0]) != (dstCoord[2] - dstCoord[0]) ||
|
(srcCoord[2] - srcCoord[0]) != (dstCoord[2] - dstCoord[0]) ||
|
||||||
(srcCoord[3] - srcCoord[1]) != (dstCoord[3] - dstCoord[1])) {
|
(srcCoord[3] - srcCoord[1]) != (dstCoord[3] - dstCoord[1])) {
|
||||||
pBuffer->resolveMultisampledTexture(true);
|
pFilteredBuffer->resolveMultisampledTexture(true);
|
||||||
glBindFramebuffer(GL_READ_FRAMEBUFFER, pBuffer->m_resolveFBO);
|
glBindFramebuffer(GL_READ_FRAMEBUFFER, pFilteredBuffer->m_resolveFBO);
|
||||||
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
|
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
|
||||||
} else {
|
} else {
|
||||||
glBindFramebuffer(GL_READ_FRAMEBUFFER, pBuffer->m_FBO);
|
glBindFramebuffer(GL_READ_FRAMEBUFFER, pFilteredBuffer->m_FBO);
|
||||||
filter = GL_NEAREST;
|
filter = GL_NEAREST;
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
|
|
Loading…
Reference in New Issue
Block a user