diff options
Diffstat (limited to 'indra/newview/llviewerwindow.cpp')
-rw-r--r-- | indra/newview/llviewerwindow.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 349847c57a..a218079fb5 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1864,8 +1864,16 @@ LLViewerWindow::LLViewerWindow(const Params& p) // create window U32 max_core_count = gSavedSettings.getU32("EmulateCoreCount"); - U32 max_vram = gSavedSettings.getU32("RenderMaxVRAMBudget"); F32 max_gl_version = gSavedSettings.getF32("RenderMaxOpenGLVersion"); + + LLControlVariable* vram_control = gSavedSettings.getControl("RenderMaxVRAMBudget"); + U32 max_vram = vram_control->getValue().asInteger(); + mMaxVRAMControlConnection = vram_control->getSignal()->connect( + [this](LLControlVariable* control, const LLSD& new_val, const LLSD& old_val) + { + if (mWindow) mWindow->setMaxVRAMMegabytes(new_val.asInteger()); + }); + mWindow = LLWindowManager::createWindow(this, p.title, p.name, p.x, p.y, p.width, p.height, 0, @@ -2421,6 +2429,8 @@ LLViewerWindow::~LLViewerWindow() LLViewerShaderMgr::releaseInstance(); LLViewerShaderMgr::sInitialized = FALSE; } + + mMaxVRAMControlConnection.disconnect(); } |