diff options
| author | Admiral H. Curtiss <pikachu025@gmail.com> | 2022-10-11 03:42:17 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-11 03:42:17 +0200 |
| commit | a056a1366f458754aee61b67f05f61f34c826353 (patch) | |
| tree | 7a223982642ae558808d0279f6de34eee746369f /Source/Core/VideoCommon/VideoState.cpp | |
| parent | 333ede5416217cf88ea210e284cfb4f76d49e0f6 (diff) | |
| parent | ffed23c059f52dfbe1dbd089d6861c68b8960035 (diff) | |
Merge pull request #11131 from Pokechu22/cp-state-savestate-mistakes
Include tangent/binormal cache in savestates and simplify saving CP state
Diffstat (limited to 'Source/Core/VideoCommon/VideoState.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/VideoState.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/VideoState.cpp b/Source/Core/VideoCommon/VideoState.cpp index 538c3d0904..b56c931b48 100644 --- a/Source/Core/VideoCommon/VideoState.cpp +++ b/Source/Core/VideoCommon/VideoState.cpp @@ -18,6 +18,7 @@ #include "VideoCommon/TMEM.h" #include "VideoCommon/TextureCacheBase.h" #include "VideoCommon/TextureDecoder.h" +#include "VideoCommon/VertexLoaderManager.h" #include "VideoCommon/VertexManagerBase.h" #include "VideoCommon/VertexShaderManager.h" #include "VideoCommon/XFMemory.h" @@ -38,7 +39,12 @@ void VideoCommon_DoState(PointerWrap& p) p.DoMarker("BP Memory"); // CP Memory - DoCPState(p); + // We don't save g_preprocess_cp_state separately because the GPU should be + // synced around state save/load. + p.Do(g_main_cp_state); + p.DoMarker("CP Memory"); + if (p.IsReadMode()) + CopyPreprocessCPStateFromMain(); // XF Memory p.Do(xfmem); @@ -90,5 +96,6 @@ void VideoCommon_DoState(PointerWrap& p) { // Inform backend of new state from registers. BPReload(); + VertexLoaderManager::MarkAllDirty(); } } |
