From 1ba7070bb674c82e8032a8d6c8eca2bc83479e7f Mon Sep 17 00:00:00 2001 From: OTHGMars Date: Fri, 14 May 2021 03:52:43 -0400 Subject: [PATCH] Maintains window position when updating video mode for LightManager compatibility. --- Engine/source/gui/core/guiCanvas.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Engine/source/gui/core/guiCanvas.cpp b/Engine/source/gui/core/guiCanvas.cpp index f50cc0152..abbf10561 100644 --- a/Engine/source/gui/core/guiCanvas.cpp +++ b/Engine/source/gui/core/guiCanvas.cpp @@ -1760,7 +1760,9 @@ void GuiCanvas::renderFrame(bool preRenderOnly, bool bufferSwap /* = true */) const char *pref = Con::getVariable( "$pref::Video::mode" ); mode.parseFromString( pref ); mode.antialiasLevel = 0; + Point2I winPos = mPlatformWindow->getPosition(); // Save position so we can put window back. mPlatformWindow->setVideoMode(mode); + mPlatformWindow->setPosition(winPos); Con::printf( "AntiAliasing has been disabled; it is not compatible with AdvancedLighting." ); } @@ -1772,7 +1774,9 @@ void GuiCanvas::renderFrame(bool preRenderOnly, bool bufferSwap /* = true */) if ( prefAA != mode.antialiasLevel ) { mode.parseFromString( pref ); + Point2I winPos = mPlatformWindow->getPosition(); // Save position so we can put window back. mPlatformWindow->setVideoMode(mode); + mPlatformWindow->setPosition(winPos); Con::printf( "AntiAliasing has been enabled while running BasicLighting." ); }