From 6ac2d342b3094fff5847cfcfba8a6532c38465eb Mon Sep 17 00:00:00 2001 From: Player Dagostino Date: Thu, 11 Aug 2011 03:35:52 +0200 Subject: [PATCH] Drop useless stuff about VBO and occlusion from the impostor patch. --- indra/newview/llfloaterhardwaresettings.cpp | 53 ++++--------------- indra/newview/llfloaterhardwaresettings.h | 12 +++-- indra/newview/llviewermenu.cpp | 4 ++ .../xui/en-us/floater_hardware_settings.xml | 23 +------- 4 files changed, 23 insertions(+), 69 deletions(-) diff --git a/indra/newview/llfloaterhardwaresettings.cpp b/indra/newview/llfloaterhardwaresettings.cpp index 30fa5a305..23da0629b 100644 --- a/indra/newview/llfloaterhardwaresettings.cpp +++ b/indra/newview/llfloaterhardwaresettings.cpp @@ -47,25 +47,27 @@ #include "pipeline.h" LLFloaterHardwareSettings* LLFloaterHardwareSettings::sHardwareSettings = NULL; -BOOL LLFloaterHardwareSettings::sUseStreamVBOexists = FALSE; LLFloaterHardwareSettings::LLFloaterHardwareSettings() : LLFloater(std::string("Hardware Settings Floater")) { LLUICtrlFactory::getInstance()->buildFloater(this, "floater_hardware_settings.xml"); + + // load it up + initCallbacks(); } LLFloaterHardwareSettings::~LLFloaterHardwareSettings() { } -void LLFloaterHardwareSettings::onCommitCheckBoxVBO(LLUICtrl* ctrl, void* user_data) +void LLFloaterHardwareSettings::onClickHelp(void* data) +{ + const char* xml_alert = "HardwareSettingsHelpButton"; + LLNotifications::instance().add(xml_alert); +} + +void LLFloaterHardwareSettings::initCallbacks(void) { - LLFloaterHardwareSettings* self = (LLFloaterHardwareSettings*)user_data; - if (self && sUseStreamVBOexists) - { - gSavedSettings.setBOOL("RenderUseStreamVBO", self->childGetValue("stream_vbo").asBoolean()); - self->refreshEnabledState(); - } } // menu maintenance functions @@ -75,10 +77,6 @@ void LLFloaterHardwareSettings::refresh() LLPanel::refresh(); mUseVBO = gSavedSettings.getBOOL("RenderVBOEnable"); - if (sUseStreamVBOexists) - { - mUseStreamVBO = gSavedSettings.getBOOL("RenderUseStreamVBO"); - } mUseFBO = gSavedSettings.getBOOL("RenderUseFBO"); mUseAniso = gSavedSettings.getBOOL("RenderAnisotropic"); mFSAASamples = gSavedSettings.getU32("RenderFSAASamples"); @@ -98,7 +96,6 @@ void LLFloaterHardwareSettings::refreshEnabledState() childSetMinValue("GrapicsCardTextureMemory", min_tex_mem); childSetMaxValue("GrapicsCardTextureMemory", max_tex_mem); - bool vbo_ok = true; mLastVBOState = LLVertexBuffer::sEnableVBOs; if (!LLFeatureManager::getInstance()->isFeatureAvailable("RenderVBOEnable") || !gGLManager.mHasVertexBufferObject) @@ -106,23 +103,6 @@ void LLFloaterHardwareSettings::refreshEnabledState() childSetEnabled("vbo", FALSE); //Streaming VBOs -Shyotl childSetEnabled("vbo_stream", FALSE); - vbo_ok = false; - } - - if (sUseStreamVBOexists) - { - childSetVisible("stream_vbo", true); - childSetEnabled("stream_vbo", vbo_ok && childGetValue("vbo") && - LLFeatureManager::getInstance()->isFeatureAvailable("RenderUseStreamVBO")); - } - else - { - childSetVisible("stream_vbo", false); - } - - if (!LLFeatureManager::getInstance()->isFeatureAvailable("UseOcclusion")) - { - childSetEnabled("occlusion", false); } else { @@ -135,7 +115,7 @@ void LLFloaterHardwareSettings::refreshEnabledState() childSetEnabled("gamma", !gPipeline.canUseWindLightShaders()); childSetEnabled("(brightness, lower is brighter)", !gPipeline.canUseWindLightShaders()); childSetEnabled("fog", !gPipeline.canUseWindLightShaders()); - childSetVisible("note", gPipeline.canUseWindLightShaders()); + } // static instance of it @@ -193,13 +173,6 @@ BOOL LLFloaterHardwareSettings::postBuild() { childSetAction("OK", onBtnOK, this); - sUseStreamVBOexists = gSavedSettings.controlExists("RenderUseStreamVBO"); - if (sUseStreamVBOexists) - { - childSetCommitCallback("vbo", onCommitCheckBoxVBO, this); - childSetCommitCallback("stream_vbo", onCommitCheckBoxVBO, this); - } - refresh(); return TRUE; @@ -229,10 +202,6 @@ void LLFloaterHardwareSettings::apply() void LLFloaterHardwareSettings::cancel() { gSavedSettings.setBOOL("RenderVBOEnable", mUseVBO); - if (sUseStreamVBOexists) - { - gSavedSettings.setBOOL("RenderUseStreamVBO", mUseStreamVBO); - } gSavedSettings.setBOOL("RenderUseFBO", mUseFBO); gSavedSettings.setBOOL("RenderAnisotropic", mUseAniso); gSavedSettings.setU32("RenderFSAASamples", mFSAASamples); diff --git a/indra/newview/llfloaterhardwaresettings.h b/indra/newview/llfloaterhardwaresettings.h index 804b26dd9..0d78d67a2 100644 --- a/indra/newview/llfloaterhardwaresettings.h +++ b/indra/newview/llfloaterhardwaresettings.h @@ -49,11 +49,14 @@ public: virtual BOOL postBuild(); + /// initialize all the callbacks for the menu + void initCallbacks(void); + /// one and one instance only static LLFloaterHardwareSettings* instance(); - /// callback for the VBO-related settings checkboxes - static void onCommitCheckBoxVBO(LLUICtrl* ctrl, void* user_data); + /// callback for the menus help button + static void onClickHelp(void* data); /// OK button static void onBtnOK( void* userdata ); @@ -84,12 +87,11 @@ public: /// refresh the enabled values void refreshEnabledState(); -private: +protected: LLSliderCtrl* mCtrlVideoCardMem; //Retained values for cancel/reset BOOL mUseVBO; - BOOL mUseStreamVBO; BOOL mUseFBO; BOOL mUseAniso; U32 mFSAASamples; @@ -99,9 +101,9 @@ private: BOOL mProbeHardwareOnStartup; bool mLastVBOState; //track changes to LLVertexBuffer::sEnableVBOs every frame. Bleh. +private: // one instance on the inside static LLFloaterHardwareSettings* sHardwareSettings; - static BOOL sUseStreamVBOexists; }; #endif diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 572cbc741..90cff3cdc 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -1524,6 +1524,10 @@ void init_debug_rendering_menu(LLMenuGL* menu) 'R', MASK_CONTROL|MASK_SHIFT)); LLMenuItemCheckGL* item; + item = new LLMenuItemCheckGL("Object-Object Occlusion", menu_toggle_control, NULL, menu_check_control, (void*)"UseOcclusion", 'O', MASK_CONTROL|MASK_SHIFT); + item->setEnabled(gGLManager.mHasOcclusionQuery && LLFeatureManager::getInstance()->isFeatureAvailable("UseOcclusion")); + menu->append(item); + item = new LLMenuItemCheckGL("Debug GL", menu_toggle_control, NULL, menu_check_control, (void*)"RenderDebugGL"); menu->append(item); diff --git a/indra/newview/skins/default/xui/en-us/floater_hardware_settings.xml b/indra/newview/skins/default/xui/en-us/floater_hardware_settings.xml index 347c69a6b..62569e0c9 100644 --- a/indra/newview/skins/default/xui/en-us/floater_hardware_settings.xml +++ b/indra/newview/skins/default/xui/en-us/floater_hardware_settings.xml @@ -55,34 +55,13 @@ font="SansSerifSmall" h_pad="0" halign="left" height="12" left="10" mouse_opaque="true" name="Enable VBO:" v_pad="0" width="128"> - Vertex Buffer Object: + Enable VBO: - - - - - Occlusion: - -