diff options
| author | JMC47 <JMC4789@gmail.com> | 2019-03-12 03:10:20 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-03-12 03:10:20 -0400 |
| commit | 22e7419747cf629c185546052006872f6d4838d6 (patch) | |
| tree | 5552e6e5d05b6f2edd25ea52a5ad3614e3874709 /Source/Core/VideoCommon/VertexManagerBase.cpp | |
| parent | 909e9322e78ecbe45f6982dd5226bcbe6bc74e68 (diff) | |
| parent | 0e2397a1bc7da07312ad8f7a82d3745d7e9a56ed (diff) | |
Merge pull request #7838 from stenzek/efb-tile-cache
FramebufferManager: Implement EFB tile cache
Diffstat (limited to 'Source/Core/VideoCommon/VertexManagerBase.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/VertexManagerBase.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/VertexManagerBase.cpp b/Source/Core/VideoCommon/VertexManagerBase.cpp index bbc355a98c..06168c6cec 100644 --- a/Source/Core/VideoCommon/VertexManagerBase.cpp +++ b/Source/Core/VideoCommon/VertexManagerBase.cpp @@ -99,8 +99,7 @@ u32 VertexManagerBase::GetRemainingSize() const DataReader VertexManagerBase::PrepareForAdditionalData(int primitive, u32 count, u32 stride, bool cullall) { - // Flush all EFB pokes and invalidate the peek cache. - g_framebuffer_manager->InvalidatePeekCache(); + // Flush all EFB pokes. Since the buffer is shared, we can't draw pokes+primitives concurrently. g_framebuffer_manager->FlushEFBPokes(); // The SSE vertex loader can write up to 4 bytes past the end @@ -449,6 +448,9 @@ void VertexManagerBase::Flush() g_perf_query->DisableQuery(bpmem.zcontrol.early_ztest ? PQG_ZCOMP_ZCOMPLOC : PQG_ZCOMP); OnDraw(); + + // The EFB cache is now potentially stale. + g_framebuffer_manager->FlagPeekCacheAsOutOfDate(); } } |
