summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/Render.cpp
diff options
context:
space:
mode:
authorJules Blok <jules.blok@gmail.com>2015-09-10 22:22:26 +0200
committerJules Blok <jules.blok@gmail.com>2015-09-10 22:22:26 +0200
commit99c08c89bb720d654e32c59e078e60b5f7976193 (patch)
tree786d0aa9b9670af313e1273600c483a71562c45d /Source/Core/VideoBackends/OGL/Render.cpp
parent3014feedc839d69931079ad3c4f645ef51055e1a (diff)
OGL: Invert Top-and-Bottom mode.
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/Render.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp
index de48229363..f0a30367f7 100644
--- a/Source/Core/VideoBackends/OGL/Render.cpp
+++ b/Source/Core/VideoBackends/OGL/Render.cpp
@@ -1293,7 +1293,12 @@ void Renderer::BlitScreen(TargetRectangle src, TargetRectangle dst, GLuint src_t
if (g_ActiveConfig.iStereoMode == STEREO_SBS || g_ActiveConfig.iStereoMode == STEREO_TAB)
{
TargetRectangle leftRc, rightRc;
- ConvertStereoRectangle(dst, leftRc, rightRc);
+
+ // Top-and-Bottom mode needs to compensate for inverted vertical screen coordinates.
+ if (g_ActiveConfig.iStereoMode == STEREO_TAB)
+ ConvertStereoRectangle(dst, rightRc, leftRc);
+ else
+ ConvertStereoRectangle(dst, leftRc, rightRc);
m_post_processor->BlitFromTexture(src, leftRc, src_texture, src_width, src_height, 0);
m_post_processor->BlitFromTexture(src, rightRc, src_texture, src_width, src_height, 1);