Do 3D rendering on savestate load so next frame can be not blank.
This commit is contained in:
parent
55ffec340b
commit
88019146dd
|
@ -272,12 +272,14 @@ void GPU::DoSavestate(Savestate* file) noexcept
|
||||||
VRAMPtr_BOBJ[i] = GetUniqueBankPtr(VRAMMap_BOBJ[i], i << 14);
|
VRAMPtr_BOBJ[i] = GetUniqueBankPtr(VRAMMap_BOBJ[i], i << 14);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This should happen before re-rendering the 3D buffer.
|
||||||
|
if (!file->Saving)
|
||||||
|
ResetVRAMCache();
|
||||||
|
|
||||||
GPU2D_A.DoSavestate(file);
|
GPU2D_A.DoSavestate(file);
|
||||||
GPU2D_B.DoSavestate(file);
|
GPU2D_B.DoSavestate(file);
|
||||||
GPU3D.DoSavestate(file);
|
GPU3D.DoSavestate(file);
|
||||||
|
|
||||||
if (!file->Saving)
|
|
||||||
ResetVRAMCache();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GPU::AssignFramebuffers() noexcept
|
void GPU::AssignFramebuffers() noexcept
|
||||||
|
|
|
@ -555,11 +555,9 @@ void GPU3D::DoSavestate(Savestate* file) noexcept
|
||||||
file->Var32(&CurPolygonAttr);
|
file->Var32(&CurPolygonAttr);
|
||||||
file->Var32(&TexParam);
|
file->Var32(&TexParam);
|
||||||
file->Var32(&TexPalette);
|
file->Var32(&TexPalette);
|
||||||
|
|
||||||
RenderFrameIdentical = false;
|
RenderFrameIdentical = false;
|
||||||
if (softRenderer && softRenderer->IsThreaded())
|
CurrentRenderer->RenderFrame();
|
||||||
{
|
|
||||||
softRenderer->EnableRenderThread();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue