diff options
| author | Jonathan Yap <jhwelch@gmail.com> | 2015-02-11 13:28:39 -0500 | 
|---|---|---|
| committer | Jonathan Yap <jhwelch@gmail.com> | 2015-02-11 13:28:39 -0500 | 
| commit | b4c99cbb0aafc077c67b868ecb2d4c802355f472 (patch) | |
| tree | a41b56cb4ab187f3666665769dc327137fe55af2 | |
| parent | 4e1bd474f268e88b424b87806fe4815807b41a49 (diff) | |
STORM-2082 Attempt to put advanced settings into separate floater
| -rwxr-xr-x | indra/newview/llfloaterpreference.cpp | 121 | ||||
| -rwxr-xr-x | indra/newview/llfloaterpreference.h | 29 | ||||
| -rwxr-xr-x | indra/newview/llviewerfloaterreg.cpp | 1 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml | 862 | ||||
| -rwxr-xr-x | indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml | 1084 | 
5 files changed, 1079 insertions, 1018 deletions
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 0ac18408db..d2dfb63f9d 100755 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -351,6 +351,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)  	mCommitCallbackRegistrar.add("Pref.AutoReplace",            boost::bind(&LLFloaterPreference::onClickAutoReplace, this));  	mCommitCallbackRegistrar.add("Pref.PermsDefault",           boost::bind(&LLFloaterPreference::onClickPermsDefault, this));  	mCommitCallbackRegistrar.add("Pref.SpellChecker",           boost::bind(&LLFloaterPreference::onClickSpellChecker, this)); +	mCommitCallbackRegistrar.add("Pref.Advanced",				boost::bind(&LLFloaterPreference::onClickAdvanced, this));  	sSkin = gSavedSettings.getString("SkinCurrent"); @@ -621,6 +622,9 @@ void LLFloaterPreference::cancel()  	// hide spellchecker settings folder  	LLFloaterReg::hideInstance("prefs_spellchecker"); + +	// hide advancede floater +	LLFloaterReg::hideInstance("prefs_graphics_advanced");  	// reverts any changes to current skin  	gSavedSettings.setString("SkinCurrent", sSkin); @@ -745,6 +749,22 @@ void LLFloaterPreference::onVertexShaderEnable()  	refreshEnabledGraphics();  } +void LLFloaterPreferenceGraphicsAdvanced::onVertexShaderEnable() +{ +	LLFloaterPreference* instance = LLFloaterReg::findTypedInstance<LLFloaterPreference>("preferences"); +	if (instance) +	{ +		instance->refresh(); +	} + +	refreshEnabledGraphics(); +} + +void LLFloaterPreferenceGraphicsAdvanced::refreshEnabledGraphics() +{ +	refreshEnabledState(); +} +  void LLFloaterPreference::onAvatarImpostorsEnable()  {  	refreshEnabledGraphics(); @@ -792,10 +812,12 @@ void LLFloaterPreference::setHardwareDefaults()  void LLFloaterPreference::getControlNames(std::vector<std::string>& names)  {  	LLView* view = findChild<LLView>("display"); -	if (view) +	LLFloater* advanced = LLFloaterReg::findTypedInstance<LLFloater>("prefs_graphics_advanced"); +	if (view && advanced)  	{  		std::list<LLView*> stack;  		stack.push_back(view); +		stack.push_back(advanced);  		while(!stack.empty())  		{  			// Process view on top of the stack @@ -930,6 +952,12 @@ void LLFloaterPreference::refreshEnabledGraphics()  	{  		instance->refresh();  	} + +	LLFloater* advanced = LLFloaterReg::findTypedInstance<LLFloater>("prefs_graphics_advanced"); +	if (advanced) +	{ +		advanced->refresh(); +	}  }  void LLFloaterPreference::onClickClearCache() @@ -1111,7 +1139,37 @@ void LLFloaterPreference::buildPopupLists()  }  void LLFloaterPreference::refreshEnabledState() -{	 +{ +	LLCheckBoxCtrl* ctrl_wind_light = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders"); +	LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders"); + +	// if vertex shaders off, disable all shader related products +	if (!LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable") || +		!LLFeatureManager::getInstance()->isFeatureAvailable("WindLightUseAtmosShaders")) +	{ +		ctrl_wind_light->setEnabled(FALSE); +		ctrl_wind_light->setValue(FALSE); +	} +	else +	{ +		ctrl_wind_light->setEnabled(gSavedSettings.getBOOL("VertexShaderEnable")); +	} + +	//Deferred/SSAO/Shadows +	BOOL bumpshiny = gGLManager.mHasCubeMap && LLCubeMap::sUseCubeMaps && LLFeatureManager::getInstance()->isFeatureAvailable("RenderObjectBump") && gSavedSettings.getBOOL("RenderObjectBump"); +	BOOL shaders = gSavedSettings.getBOOL("WindLightUseAtmosShaders") && gSavedSettings.getBOOL("VertexShaderEnable"); +	BOOL enabled = LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") && +						bumpshiny && +						shaders &&  +						gGLManager.mHasFramebufferObject && +						gSavedSettings.getBOOL("RenderAvatarVP") && +						(ctrl_wind_light->get()) ? TRUE : FALSE; + +	ctrl_deferred->setEnabled(enabled); +} + +void LLFloaterPreferenceGraphicsAdvanced::refreshEnabledState() +{  	LLComboBox* ctrl_reflections = getChild<LLComboBox>("Reflections");  	LLTextBox* reflections_text = getChild<LLTextBox>("ReflectionsText"); @@ -1175,22 +1233,18 @@ void LLFloaterPreference::refreshEnabledState()  	// WindLight  	LLCheckBoxCtrl* ctrl_wind_light = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders"); -	LLCheckBoxCtrl* ctrl_wind_light2 = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders2");  	LLSliderCtrl* sky = getChild<LLSliderCtrl>("SkyMeshDetail");  	LLTextBox* sky_text = getChild<LLTextBox>("SkyMeshDetailText");  	// *HACK just checks to see if we can use shaders...   	// maybe some cards that use shaders, but don't support windlight  	ctrl_wind_light->setEnabled(ctrl_shader_enable->getEnabled() && shaders); -	ctrl_wind_light2->setEnabled(ctrl_shader_enable->getEnabled() && shaders);  	sky->setEnabled(ctrl_wind_light->get() && shaders);  	sky_text->setEnabled(ctrl_wind_light->get() && shaders);  	//Deferred/SSAO/Shadows  	LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders"); -	LLCheckBoxCtrl* ctrl_deferred2 = getChild<LLCheckBoxCtrl>("UseLightShaders2"); -  	BOOL enabled = LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") &&  						((bumpshiny_ctrl && bumpshiny_ctrl->get()) ? TRUE : FALSE) && @@ -1200,7 +1254,6 @@ void LLFloaterPreference::refreshEnabledState()  						(ctrl_wind_light->get()) ? TRUE : FALSE;  	ctrl_deferred->setEnabled(enabled); -	ctrl_deferred2->setEnabled(enabled);  	LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO");  	LLCheckBoxCtrl* ctrl_dof = getChild<LLCheckBoxCtrl>("UseDoF"); @@ -1291,7 +1344,7 @@ void LLFloaterPreference::refreshEnabledState()  	getChild<LLButton>("default_creation_permissions")->setEnabled(LLStartUp::getStartupState() < STATE_STARTED ? false : true);  } -void LLFloaterPreference::disableUnavailableSettings() +void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()  {	  	LLComboBox* ctrl_reflections   = getChild<LLComboBox>("Reflections");  	LLTextBox* reflections_text = getChild<LLTextBox>("ReflectionsText"); @@ -1302,7 +1355,6 @@ void LLFloaterPreference::disableUnavailableSettings()  	LLSliderCtrl* ctrl_maximum_arc = getChild<LLSliderCtrl>("MaximumARC");  	LLTextBox* maximum_arc_text = getChild<LLTextBox>("MaximumARCText");  	LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders"); -	LLCheckBoxCtrl* ctrl_deferred2 = getChild<LLCheckBoxCtrl>("UseLightShaders2");  	LLComboBox* ctrl_shadows = getChild<LLComboBox>("ShadowDetail");  	LLTextBox* shadows_text = getChild<LLTextBox>("RenderShadowDetailText");  	LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO"); @@ -1344,8 +1396,6 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); -		ctrl_deferred2->setEnabled(FALSE); -		ctrl_deferred2->setValue(FALSE);  	}  	// disabled windlight @@ -1370,8 +1420,6 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); -		ctrl_deferred2->setEnabled(FALSE); -		ctrl_deferred2->setValue(FALSE);  	}  	// disabled deferred @@ -1390,8 +1438,6 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); -		ctrl_deferred2->setEnabled(FALSE); -		ctrl_deferred2->setValue(FALSE);  	}  	// disabled deferred SSAO @@ -1439,8 +1485,6 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); -		ctrl_deferred2->setEnabled(FALSE); -		ctrl_deferred2->setValue(FALSE);  	}  	// disabled cloth @@ -1461,6 +1505,18 @@ void LLFloaterPreference::disableUnavailableSettings()  void LLFloaterPreference::refresh()  {  	LLPanel::refresh(); +	refreshEnabledState(); +} + +void LLFloaterPreferenceGraphicsAdvanced::draw() +{ +	refresh(); +	LLFloater::draw(); +} + +void LLFloaterPreferenceGraphicsAdvanced::refresh() +{ +	refreshEnabledState();  	getChild<LLUICtrl>("fsaa")->setValue((LLSD::Integer)  gSavedSettings.getU32("RenderFSAASamples")); @@ -1731,7 +1787,7 @@ void LLFloaterPreference::refreshUI()  	refresh();  } -void LLFloaterPreference::updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box) +void LLFloaterPreferenceGraphicsAdvanced::updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box)  {  	if (text_box == NULL || ctrl== NULL)  		return; @@ -1760,7 +1816,7 @@ void LLFloaterPreference::updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_b  	}  } -void LLFloaterPreference::updateImpostorsText(LLSliderCtrl* ctrl, LLTextBox* text_box) +void LLFloaterPreferenceGraphicsAdvanced::updateImpostorsText(LLSliderCtrl* ctrl, LLTextBox* text_box)  {  	F32 value = (F32)ctrl->getValue().asReal(); @@ -1779,7 +1835,7 @@ void LLFloaterPreference::updateImpostorsText(LLSliderCtrl* ctrl, LLTextBox* tex  	}  } -void LLFloaterPreference::updateMaximumArcText(LLSliderCtrl* ctrl, LLTextBox* text_box) +void LLFloaterPreferenceGraphicsAdvanced::updateMaximumArcText(LLSliderCtrl* ctrl, LLTextBox* text_box)  {  	F32 min_result = 20000.0f;  	F32 max_result = 300000.0f; @@ -1857,6 +1913,11 @@ void LLFloaterPreference::onClickSpellChecker()  		LLFloaterReg::showInstance("prefs_spellchecker");  } +void LLFloaterPreference::onClickAdvanced() +{ +	LLFloaterReg::showInstance("prefs_graphics_advanced"); +} +  void LLFloaterPreference::onClickActionChange()  {  	mClickActionDirty = true; @@ -2115,10 +2176,13 @@ void LLPanelPreference::apply()  void LLPanelPreference::saveSettings()  { +	LLFloater* advanced = LLFloaterReg::findTypedInstance<LLFloater>("prefs_graphics_advanced"); +  	// Save the value of all controls in the hierarchy  	mSavedValues.clear();  	std::list<LLView*> view_stack;  	view_stack.push_back(this); +	view_stack.push_back(advanced);  	while(!view_stack.empty())  	{  		// Process view on top of the stack @@ -2279,6 +2343,9 @@ static LLPanelInjector<LLPanelPreferencePrivacy> t_pref_privacy("panel_preferenc  BOOL LLPanelPreferenceGraphics::postBuild()  { +	LLFloaterReg::showInstance("prefs_graphics_advanced"); +	LLFloaterReg::hideInstance("prefs_graphics_advanced"); +  // Don't do this on Mac as their braindead GL versioning  // sets this when 8x and 16x are indeed available  // @@ -2340,8 +2407,10 @@ void LLPanelPreferenceGraphics::setPresetText()  bool LLPanelPreferenceGraphics::hasDirtyChilds()  { +	LLFloater* advanced = LLFloaterReg::findTypedInstance<LLFloater>("prefs_graphics_advanced");  	std::list<LLView*> view_stack;  	view_stack.push_back(this); +	view_stack.push_back(advanced);  	while(!view_stack.empty())  	{  		// Process view on top of the stack @@ -2377,8 +2446,10 @@ bool LLPanelPreferenceGraphics::hasDirtyChilds()  void LLPanelPreferenceGraphics::resetDirtyChilds()  { +	LLFloater* advanced = LLFloaterReg::findTypedInstance<LLFloater>("prefs_graphics_advanced");  	std::list<LLView*> view_stack;  	view_stack.push_back(this); +	view_stack.push_back(advanced);  	while(!view_stack.empty())  	{  		// Process view on top of the stack @@ -2414,6 +2485,16 @@ void LLPanelPreferenceGraphics::setHardwareDefaults()  	LLPanelPreference::setHardwareDefaults();  } +LLFloaterPreferenceGraphicsAdvanced::LLFloaterPreferenceGraphicsAdvanced(const LLSD& key) +	: LLFloater(key) +{ +	mCommitCallbackRegistrar.add("Pref.VertexShaderEnable",		boost::bind(&LLFloaterPreferenceGraphicsAdvanced::onVertexShaderEnable, this)); +} + +LLFloaterPreferenceGraphicsAdvanced::~LLFloaterPreferenceGraphicsAdvanced() +{ +} +  LLFloaterPreferenceProxy::LLFloaterPreferenceProxy(const LLSD& key)  	: LLFloater(key),  	  mSocksSettingsDirty(false) diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 10087f8aa3..cc3c85e340 100755 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -117,10 +117,10 @@ protected:  	// callback for defaults  	void setHardwareDefaults();  	void setRecommended(); -	// callback for when client turns on shaders -	void onVertexShaderEnable();  	// callback for when client turns on impostors  	void onAvatarImpostorsEnable(); +		// callback for when client turns on shaders +	void onVertexShaderEnable();  	// callback for commit in the "Single click on land" and "Double click on land" comboboxes.  	void onClickActionChange(); @@ -128,7 +128,7 @@ protected:  	void updateClickActionSettings();  	// updates click/double-click action controls depending on values from settings.xml  	void updateClickActionControls(); -	 +  	// This function squirrels away the current values of the controls so that  	// cancel() can restore them.	  	void saveSettings(); @@ -155,15 +155,11 @@ public:  	void enableHistory();  	void setPersonalInfo(const std::string& visibility, bool im_via_email);  	void refreshEnabledState(); -	void disableUnavailableSettings();  	void onCommitWindowedMode();  	void refresh();	// Refresh enable/disable  	// if the quality radio buttons are changed  	void onChangeQuality(const LLSD& data); -	void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box); -	void updateImpostorsText(LLSliderCtrl* ctrl, LLTextBox* text_box); -	void updateMaximumArcText(LLSliderCtrl* ctrl, LLTextBox* text_box);  	void refreshUI();  	void onCommitParcelMediaAutoPlayEnable(); @@ -177,6 +173,7 @@ public:  	void onClickPermsDefault();  	void onClickAutoReplace();  	void onClickSpellChecker(); +	void onClickAdvanced();  	void applyUIColor(LLUICtrl* ctrl, const LLSD& param);  	void getUIColor(LLUICtrl* ctrl, const LLSD& param);  	void onLogChatHistorySaved();	 @@ -269,6 +266,24 @@ private:  	void onPresetsListChange();  }; +class LLFloaterPreferenceGraphicsAdvanced : public LLFloater +{ +public:  +	LLFloaterPreferenceGraphicsAdvanced(const LLSD& key); +	~LLFloaterPreferenceGraphicsAdvanced(); + +	void disableUnavailableSettings(); +	void refreshEnabledGraphics(); +	void refreshEnabledState(); +	void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box); +	void updateImpostorsText(LLSliderCtrl* ctrl, LLTextBox* text_box); +	void updateMaximumArcText(LLSliderCtrl* ctrl, LLTextBox* text_box); +	void draw(); +	void refresh(); +	// callback for when client turns on shaders +	void onVertexShaderEnable(); +}; +  class LLFloaterPreferenceProxy : public LLFloater  {  public:  diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index 5ab7551849..5143d2c2ff 100755 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -274,6 +274,7 @@ void LLViewerFloaterReg::registerFloaters()  	LLFloaterReg::add("perms_default", "floater_perms_default.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPermsDefault>);  	LLFloaterReg::add("places", "floater_places.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSidePanelContainer>);  	LLFloaterReg::add("preferences", "floater_preferences.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPreference>); +	LLFloaterReg::add("prefs_graphics_advanced", "floater_preferences_graphics_advanced.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPreferenceGraphicsAdvanced>);  	LLFloaterReg::add("prefs_proxy", "floater_preferences_proxy.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPreferenceProxy>);  	LLFloaterReg::add("prefs_spellchecker_import", "floater_spellcheck_import.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSpellCheckerImport>);  	LLFloaterReg::add("prefs_translation", "floater_translation_settings.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterTranslationSettings>); diff --git a/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml new file mode 100644 index 0000000000..981a30b436 --- /dev/null +++ b/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml @@ -0,0 +1,862 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<floater +  height="680" +  layout="topleft" +  name="prefs_graphics_advanced" +  help_topic="Preferences_Graphics_Advanced" +  single_instance="true" +  save_rect="true" +  title="ADVANCED GRAPHICS PREFERENCES" +  width="450"> + +<!-- This block shows Advanced Settings --> + +  <button +    follows="top|left" +    height="23" +    label="Reset all to recommended settings" +    layout="topleft" +    left="10" +    name="Defaults" +    top="5" +    width="250"> +    <button.commit_callback +      function="Pref.HardwareDefaults" /> +  </button> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="GeneralText" +    top_delta="35" +    left="5" +    width="128"> +     General +  </text> + +  <slider +    control_name="RenderFarClip" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="8" +    initial_value="160" +    label="Draw distance:" +    label_width="185" +    layout="topleft" +    left="30" +    min_val="64" +    max_val="512" +    name="DrawDistance" +    top_delta="16" +    width="330" /> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="DrawDistanceMeterText2" +    top_delta="0" +    left_delta="330" +    width="102"> +      m +  </text>  + +  <slider +    control_name="RenderMaxPartCount" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="256" +    initial_value="4096" +    label="Max. particle count:" +    label_width="185" +    layout="topleft" +    left="30" +    max_val="8192" +    name="MaxParticleCount" +    top_delta="16" +    width="336" /> + +  <slider +    control_name="RenderGlowResolutionPow" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="1" +    initial_value="8" +    label="Post process quality:" +    label_width="185" +    layout="topleft" +    left="30" +    min_val="8" +    max_val="9" +    name="RenderPostProcess" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="PostProcessText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="PostProcessText" +    top_delta="0" +    left_delta="304" +    width="128"> +       Low +  </text> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="AvatarText" +    top_delta="20" +    left="5" +    width="128"> +     Avatar +  </text> + +  <slider +    control_name="MaximumARC" +    follows="left|top" +    height="16" +    initial_value="101" +    increment="1" +    label="Maximum ARC:" +    label_width="185" +    layout="topleft" +    left="30" +    min_val="1" +    max_val="101" +    name="MaximumARC" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="MaximumARCText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    top_delta="0" +    left_delta="304" +    text_readonly_color="LabelDisabledColor" +    name="MaximumARCText" +    width="128"> +       0 +  </text> + +  <slider +    control_name="RenderAvatarMaxVisible" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="1" +    initial_value="12" +    label="Max. # of non-impostors:" +    label_width="185" +    layout="topleft" +    left="30" +    min_val="1" +    max_val="66" +    name="MaxNumberAvatarDrawn" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="ImpostorsText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    top_delta="0" +    left_delta="304" +    text_readonly_color="LabelDisabledColor" +    name="ImpostorsText" +    width="128"> +       0 +  </text> + +  <slider +    control_name="RenderAvatarLODFactor" +    follows="left|top" +    height="16" +    increment="0.125" +    initial_value="160" +    label="Detail:" +    label_width="185" +    layout="topleft" +    left="30" +    name="AvatarMeshDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="AvatarMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="AvatarMeshDetailText" +    top_delta="0" +    left_delta="304" +    width="128"> +     Low +  </text> + +  <slider +    control_name="RenderAvatarPhysicsLODFactor" +    follows="left|top" +    height="16" +    initial_value="100" +    increment=".05" +    label="Physics:" +    label_width="185" +    layout="topleft" +    left="30" +    name="AvatarPhysicsDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="AvatarPhysicsDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    top_delta="0" +    left_delta="304" +    name="AvatarPhysicsDetailText" +    width="128"> +       Low +  </text> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="ShadersText" +    top_delta="20" +    left="5" +    width="128"> +     Shaders +  </text> + +  <check_box +    control_name="RenderTransparentWater" +    height="16" +    initial_value="true" +    label="Transparent Water" +    layout="topleft" +    left="30" +    name="TransparentWater" +    top_delta="16" +    width="300" /> + +  <check_box +    control_name="RenderObjectBump" +    height="16" +    initial_value="true" +    label="Bump mapping and shiny" +    layout="topleft" +    left="30" +    name="BumpShiny" +    top_delta="16" +    width="300"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <check_box +    control_name="RenderLocalLights" +    height="16" +    initial_value="true" +    label="Local Lights" +    layout="topleft" +    left="30" +    name="LocalLights" +    top_delta="16" +    width="300" /> + +  <check_box +    control_name="VertexShaderEnable" +    height="16" +    initial_value="true" +    label="Basic shaders" +    layout="topleft" +    left="30" +    name="BasicShaders" +    tool_tip="Disabling this option may prevent some graphics card drivers from crashing" +    top_delta="16" +    width="300"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <slider +    control_name="RenderTerrainDetail" +    follows="left|top" +    height="16" +    label="Terrain Detail:" +    label_width="165" +    layout="topleft" +    left="50" +    show_text="false" +    initial_value="0" +    increment="1" +    min_val="0" +    max_val="1" +    name="TerrainDetail" +    top_delta="16" +    width="280" > +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="TerrainDetail" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    top_delta="0" +    left_delta="284" +    name="TerrainDetailText" +    text_readonly_color="LabelDisabledColor" +    width="128"> +       Low +  </text> + +  <check_box +    control_name="RenderAvatarVP" +    height="16" +    initial_value="true" +    label="Avatar Hardware skinning" +    layout="topleft" +    left="50" +    name="AvatarVertexProgram" +    top_delta="16" +    width="280"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <check_box +    control_name="RenderAvatarCloth" +    height="16" +    initial_value="true" +    label="Avatar cloth" +    layout="topleft" +    left="50" +    name="AvatarCloth" +    top_delta="16" +    width="280" /> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="ReflectionsText" +    text_readonly_color="LabelDisabledColor" +    top_delta="16" +    left="50" +    width="128"> +       Water Reflections: +  </text> +  <combo_box +    control_name="RenderReflectionDetail" +    height="18" +    layout="topleft" +    left_delta="170" +    top_delta="0" +    name="Reflections" +    width="150"> +      <combo_box.item +        label="Minimal" +        name="0" +        value="0"/> +      <combo_box.item +        label="Terrain and trees" +        name="1" +        value="1"/> +      <combo_box.item +        label="All static objects" +        name="2" +        value="2"/> +      <combo_box.item +        label="All avatars and objects" +        name="3" +        value="3"/> +      <combo_box.item +        label="Everything" +        name="4" +        value="4"/> +  </combo_box> + +  <check_box +    control_name="WindLightUseAtmosShaders" +    height="16" +    initial_value="true" +    label="Atmospheric shaders" +    layout="topleft" +    left="50" +    name="WindLightUseAtmosShaders" +    top_delta="16" +    width="280"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <slider +    control_name="WLSkyDetail" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="8" +    initial_value="160" +    label="Sky:" +    label_width="145" +    layout="topleft" +    left="70" +    min_val="16" +    max_val="128" +    name="SkyMeshDetail" +    show_text="false" +    top_delta="16" +    width="260"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="SkyMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    left_delta="264" +    name="SkyMeshDetailText" +    text_readonly_color="LabelDisabledColor" +    top_delta="0" +    width="128"> +       Low +  </text> + +  <check_box +    control_name="RenderDeferred" +    height="16" +    initial_value="true" +    label="Advanced Lighting Model" +    layout="topleft" +    left="70" +    name="UseLightShaders" +    top_delta="16" +    width="260"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <check_box +    control_name="RenderDeferredSSAO" +    height="16" +    initial_value="true" +    label="Ambient Occlusion" +    layout="topleft" +    left="90" +    name="UseSSAO" +    top_delta="16" +    width="240"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <check_box +    control_name="RenderDepthOfField" +    height="16" +    initial_value="true" +    label="Depth of Field" +    layout="topleft" +    left="90" +    name="UseDoF" +    top_delta="16" +    width="240"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    left="90" +    name="RenderShadowDetailText" +    text_readonly_color="LabelDisabledColor" +    top_delta="16" +    width="128"> +      Shadows: +  </text> +  <combo_box +   control_name="RenderShadowDetail" +   height="18" +   layout="topleft" +   left_delta="130" +   top_delta="0"  +   name="ShadowDetail" +   width="150"> +     <combo_box.item +       label="None" +       name="0" +       value="0"/> +     <combo_box.item +       label="Sun/Moon" +       name="1" +       value="1"/> +     <combo_box.item +       label="Sun/Moon + Projectors" +       name="2" +       value="2"/> +  </combo_box> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="AvatarText" +    top_delta="20" +    left="5" +    width="128"> +     Mesh +  </text> + +  <slider +    control_name="RenderTerrainLODFactor" +    follows="left|top" +    height="16" +    increment="0.125" +    initial_value="160" +    label="Terrain Mesh Detail:" +    label_width="185" +    layout="topleft" +    left="30" +    min_val="1" +    max_val="2" +    name="TerrainMeshDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="TerrainMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="TerrainMeshDetailText" +    text_readonly_color="LabelDisabledColor" +    top_delta="0" +    left_delta="304" +    width="128"> +       Low +  </text> + +  <slider +    control_name="RenderTreeLODFactor" +    follows="left|top" +    height="16" +    increment="0.125" +    initial_value="160" +    label="Trees:" +    label_width="185" +    layout="topleft" +    left="30" +    name="TreeMeshDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="TreeMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="TreeMeshDetailText" +    top_delta="0" +    left_delta="304" +    width="128"> +       Low +  </text> + +  <slider +    control_name="RenderVolumeLODFactor" +    follows="left|top" +    height="16" +    increment="0.125" +    initial_value="160" +    label="Objects:" +    label_width="185" +    layout="topleft" +    left="30" +    max_val="2" +    name="ObjectMeshDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +      function="Pref.UpdateSliderText" +      parameter="ObjectMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="ObjectMeshDetailText" +    top_delta="0" +    left_delta="304" +    width="128"> +       Low +  </text> + +  <slider +    control_name="RenderFlexTimeFactor" +    follows="left|top" +    height="16" +    initial_value="160" +    label="Flexiprims:" +    label_width="185" +    layout="topleft" +    left="30" +    name="FlexibleMeshDetail" +    show_text="false" +    top_delta="16" +    width="300"> +    <slider.commit_callback +   function="Pref.UpdateSliderText" +      parameter="FlexibleMeshDetailText" /> +  </slider> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="FlexibleMeshDetailText" +    top_delta="0" +    left_delta="304" +    width="128"> +       Low +  </text> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    name="ShadersText" +    top_delta="20" +    left="5" +    width="128"> +     Hardware +  </text> + +  <slider +    control_name="TextureMemory" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="16" +    initial_value="32" +    label="Texture Memory (MB):" +    label_width="185" +    layout="topleft" +    left="30" +    max_val="4096" +    name="GraphicsCardTextureMemory" +    tool_tip="Amount of memory to allocate for textures. Defaults to video card memory. Reducing this may improve performance but may also make textures blurry." +    top_delta="16" +    width="335" /> + +  <slider +    control_name="RenderFogRatio" +    follows="left|top" +    height="16" +    initial_value="4" +    decimal_digits="1" +    label="Fog Distance Ratio:" +    label_width="185" +    layout="topleft" +    left="30" +    name="fog" +    min_val="0.5" +    max_val="10" +    increment="0.1" +    top_delta="16" +    width="332" /> + +  <slider +    control_name="RenderGamma" +    follows="left|top" +    height="16" +    initial_value="1" +    decimal_digits="2" +    label="Gamma:" +    label_width="185" +    layout="topleft" +    left="30" +    name="gamma" +    min_val="0" +    max_val="2" +    increment="0.01" +    top_delta="16" +    width="332" /> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    left="30" +    name="(brightness, lower is brighter)" +    top_delta="16" +    width="230"> +      (0 = default brightness, lower = brighter) +  </text> + +  <check_box +    control_name="RenderAnisotropic" +    height="16" +    label="Anisotropic Filtering (slower when enabled)" +    layout="topleft" +    left="30" +    name="ani" +    top_delta="16" +    width="256" /> + +  <check_box +    control_name="RenderVBOEnable" +    height="16" +    initial_value="true" +    label="Enable OpenGL Vertex Buffer Objects" +    layout="topleft" +    left="30" +    top_delta="16" +    name="vbo" +    tool_tip="Enabling this on modern hardware gives a performance gain.  However, older hardware often has poor implementations of VBOs and you may get crashes when this is enabled." +    width="315" /> + +  <check_box +    control_name="RenderCompressTextures" +    height="16" +    initial_value="true" +    label="Enable Texture Compression (requires restart)" +    layout="topleft" +    left="30" +    top_delta="16" +    name="texture compression" +    tool_tip="Compresses textures in video memory, allowing for higher resolution textures to be loaded at the cost of some color quality." +    width="315" /> + +  <text +    type="string" +    length="1" +    follows="left|top" +    height="20" +    layout="topleft" +    left="30" +    name="antialiasing label" +    top_delta="20" +    width="100"> +      Antialiasing: +  </text> +  <combo_box +    control_name="RenderFSAASamples" +    height="20" +    initial_value="false" +    label="Antialiasing" +    layout="topleft" +    left_pad="40" +    name="fsaa" +    top_delta="0" +    width="90"> +    <combo_box.item +      label="Disabled" +      name="FSAADisabled" +      value="0" /> +    <combo_box.item +      label="2x" +      name="2x" +      value="2" /> +    <combo_box.item +     label="4x" +     name="4x" +     value="4" /> +    <combo_box.item +     label="8x" +     name="8x" +     value="8" /> +    <combo_box.item +     label="16x" +     name="16x" +     value="16" /> +  </combo_box> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="16" +    layout="topleft" +    left_pad="10" +    name="antialiasing restart" +    top_delta="0" +    width="190"> +     (requires viewer restart) +  </text> +<!-- End of Advanced Settings block --> + +</floater> diff --git a/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml index 756c765bbd..5d4bfdd17f 100755 --- a/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml @@ -10,7 +10,6 @@   top="1"   width="517"> -<!-- This block is always displayed -->    <text      follows="top|left|right"      height="16" @@ -229,1002 +228,105 @@        function="Pref.QualityPerformance"/>    </slider> -<!--End of block that is always displayed --> - -  <tab_container -    follows="left|top" -    layout="topleft" -    height="385" -    halign="center" -    left="0" -    name="PreferencesGraphicsTabs" -    tab_max_width="300" -    tab_min_width="40" -    tab_position="top" -    tab_height="25" -    top="85" -    width="517"> -  <!-- This block shows Basic Settings --> -    <panel -      border="false" -      follows="all" -      label="BASIC" -      layout="topleft" -      mouse_opaque="false" -      name="Basic" -      top="10" -      width="517"> - -      <button -        follows="top|left" -        height="23" -        label="Reset all to recommended settings" -        layout="topleft" -        left="5" -        name="Defaults" -        top_delta="5" -        width="250"> -        <button.commit_callback -          function="Pref.HardwareDefaults" /> -      </button> -      <slider -        control_name="RenderFarClip" -        decimal_digits="0" -        follows="left|top" -        height="16" -        increment="8" -        initial_value="160" -        label="Draw distance:" -        label_width="90" -        layout="topleft" -        left="30" -        min_val="64" -        max_val="512" -        name="DrawDistance" -        top_delta="40" -        width="330" /> -      <text -        type="string" -        length="1" -        follows="left|top" -        height="12" -        layout="topleft" -        left_delta="330" -        name="DrawDistanceMeterText2" -        top_delta="0" -        width="128"> -         m -      </text> +  <button +    follows="top|left" +    height="23" +    label="Reset all to recommended settings" +    layout="topleft" +    left="5" +    name="Defaults" +    top_delta="30" +    width="250"> +    <button.commit_callback +      function="Pref.HardwareDefaults" /> +  </button> -      <check_box -        control_name="WindLightUseAtmosShaders" -        height="16" -        initial_value="true" -        label="Atmospheric shaders" -        layout="topleft" -        left="30" -        name="WindLightUseAtmosShaders" -        top_delta="20" -        width="280"> -        <check_box.commit_callback -          function="Pref.VertexShaderEnable" /> -      </check_box> +  <slider +    control_name="RenderFarClip" +    decimal_digits="0" +    follows="left|top" +    height="16" +    increment="8" +    initial_value="160" +    label="Draw distance:" +    label_width="90" +    layout="topleft" +    left="30" +    min_val="64" +    max_val="512" +    name="DrawDistance" +    top_delta="40" +    width="330" /> +  <text +    type="string" +    length="1" +    follows="left|top" +    height="12" +    layout="topleft" +    left_delta="330" +    name="DrawDistanceMeterText2" +    top_delta="0" +    width="128"> +     m +  </text> -      <check_box -        control_name="RenderDeferred" -        height="16" -        initial_value="true" -        label="Advanced Lighting Model" -        layout="topleft" -        left="50" -        name="UseLightShaders" -        top_delta="20" -        width="256"> -        <check_box.commit_callback -          function="Pref.VertexShaderEnable" /> -      </check_box> +  <check_box +    control_name="WindLightUseAtmosShaders" +    height="16" +    initial_value="true" +    label="Atmospheric shaders" +    layout="topleft" +    left="30" +    name="WindLightUseAtmosShaders" +    top_delta="20" +    width="280"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> + +  <check_box +    control_name="RenderDeferred" +    height="16" +    initial_value="true" +    label="Advanced Lighting Model" +    layout="topleft" +    left="50" +    name="UseLightShaders" +    top_delta="20" +    width="256"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box> -    </panel>  <!-- End of Basic Settings block --> -<!-- This block shows Advanced Settings --> -    <panel -      border="false" -      follows="all" -      label="ADVANCED" -      layout="topleft" -      mouse_opaque="false" -      name="Advanced" -      top_delta="10" -      width="517"> - -      <scroll_container -        follows="top|left" -        height="255" -        label="CustomGraphics" -        layout="topleft" -        left="5" -        name="CustomGraphics Scroll" -        reserve_scroll_corner="true" -        top_delta="20" -        width="500"> - -        <panel -          border="false" -          follows="top|left" -          height="700" -          label="CustomGraphics" -          layout="topleft" -          left="5" -          name="Advanced Panel" -          top_delta="0" -          width="485"> - -          <button -            follows="top|left" -            height="23" -            label="Reset all to recommended settings" -            layout="topleft" -            left="0" -            name="Defaults" -            top="0" -            width="250"> -            <button.commit_callback -              function="Pref.HardwareDefaults" /> -          </button> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="GeneralText" -            top_delta="25" -            left="5" -            width="128"> -             General -          </text> - -          <slider -            control_name="RenderFarClip" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="8" -            initial_value="160" -            label="Draw distance:" -            label_width="185" -            layout="topleft" -            left="30" -            min_val="64" -            max_val="512" -            name="DrawDistance" -            top_delta="16" -            width="330" /> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="DrawDistanceMeterText2" -            top_delta="0" -            left_delta="330" -            width="102"> -              m -          </text>  - -          <slider -            control_name="RenderMaxPartCount" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="256" -            initial_value="4096" -            label="Max. particle count:" -            label_width="185" -            layout="topleft" -            left="30" -            max_val="8192" -            name="MaxParticleCount" -            top_delta="16" -            width="336" /> - -          <slider -            control_name="RenderGlowResolutionPow" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="1" -            initial_value="8" -            label="Post process quality:" -            label_width="185" -            layout="topleft" -            left="30" -            min_val="8" -            max_val="9" -            name="RenderPostProcess" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="PostProcessText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="PostProcessText" -            top_delta="0" -            left_delta="304" -            width="128"> -               Low -          </text> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="AvatarText" -            top_delta="20" -            left="5" -            width="128"> -             Avatar -          </text> - -          <slider -            control_name="MaximumARC" -            follows="left|top" -            height="16" -            initial_value="101" -            increment="1" -            label="Maximum ARC:" -            label_width="185" -            layout="topleft" -            left="30" -            min_val="1" -            max_val="101" -            name="MaximumARC" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="MaximumARCText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            top_delta="0" -            left_delta="304" -            text_readonly_color="LabelDisabledColor" -            name="MaximumARCText" -            width="128"> -               0 -          </text> - -          <slider -            control_name="RenderAvatarMaxVisible" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="1" -            initial_value="12" -            label="Max. # of non-impostors:" -            label_width="185" -            layout="topleft" -            left="30" -            min_val="1" -            max_val="66" -            name="MaxNumberAvatarDrawn" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="ImpostorsText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            top_delta="0" -            left_delta="304" -            text_readonly_color="LabelDisabledColor" -            name="ImpostorsText" -            width="128"> -               0 -          </text> - -          <slider -            control_name="RenderAvatarLODFactor" -            follows="left|top" -            height="16" -            increment="0.125" -            initial_value="160" -            label="Detail:" -            label_width="185" -            layout="topleft" -            left="30" -            name="AvatarMeshDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="AvatarMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="AvatarMeshDetailText" -            top_delta="0" -            left_delta="304" -            width="128"> -             Low -          </text> - -          <slider -            control_name="RenderAvatarPhysicsLODFactor" -            follows="left|top" -            height="16" -            initial_value="100" -            increment=".05" -            label="Physics:" -            label_width="185" -            layout="topleft" -            left="30" -            name="AvatarPhysicsDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="AvatarPhysicsDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            top_delta="0" -            left_delta="304" -            name="AvatarPhysicsDetailText" -            width="128"> -               Low -          </text> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="ShadersText" -            top_delta="20" -            left="5" -            width="128"> -             Shaders -          </text> - -          <check_box -            control_name="RenderTransparentWater" -            height="16" -            initial_value="true" -            label="Transparent Water" -            layout="topleft" -            left="30" -            name="TransparentWater" -            top_delta="16" -            width="300" /> - -          <check_box -            control_name="RenderObjectBump" -            height="16" -            initial_value="true" -            label="Bump mapping and shiny" -            layout="topleft" -            left="30" -            name="BumpShiny" -            top_delta="16" -            width="300"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <check_box -            control_name="RenderLocalLights" -            height="16" -            initial_value="true" -            label="Local Lights" -            layout="topleft" -            left="30" -            name="LocalLights" -            top_delta="16" -            width="300" /> - -          <check_box -            control_name="VertexShaderEnable" -            height="16" -            initial_value="true" -            label="Basic shaders" -            layout="topleft" -            left="30" -            name="BasicShaders" -            tool_tip="Disabling this option may prevent some graphics card drivers from crashing" -            top_delta="16" -            width="300"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <slider -            control_name="RenderTerrainDetail" -            follows="left|top" -            height="16" -            label="Terrain Detail:" -            label_width="165" -            layout="topleft" -            left="50" -            show_text="false" -            initial_value="0" -            increment="1" -            min_val="0" -            max_val="1" -            name="TerrainDetail" -            top_delta="16" -            width="280" > -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="TerrainDetail" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            top_delta="0" -            left_delta="284" -            name="TerrainDetailText" -            text_readonly_color="LabelDisabledColor" -            width="128"> -               Low -          </text> - -          <check_box -            control_name="RenderAvatarVP" -            height="16" -            initial_value="true" -            label="Avatar Hardware skinning" -            layout="topleft" -            left="50" -            name="AvatarVertexProgram" -            top_delta="16" -            width="280"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <check_box -            control_name="RenderAvatarCloth" -            height="16" -            initial_value="true" -            label="Avatar cloth" -            layout="topleft" -            left="50" -            name="AvatarCloth" -            top_delta="16" -            width="280" /> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="ReflectionsText" -            text_readonly_color="LabelDisabledColor" -            top_delta="16" -            left="50" -            width="128"> -               Water Reflections: -          </text> -          <combo_box -            control_name="RenderReflectionDetail" -            height="18" -            layout="topleft" -            left_delta="170" -            top_delta="0" -            name="Reflections" -            width="150"> -              <combo_box.item -                label="Minimal" -                name="0" -                value="0"/> -              <combo_box.item -                label="Terrain and trees" -                name="1" -                value="1"/> -              <combo_box.item -                label="All static objects" -                name="2" -                value="2"/> -              <combo_box.item -                label="All avatars and objects" -                name="3" -                value="3"/> -              <combo_box.item -                label="Everything" -                name="4" -                value="4"/> -          </combo_box> - -          <check_box -            control_name="WindLightUseAtmosShaders" -            height="16" -            initial_value="true" -            label="Atmospheric shaders" -            layout="topleft" -            left="50" -            name="WindLightUseAtmosShaders2" -            top_delta="16" -            width="280"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <slider -            control_name="WLSkyDetail" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="8" -            initial_value="160" -            label="Sky:" -            label_width="145" -            layout="topleft" -            left="70" -            min_val="16" -            max_val="128" -            name="SkyMeshDetail" -            show_text="false" -            top_delta="16" -            width="260"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="SkyMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            left_delta="264" -            name="SkyMeshDetailText" -            text_readonly_color="LabelDisabledColor" -            top_delta="0" -            width="128"> -               Low -          </text> - -          <check_box -            control_name="RenderDeferred" -            height="16" -            initial_value="true" -            label="Advanced Lighting Model" -            layout="topleft" -            left="70" -            name="UseLightShaders2" -            top_delta="16" -            width="260"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <check_box -            control_name="RenderDeferredSSAO" -            height="16" -            initial_value="true" -            label="Ambient Occlusion" -            layout="topleft" -            left="90" -            name="UseSSAO" -            top_delta="16" -            width="240"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <check_box -            control_name="RenderDepthOfField" -            height="16" -            initial_value="true" -            label="Depth of Field" -            layout="topleft" -            left="90" -            name="UseDoF" -            top_delta="16" -            width="240"> -            <check_box.commit_callback -              function="Pref.VertexShaderEnable" /> -          </check_box> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            left="90" -            name="RenderShadowDetailText" -            text_readonly_color="LabelDisabledColor" -            top_delta="16" -            width="128"> -              Shadows: -          </text> -          <combo_box -           control_name="RenderShadowDetail" -           height="18" -           layout="topleft" -           left_delta="130" -           top_delta="0"  -           name="ShadowDetail" -           width="150"> -             <combo_box.item -               label="None" -               name="0" -               value="0"/> -             <combo_box.item -               label="Sun/Moon" -               name="1" -               value="1"/> -             <combo_box.item -               label="Sun/Moon + Projectors" -               name="2" -               value="2"/> -          </combo_box> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="AvatarText" -            top_delta="20" -            left="5" -            width="128"> -             Mesh -          </text> - -          <slider -            control_name="RenderTerrainLODFactor" -            follows="left|top" -            height="16" -            increment="0.125" -            initial_value="160" -            label="Terrain Mesh Detail:" -            label_width="185" -            layout="topleft" -            left="30" -            min_val="1" -            max_val="2" -            name="TerrainMeshDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="TerrainMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="TerrainMeshDetailText" -            text_readonly_color="LabelDisabledColor" -            top_delta="0" -            left_delta="304" -            width="128"> -               Low -          </text> - -          <slider -            control_name="RenderTreeLODFactor" -            follows="left|top" -            height="16" -            increment="0.125" -            initial_value="160" -            label="Trees:" -            label_width="185" -            layout="topleft" -            left="30" -            name="TreeMeshDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="TreeMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="TreeMeshDetailText" -            top_delta="0" -            left_delta="304" -            width="128"> -               Low -          </text> - -          <slider -            control_name="RenderVolumeLODFactor" -            follows="left|top" -            height="16" -            increment="0.125" -            initial_value="160" -            label="Objects:" -            label_width="185" -            layout="topleft" -            left="30" -            max_val="2" -            name="ObjectMeshDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -              function="Pref.UpdateSliderText" -              parameter="ObjectMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="ObjectMeshDetailText" -            top_delta="0" -            left_delta="304" -            width="128"> -               Low -          </text> - -          <slider -            control_name="RenderFlexTimeFactor" -            follows="left|top" -            height="16" -            initial_value="160" -            label="Flexiprims:" -            label_width="185" -            layout="topleft" -            left="30" -            name="FlexibleMeshDetail" -            show_text="false" -            top_delta="16" -            width="300"> -            <slider.commit_callback -	          function="Pref.UpdateSliderText" -              parameter="FlexibleMeshDetailText" /> -          </slider> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="FlexibleMeshDetailText" -            top_delta="0" -            left_delta="304" -            width="128"> -               Low -          </text> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            name="ShadersText" -            top_delta="20" -            left="5" -            width="128"> -             Hardware -          </text> - -          <slider -            control_name="TextureMemory" -            decimal_digits="0" -            follows="left|top" -            height="16" -            increment="16" -            initial_value="32" -            label="Texture Memory (MB):" -            label_width="185" -            layout="topleft" -            left="30" -            max_val="4096" -            name="GraphicsCardTextureMemory" -            tool_tip="Amount of memory to allocate for textures. Defaults to video card memory. Reducing this may improve performance but may also make textures blurry." -            top_delta="16" -            width="335" /> - -          <slider -            control_name="RenderFogRatio" -            follows="left|top" -            height="16" -            initial_value="4" -            decimal_digits="1" -            label="Fog Distance Ratio:" -            label_width="185" -            layout="topleft" -            left="30" -            name="fog" -            min_val="0.5" -            max_val="10" -            increment="0.1" -            top_delta="16" -            width="332" /> - -          <slider -            control_name="RenderGamma" -            follows="left|top" -            height="16" -            initial_value="1" -            decimal_digits="2" -            label="Gamma:" -            label_width="185" -            layout="topleft" -            left="30" -            name="gamma" -            min_val="0" -            max_val="2" -            increment="0.01" -            top_delta="16" -            width="332" /> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            left="30" -            name="(brightness, lower is brighter)" -            top_delta="16" -            width="230"> -              (0 = default brightness, lower = brighter) -          </text> - -          <check_box -            control_name="RenderAnisotropic" -            height="16" -            label="Anisotropic Filtering (slower when enabled)" -            layout="topleft" -            left="30" -            name="ani" -            top_delta="16" -            width="256" /> - -          <check_box -            control_name="RenderVBOEnable" -            height="16" -            initial_value="true" -            label="Enable OpenGL Vertex Buffer Objects" -            layout="topleft" -            left="30" -            top_delta="16" -            name="vbo" -            tool_tip="Enabling this on modern hardware gives a performance gain.  However, older hardware often has poor implementations of VBOs and you may get crashes when this is enabled." -            width="315" /> - -          <check_box -            control_name="RenderCompressTextures" -            height="16" -            initial_value="true" -            label="Enable Texture Compression (requires restart)" -            layout="topleft" -            left="30" -            top_delta="16" -            name="texture compression" -            tool_tip="Compresses textures in video memory, allowing for higher resolution textures to be loaded at the cost of some color quality." -            width="315" /> - -          <text -            type="string" -            length="1" -            follows="left|top" -            height="20" -            layout="topleft" -            left="30" -            name="antialiasing label" -            top_delta="20" -            width="100"> -              Antialiasing: -          </text> -          <combo_box -            control_name="RenderFSAASamples" -            height="20" -            initial_value="false" -            label="Antialiasing" -            layout="topleft" -            left_pad="40" -            name="fsaa" -            top_delta="0" -            width="90"> -            <combo_box.item -              label="Disabled" -              name="FSAADisabled" -              value="0" /> -            <combo_box.item -              label="2x" -              name="2x" -              value="2" /> -            <combo_box.item -             label="4x" -             name="4x" -             value="4" /> -            <combo_box.item -             label="8x" -             name="8x" -             value="8" /> -            <combo_box.item -             label="16x" -             name="16x" -             value="16" /> -          </combo_box> -          <text -            type="string" -            length="1" -            follows="left|top" -            height="16" -            layout="topleft" -            left_pad="10" -            name="antialiasing restart" -            top_delta="0" -            width="190"> -             (requires viewer restart) -          </text> -        </panel> -      </scroll_container> -    </panel> -<!-- End of Advanced Settings block --> +  <button +    follows="left|bottom" +    height="23" +    label="Advanced Settings..." +    layout="topleft" +    left="10" +    name="AdvancedSettings" +    top_delta="60" +    width="200"> +    <button.commit_callback +      function="Pref.Advanced" +      parameter="advanced" /> +  </button> -    <button -      follows="left|bottom" -      height="23" -      label="Save settings as a preset..." -      layout="topleft" -      left="10" -      name="PrefSaveButton" -      top="295" -      width="250"> -      <button.commit_callback -        function="Pref.PrefSave" -        parameter="graphic" /> -    </button> -  </tab_container> +  <button +    follows="left|bottom" +    height="23" +    label="Save settings as a preset..." +    layout="topleft" +    left="10" +    name="PrefSaveButton" +    top="295" +    width="200"> +    <button.commit_callback +      function="Pref.PrefSave" +      parameter="graphic" /> +  </button>  </panel>  | 
