summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/XFStructs.cpp
diff options
context:
space:
mode:
authorRobin Kertels <robin.kertels@gmail.com>2022-11-16 14:39:29 +0100
committerRobin Kertels <robin.kertels@gmail.com>2022-11-18 01:42:30 +0100
commitf179fd9c33fa7fb018ae9b8c378606d3b6f104f8 (patch)
tree72330952776f6f1f6fa25fdebf358cbaa1f5766c /Source/Core/VideoCommon/XFStructs.cpp
parent8a1c28be6318c9d3cd373bcee3f80969d466e9b1 (diff)
VideoCommon:VertexLoaderManager: Reduce CPConfig checks
A bit of a micro optimization: CheckCPConfiguration is called 350 times instead of 35k times.
Diffstat (limited to 'Source/Core/VideoCommon/XFStructs.cpp')
-rw-r--r--Source/Core/VideoCommon/XFStructs.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/Core/VideoCommon/XFStructs.cpp b/Source/Core/VideoCommon/XFStructs.cpp
index 1d6811f92a..168d310f81 100644
--- a/Source/Core/VideoCommon/XFStructs.cpp
+++ b/Source/Core/VideoCommon/XFStructs.cpp
@@ -15,6 +15,7 @@
#include "VideoCommon/Fifo.h"
#include "VideoCommon/GeometryShaderManager.h"
#include "VideoCommon/PixelShaderManager.h"
+#include "VideoCommon/VertexLoaderManager.h"
#include "VideoCommon/VertexManagerBase.h"
#include "VideoCommon/VertexShaderManager.h"
#include "VideoCommon/XFMemory.h"
@@ -53,6 +54,7 @@ static void XFRegWritten(u32 address, u32 value)
}
case XFMEM_VTXSPECS: //__GXXfVtxSpecs, wrote 0004
+ VertexLoaderManager::g_needs_cp_xf_consistency_check = true;
break;
case XFMEM_SETNUMCHAN:
@@ -102,9 +104,11 @@ static void XFRegWritten(u32 address, u32 value)
case XFMEM_SETMATRIXINDA:
VertexShaderManager::SetTexMatrixChangedA(value);
+ VertexLoaderManager::g_needs_cp_xf_consistency_check = true;
break;
case XFMEM_SETMATRIXINDB:
VertexShaderManager::SetTexMatrixChangedB(value);
+ VertexLoaderManager::g_needs_cp_xf_consistency_check = true;
break;
case XFMEM_SETVIEWPORT: