|
|
|
|
@ -153,7 +153,6 @@ void LLFloaterPreferenceGraphicsAdvanced::refresh()
|
|
|
|
|
updateSliderText(getChild<LLSliderCtrl>("TerrainMeshDetail", true), getChild<LLTextBox>("TerrainMeshDetailText", true));
|
|
|
|
|
updateSliderText(getChild<LLSliderCtrl>("RenderPostProcess", true), getChild<LLTextBox>("PostProcessText", true));
|
|
|
|
|
updateSliderText(getChild<LLSliderCtrl>("SkyMeshDetail", true), getChild<LLTextBox>("SkyMeshDetailText", true));
|
|
|
|
|
updateSliderText(getChild<LLSliderCtrl>("TerrainDetail", true), getChild<LLTextBox>("TerrainDetailText", true));
|
|
|
|
|
LLAvatarComplexityControls::setIndirectControls();
|
|
|
|
|
setMaxNonImpostorsText(
|
|
|
|
|
gSavedSettings.getU32("RenderAvatarMaxNonImpostors"),
|
|
|
|
|
@ -268,10 +267,6 @@ void LLFloaterPreferenceGraphicsAdvanced::setMaxNonImpostorsText(U32 value, LLTe
|
|
|
|
|
|
|
|
|
|
void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()
|
|
|
|
|
{
|
|
|
|
|
LLComboBox* ctrl_reflections = getChild<LLComboBox>("Reflections");
|
|
|
|
|
LLTextBox* reflections_text = getChild<LLTextBox>("ReflectionsText");
|
|
|
|
|
LLCheckBoxCtrl* ctrl_wind_light = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders");
|
|
|
|
|
LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders");
|
|
|
|
|
LLComboBox* ctrl_shadows = getChild<LLComboBox>("ShadowDetail");
|
|
|
|
|
LLTextBox* shadows_text = getChild<LLTextBox>("RenderShadowDetailText");
|
|
|
|
|
LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO");
|
|
|
|
|
@ -282,9 +277,6 @@ void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()
|
|
|
|
|
// disabled windlight
|
|
|
|
|
if (!LLFeatureManager::getInstance()->isFeatureAvailable("WindLightUseAtmosShaders"))
|
|
|
|
|
{
|
|
|
|
|
ctrl_wind_light->setEnabled(false);
|
|
|
|
|
ctrl_wind_light->setValue(false);
|
|
|
|
|
|
|
|
|
|
sky->setEnabled(false);
|
|
|
|
|
sky_text->setEnabled(false);
|
|
|
|
|
|
|
|
|
|
@ -298,9 +290,6 @@ void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()
|
|
|
|
|
|
|
|
|
|
ctrl_dof->setEnabled(false);
|
|
|
|
|
ctrl_dof->setValue(false);
|
|
|
|
|
|
|
|
|
|
ctrl_deferred->setEnabled(false);
|
|
|
|
|
ctrl_deferred->setValue(false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// disabled deferred
|
|
|
|
|
@ -315,9 +304,6 @@ void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()
|
|
|
|
|
|
|
|
|
|
ctrl_dof->setEnabled(false);
|
|
|
|
|
ctrl_dof->setValue(false);
|
|
|
|
|
|
|
|
|
|
ctrl_deferred->setEnabled(false);
|
|
|
|
|
ctrl_deferred->setValue(false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// disabled deferred SSAO
|
|
|
|
|
@ -338,51 +324,13 @@ void LLFloaterPreferenceGraphicsAdvanced::disableUnavailableSettings()
|
|
|
|
|
|
|
|
|
|
void LLFloaterPreferenceGraphicsAdvanced::refreshEnabledState()
|
|
|
|
|
{
|
|
|
|
|
LLComboBox* ctrl_reflections = getChild<LLComboBox>("Reflections");
|
|
|
|
|
LLTextBox* reflections_text = getChild<LLTextBox>("ReflectionsText");
|
|
|
|
|
|
|
|
|
|
// Reflections
|
|
|
|
|
bool reflections = LLCubeMap::sUseCubeMaps;
|
|
|
|
|
ctrl_reflections->setEnabled(reflections);
|
|
|
|
|
reflections_text->setEnabled(reflections);
|
|
|
|
|
|
|
|
|
|
// Bump & Shiny
|
|
|
|
|
LLCheckBoxCtrl* bumpshiny_ctrl = getChild<LLCheckBoxCtrl>("BumpShiny");
|
|
|
|
|
bool bumpshiny = LLCubeMap::sUseCubeMaps && LLFeatureManager::getInstance()->isFeatureAvailable("RenderObjectBump");
|
|
|
|
|
bumpshiny_ctrl->setEnabled(bumpshiny);
|
|
|
|
|
|
|
|
|
|
// Vertex Shaders, Global Shader Enable
|
|
|
|
|
// SL-12594 Basic shaders are always enabled. DJH TODO clean up now-orphaned state handling code
|
|
|
|
|
LLSliderCtrl* terrain_detail = getChild<LLSliderCtrl>("TerrainDetail"); // can be linked with control var
|
|
|
|
|
LLTextBox* terrain_text = getChild<LLTextBox>("TerrainDetailText");
|
|
|
|
|
|
|
|
|
|
terrain_detail->setEnabled(false);
|
|
|
|
|
terrain_text->setEnabled(false);
|
|
|
|
|
|
|
|
|
|
// WindLight
|
|
|
|
|
//LLCheckBoxCtrl* ctrl_wind_light = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders");
|
|
|
|
|
//ctrl_wind_light->setEnabled(true);
|
|
|
|
|
LLSliderCtrl* sky = getChild<LLSliderCtrl>("SkyMeshDetail");
|
|
|
|
|
LLTextBox* sky_text = getChild<LLTextBox>("SkyMeshDetailText");
|
|
|
|
|
sky->setEnabled(true);
|
|
|
|
|
sky_text->setEnabled(true);
|
|
|
|
|
|
|
|
|
|
bool enabled = true;
|
|
|
|
|
#if 0 // deferred always on now
|
|
|
|
|
//Deferred/SSAO/Shadows
|
|
|
|
|
LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders");
|
|
|
|
|
|
|
|
|
|
enabled = LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") &&
|
|
|
|
|
bumpshiny_ctrl && bumpshiny_ctrl->get() &&
|
|
|
|
|
ctrl_wind_light->get();
|
|
|
|
|
|
|
|
|
|
ctrl_deferred->setEnabled(enabled);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
LLCheckBoxCtrl* ctrl_pbr = getChild<LLCheckBoxCtrl>("UsePBRShaders");
|
|
|
|
|
|
|
|
|
|
//PBR
|
|
|
|
|
ctrl_pbr->setEnabled(true);
|
|
|
|
|
|
|
|
|
|
LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO");
|
|
|
|
|
LLCheckBoxCtrl* ctrl_dof = getChild<LLCheckBoxCtrl>("UseDoF");
|
|
|
|
|
@ -414,11 +362,6 @@ void LLFloaterPreferenceGraphicsAdvanced::refreshEnabledState()
|
|
|
|
|
getChildView("texture compression")->setEnabled(false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// if no windlight shaders, turn off nighttime brightness, gamma, and fog distance
|
|
|
|
|
LLUICtrl* gamma_ctrl = getChild<LLUICtrl>("gamma");
|
|
|
|
|
gamma_ctrl->setEnabled(!gPipeline.canUseWindLightShaders());
|
|
|
|
|
getChildView("(brightness, lower is brighter)")->setEnabled(!gPipeline.canUseWindLightShaders());
|
|
|
|
|
getChildView("fog")->setEnabled(!gPipeline.canUseWindLightShaders());
|
|
|
|
|
getChildView("antialiasing restart")->setVisible(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred"));
|
|
|
|
|
|
|
|
|
|
// now turn off any features that are unavailable
|
|
|
|
|
|