From 631c48e65bb02d7ba9fa55206ddf350d513aa126 Mon Sep 17 00:00:00 2001 From: Stefan Seyfried Date: Sat, 4 May 2013 17:25:31 +0200 Subject: [PATCH] GLFB: fix X window at 16:9 aspect ratio --- generic-pc/glfb.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/generic-pc/glfb.cpp b/generic-pc/glfb.cpp index 0826b27..2c0abef 100644 --- a/generic-pc/glfb.cpp +++ b/generic-pc/glfb.cpp @@ -291,10 +291,11 @@ void GLFramebuffer::render() { mReInit = false; glViewport(0, 0, mX, mY); + glutReshapeWindow(mX, mY); glMatrixMode(GL_PROJECTION); glLoadIdentity(); float aspect = static_cast(mX)/mY; - float osdaspect = 1.0/aspect; //(static_cast(mState.width)/mState.height); + float osdaspect = 1.0/(static_cast(16.0)/9); // if(!mState.go3d) { glOrtho(aspect*-osdaspect, aspect*osdaspect, -1.0, 1.0, -1.0, 1.0 ); @@ -370,6 +371,11 @@ void GLFramebuffer::checkReinit() { mX = x; mY = y; + /* fix aspect ratio */ + if (x < mY * 16 / 9) + mX = mY * 16 / 9; + else + mY = mX * 9 / 16; mReInit = true; } }