summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/BPStructs.cpp
diff options
context:
space:
mode:
authorJordan Woyak <jordan.woyak@gmail.com>2025-04-08 19:42:52 -0500
committerJordan Woyak <jordan.woyak@gmail.com>2025-04-08 19:58:31 -0500
commit4aa056dd4dfb0da40455afd1a91e31794a0c41e1 (patch)
tree6889be10f80557c567d72c79b492291e2c234742 /Source/Core/VideoCommon/BPStructs.cpp
parentee27f03a4387baca6371a06068274135ff9547a5 (diff)
BPStructs: Add TODO for unsafe usage of GetTicks.
Diffstat (limited to 'Source/Core/VideoCommon/BPStructs.cpp')
-rw-r--r--Source/Core/VideoCommon/BPStructs.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/BPStructs.cpp b/Source/Core/VideoCommon/BPStructs.cpp
index 4f02c298b4..bb910e653e 100644
--- a/Source/Core/VideoCommon/BPStructs.cpp
+++ b/Source/Core/VideoCommon/BPStructs.cpp
@@ -357,8 +357,13 @@ static void BPWritten(PixelShaderManager& pixel_shader_manager, XFStateManager&
auto& system = Core::System::GetInstance();
if (g_ActiveConfig.bImmediateXFB)
{
+ // TODO: GetTicks is not sane from the GPU thread.
+ // This value is currently used for frame dumping and the custom shader "time_ms" value.
+ // Frame dumping has more calls that aren't sane from the GPU thread.
+ // i.e. Frame dumping is not sane in "Dual Core" mode in general.
+ const u64 ticks = system.GetCoreTiming().GetTicks();
+
// below div two to convert from bytes to pixels - it expects width, not stride
- u64 ticks = system.GetCoreTiming().GetTicks();
g_presenter->ImmediateSwap(destAddr, destStride / 2, destStride, height, ticks);
}
else