diff options
| author | Pierre Bourdon <delroth@gmail.com> | 2014-01-29 14:43:29 -0800 |
|---|---|---|
| committer | Pierre Bourdon <delroth@gmail.com> | 2014-01-29 14:43:29 -0800 |
| commit | 23e64001dd62a2723a01ffc3b216b20bf8b66e66 (patch) | |
| tree | 0f5a73daa119f517d30293a4a075c2070dec88ac /Source/Core/VideoBackends/OGL/Render.cpp | |
| parent | 5df958fe23e212436ed2e651b2533ec9243844e9 (diff) | |
| parent | 99b6c82ac34c086a21bab9d197a53d97175340dd (diff) | |
Merge pull request #10 from Sonicadvance1/Fix-AdrenoBlitRotate
[Android] Fix Adreno v53 development drivers rotating framebuffer
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/OGL/Render.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp index 898d907dc1..a04071be30 100644 --- a/Source/Core/VideoBackends/OGL/Render.cpp +++ b/Source/Core/VideoBackends/OGL/Render.cpp @@ -1299,10 +1299,15 @@ void Renderer::Swap(u32 xfbAddr, u32 fbWidth, u32 fbHeight,const EFBRectangle& r UpdateDrawRectangle(s_backbuffer_width, s_backbuffer_height); TargetRectangle flipped_trc = GetTargetRectangle(); - // Flip top and bottom for some reason; TODO: Fix the code to suck less? - int tmp = flipped_trc.top; - flipped_trc.top = flipped_trc.bottom; - flipped_trc.bottom = tmp; + if (DriverDetails::HasBug(DriverDetails::BUG_ROTATEDFRAMEBUFFER)) + { + std::swap(flipped_trc.left, flipped_trc.right); + } + else + { + // Flip top and bottom for some reason; TODO: Fix the code to suck less? + std::swap(flipped_trc.top, flipped_trc.bottom); + } GL_REPORT_ERRORD(); |
