summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/Render.cpp
diff options
context:
space:
mode:
authorMarkus Wick <markus@selfnet.de>2015-07-25 12:03:03 +0200
committerMarkus Wick <markus@selfnet.de>2015-07-25 12:03:03 +0200
commit96b77aaa81b57e6806b3c78edd2b0b85f58ce399 (patch)
tree483a78977fd152273a8f253c69403b6823a4168e /Source/Core/VideoBackends/OGL/Render.cpp
parent9e4dae4a036fdc2f0a78e04a4215cd24c5c3ca0f (diff)
parentefd250494d62272451bed3257771f6dae6edb695 (diff)
Merge pull request #2720 from booto/efb-copy
[WIP] Video: respect stride of efb copies to xfb
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/Render.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp
index 85e7956b09..7fefeaff81 100644
--- a/Source/Core/VideoBackends/OGL/Render.cpp
+++ b/Source/Core/VideoBackends/OGL/Render.cpp
@@ -1456,10 +1456,16 @@ void Renderer::SwapImpl(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, co
xfbSource = (const XFBSource*) xfbSourceList[i];
TargetRectangle drawRc;
+ TargetRectangle sourceRc;
+ sourceRc.left = xfbSource->sourceRc.left;
+ sourceRc.right = xfbSource->sourceRc.right;
+ sourceRc.top = xfbSource->sourceRc.top;
+ sourceRc.bottom = xfbSource->sourceRc.bottom;
if (g_ActiveConfig.bUseRealXFB)
{
drawRc = flipped_trc;
+ sourceRc.right -= fbStride - fbWidth;
}
else
{
@@ -1481,18 +1487,12 @@ void Renderer::SwapImpl(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, co
//drawRc.bottom *= vScale;
//drawRc.left *= hScale;
//drawRc.right *= hScale;
+
+ sourceRc.right -= Renderer::EFBToScaledX(fbStride - fbWidth);
}
// Tell the OSD Menu about the current internal resolution
OSDInternalW = xfbSource->sourceRc.GetWidth(); OSDInternalH = xfbSource->sourceRc.GetHeight();
- TargetRectangle sourceRc;
- sourceRc.left = xfbSource->sourceRc.left;
- sourceRc.right = xfbSource->sourceRc.right;
- sourceRc.top = xfbSource->sourceRc.top;
- sourceRc.bottom = xfbSource->sourceRc.bottom;
-
- sourceRc.right -= Renderer::EFBToScaledX(fbStride - fbWidth);
-
BlitScreen(sourceRc, drawRc, xfbSource->texture, xfbSource->texWidth, xfbSource->texHeight);
}
}