Merge pull request #7626 from weihuoya/vulkan-oom

Always clean cache on render swap
This commit is contained in:
Connor McLaughlin
2019-01-08 21:57:25 +10:00
committed by GitHub
6 changed files with 23 additions and 0 deletions

View File

@ -747,11 +747,19 @@ void Renderer::Swap(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, const
Core::Callback_VideoCopiedToXFB(true);
}
else
{
Flush();
}
// Update our last xfb values
m_last_xfb_width = (fbStride < 1 || fbStride > MAX_XFB_WIDTH) ? MAX_XFB_WIDTH : fbStride;
m_last_xfb_height = (fbHeight < 1 || fbHeight > MAX_XFB_HEIGHT) ? MAX_XFB_HEIGHT : fbHeight;
}
else
{
Flush();
}
}
bool Renderer::IsFrameDumping()

View File

@ -184,6 +184,7 @@ public:
void Swap(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, const EFBRectangle& rc,
u64 ticks);
virtual void SwapImpl(AbstractTexture* texture, const EFBRectangle& rc, u64 ticks) = 0;
virtual void Flush() {}
PEControl::PixelFormat GetPrevPixelFormat() const { return m_prev_efb_format; }
void StorePixelFormat(PEControl::PixelFormat new_format) { m_prev_efb_format = new_format; }