diff options
| author | bunnei <bunneidev@gmail.com> | 2016-11-15 19:57:08 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-11-15 19:57:08 -0500 |
| commit | 5a31552764dc8970253e642f4b829a8b785375c6 (patch) | |
| tree | 8186a82c37ae04c17bd1d6250c524fc097f9671c /src/video_core | |
| parent | 3b4f134c08eb61e5f69e35270adb34fdad1fae77 (diff) | |
| parent | 793339b73a9bc87d6fa22742be4631565c2201db (diff) | |
Merge pull request #1753 from jroweboy/frame_layouts
Support additional screen layouts.
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/video_core/renderer_opengl/renderer_opengl.cpp b/src/video_core/renderer_opengl/renderer_opengl.cpp index 03a588364..93f0ac105 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.cpp +++ b/src/video_core/renderer_opengl/renderer_opengl.cpp @@ -390,6 +390,8 @@ void RendererOpenGL::DrawSingleScreenRotated(const ScreenInfo& screen_info, floa */ void RendererOpenGL::DrawScreens() { auto layout = render_window->GetFramebufferLayout(); + const auto& top_screen = layout.top_screen; + const auto& bottom_screen = layout.bottom_screen; glViewport(0, 0, layout.width, layout.height); glClear(GL_COLOR_BUFFER_BIT); @@ -403,12 +405,15 @@ void RendererOpenGL::DrawScreens() { glActiveTexture(GL_TEXTURE0); glUniform1i(uniform_color_texture, 0); - DrawSingleScreenRotated(screen_infos[0], (float)layout.top_screen.left, - (float)layout.top_screen.top, (float)layout.top_screen.GetWidth(), - (float)layout.top_screen.GetHeight()); - DrawSingleScreenRotated(screen_infos[1], (float)layout.bottom_screen.left, - (float)layout.bottom_screen.top, (float)layout.bottom_screen.GetWidth(), - (float)layout.bottom_screen.GetHeight()); + if (layout.top_screen_enabled) { + DrawSingleScreenRotated(screen_infos[0], (float)top_screen.left, (float)top_screen.top, + (float)top_screen.GetWidth(), (float)top_screen.GetHeight()); + } + if (layout.bottom_screen_enabled) { + DrawSingleScreenRotated(screen_infos[1], (float)bottom_screen.left, + (float)bottom_screen.top, (float)bottom_screen.GetWidth(), + (float)bottom_screen.GetHeight()); + } m_current_frame++; } |
