summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Software/SWRenderer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoBackends/Software/SWRenderer.cpp')
-rw-r--r--Source/Core/VideoBackends/Software/SWRenderer.cpp24
1 files changed, 3 insertions, 21 deletions
diff --git a/Source/Core/VideoBackends/Software/SWRenderer.cpp b/Source/Core/VideoBackends/Software/SWRenderer.cpp
index 9cd223798b..2e7992c705 100644
--- a/Source/Core/VideoBackends/Software/SWRenderer.cpp
+++ b/Source/Core/VideoBackends/Software/SWRenderer.cpp
@@ -123,28 +123,10 @@ void SWRenderer::SwapImpl(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight,
}
// Save screenshot
- if (s_bScreenshot)
+ if (IsFrameDumping())
{
- std::lock_guard<std::mutex> lk(s_criticalScreenshot);
-
- if (TextureToPng(GetCurrentColorTexture(), fbWidth * 4, s_sScreenshotName, fbWidth, fbHeight,
- false))
- OSD::AddMessage("Screenshot saved to " + s_sScreenshotName);
-
- // Reset settings
- s_sScreenshotName.clear();
- s_bScreenshot = false;
- s_screenshotCompleted.Set();
- }
-
- if (SConfig::GetInstance().m_DumpFrames)
- {
- static int frame_index = 0;
- TextureToPng(GetCurrentColorTexture(), fbWidth * 4,
- StringFromFormat("%sframe%i_color.png",
- File::GetUserPath(D_DUMPFRAMES_IDX).c_str(), frame_index),
- fbWidth, fbHeight, true);
- frame_index++;
+ DumpFrameData(GetCurrentColorTexture(), fbWidth, fbHeight, fbWidth * 4, ticks);
+ FinishFrameData();
}
OSD::DoCallbacks(OSD::CallbackType::OnFrame);