1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-02 09:03:37 +00:00

Clear buffers when depth buffer width != VI.width.

Fixed Star Soldier Vanishing Earth - Cutted Screen #374
This commit is contained in:
Sergey Lipskiy 2015-04-11 16:17:44 +06:00
parent 001e6b4ed3
commit 43b7488ec8

7
VI.cpp
View File

@ -65,9 +65,10 @@ void VI_UpdateSize()
// const int fsaa = ((*REG.VI_STATUS) >> 8) & 3;
// const int divot = ((*REG.VI_STATUS) >> 4) & 1;
if (config.frameBufferEmulation.enable && ((interlacedPrev != VI.interlaced) || (VI.width > 0 && VI.width != VI.widthPrev))) {
FrameBufferList & fbList = frameBufferList();
FrameBufferList & fbList = frameBufferList();
FrameBuffer * pBuffer = fbList.findBuffer(VI.lastOrigin);
DepthBuffer * pDepthBuffer = pBuffer != NULL ? pBuffer->m_pDepthBuffer : NULL;
if (config.frameBufferEmulation.enable && ((interlacedPrev != VI.interlaced) || (VI.width > 0 && VI.width != VI.widthPrev) || (pDepthBuffer != NULL && pDepthBuffer->m_width != VI.width))) {
fbList.removeBuffers(VI.widthPrev);
fbList.removeBuffers(VI.width);
depthBufferList().destroy();