Always flush on swap

This commit is contained in:
weihuoya
2019-01-08 18:28:59 +08:00
parent 3fa81f39fb
commit 66a7db3850
6 changed files with 23 additions and 0 deletions

View File

@ -1528,6 +1528,13 @@ void Renderer::SwapImpl(AbstractTexture* texture, const EFBRectangle& xfb_region
ClearEFBCache();
}
void Renderer::Flush()
{
// ensure all commands are sent to the GPU.
// Otherwise the driver could batch several frames togehter.
glFlush();
}
void Renderer::CheckForSurfaceChange()
{
if (!m_surface_changed.TestAndClear())

View File

@ -133,6 +133,7 @@ public:
TargetRectangle ConvertEFBRectangle(const EFBRectangle& rc) override;
void SwapImpl(AbstractTexture* texture, const EFBRectangle& rc, u64 ticks) override;
void Flush() override;
void ClearScreen(const EFBRectangle& rc, bool colorEnable, bool alphaEnable, bool zEnable,
u32 color, u32 z) override;