diff options
author | Kevin Hartman <kevin@hart.mn> | 2014-08-29 22:23:12 -0700 |
---|---|---|
committer | Tony Wasserka <NeoBrainX@gmail.com> | 2014-11-18 13:06:05 +0100 |
commit | 221a9b023d8c9ca55c093823e9efd6d13d0a54a2 (patch) | |
tree | 57a26a0e11416b366688d00c4a2c9216fa0cde78 /src/video_core/renderer_opengl/renderer_opengl.h | |
parent | c8d933a14211ce6ee02659ecef758a1f303bc87f (diff) |
Viewport scaling and display density independence
The view is scaled to be as large as possible, without changing the aspect, within the bounds of the window.
On "retina" displays, or other displays where window units != pixels, the view should no longer draw incorrectly.
Diffstat (limited to 'src/video_core/renderer_opengl/renderer_opengl.h')
-rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/renderer_opengl.h b/src/video_core/renderer_opengl/renderer_opengl.h index eed201a9..d440e2bc 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.h +++ b/src/video_core/renderer_opengl/renderer_opengl.h @@ -52,12 +52,27 @@ private: static void LoadFBToActiveGLTexture(const GPU::Regs::FramebufferConfig& framebuffer, const TextureInfo& texture); + /// Updates the viewport rectangle + void UpdateViewportExtent(); + EmuWindow* render_window; ///< Handle to render window u32 last_mode; ///< Last render mode int resolution_width; ///< Current resolution width int resolution_height; ///< Current resolution height + struct { + int width; + int height; + } framebuffer_size; ///< Current framebuffer size + + struct { + int x; + int y; + int width; + int height; + } viewport_extent; ///< Current viewport rectangle + // OpenGL object IDs GLuint vertex_array_handle; GLuint vertex_buffer_handle; |