summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/VideoBackendBase.cpp
diff options
context:
space:
mode:
authorTechjar <tecknojar@gmail.com>2021-08-03 18:55:38 -0400
committerTechjar <tecknojar@gmail.com>2021-08-03 23:37:50 -0400
commit797d0b7b1b1862d2fa2d57b7aa66cb06abf348a2 (patch)
tree62f0596029aabf5c6ddf92ab9f90786213fb0ca0 /Source/Core/VideoCommon/VideoBackendBase.cpp
parent4b022a4bb15b4ac9f2c48f7116e44753a9787645 (diff)
VI: Implement post-scanout XFB output
This adds about a frame of latency, and since most games don't change VI registers during scanout, we can get away with outputting the XFB at the start of scanout. WWE Crush Hour is the (only currently known) exception, which has flickering problems when doing it this way. This adds a path to perform the output at the end of scanout, and gates it behind an option which defaults to using the latency-reducing pre-scanout path.
Diffstat (limited to 'Source/Core/VideoCommon/VideoBackendBase.cpp')
-rw-r--r--Source/Core/VideoCommon/VideoBackendBase.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/VideoBackendBase.cpp b/Source/Core/VideoCommon/VideoBackendBase.cpp
index cadbd08024..66c638cd02 100644
--- a/Source/Core/VideoCommon/VideoBackendBase.cpp
+++ b/Source/Core/VideoCommon/VideoBackendBase.cpp
@@ -83,8 +83,8 @@ void VideoBackendBase::Video_ExitLoop()
}
// Run from the CPU thread (from VideoInterface.cpp)
-void VideoBackendBase::Video_BeginField(u32 xfb_addr, u32 fb_width, u32 fb_stride, u32 fb_height,
- u64 ticks)
+void VideoBackendBase::Video_OutputXFB(u32 xfb_addr, u32 fb_width, u32 fb_stride, u32 fb_height,
+ u64 ticks)
{
if (m_initialized && g_renderer && !g_ActiveConfig.bImmediateXFB)
{