Updated graphical options panel to work with new setting configuration.

This commit is contained in:
Shyotl
2011-05-21 00:13:38 -05:00
parent c029f00e12
commit 127dd659fa
4 changed files with 111 additions and 48 deletions

View File

@@ -230,11 +230,10 @@ BOOL LLPanelDisplay::postBuild()
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// Enable Reflections // Enable Reflections
mCtrlReflections = getChild<LLCheckBoxCtrl>("Reflections");
mCtrlReflections->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlReflections->setCallbackUserData(this);
mCtrlReflectionDetail = getChild<LLComboBox>("ReflectionDetailCombo"); mCtrlReflectionDetail = getChild<LLComboBox>("ReflectionDetailCombo");
mCtrlReflectionDetail->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlReflectionDetail->setCallbackUserData(this);
// WindLight // WindLight
mCtrlWindLight = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders"); mCtrlWindLight = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders");
mCtrlWindLight->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable); mCtrlWindLight->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
@@ -244,9 +243,12 @@ BOOL LLPanelDisplay::postBuild()
mCtrlDeferred = getChild<LLCheckBoxCtrl>("RenderDeferred"); mCtrlDeferred = getChild<LLCheckBoxCtrl>("RenderDeferred");
mCtrlDeferred->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable); mCtrlDeferred->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlDeferred->setCallbackUserData(this); mCtrlDeferred->setCallbackUserData(this);
mCtrlSunShadow = getChild<LLCheckBoxCtrl>("RenderDeferredSunShadow"); mCtrlDeferredGI = getChild<LLCheckBoxCtrl>("RenderDeferredGI");
mCtrlSunShadow->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable); mCtrlDeferredGI->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlSunShadow->setCallbackUserData(this); mCtrlDeferredGI->setCallbackUserData(this);
mCtrlShadowDetail = getChild<LLComboBox>("ShadowDetailCombo");
mCtrlShadowDetail->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlShadowDetail->setCallbackUserData(this);
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// Enable Avatar Shaders // Enable Avatar Shaders
@@ -306,6 +308,12 @@ BOOL LLPanelDisplay::postBuild()
mCtrlAvatarFactor->setCommitCallback(&LLPanelDisplay::updateSliderText); mCtrlAvatarFactor->setCommitCallback(&LLPanelDisplay::updateSliderText);
mCtrlAvatarFactor->setCallbackUserData(mAvatarFactorText); mCtrlAvatarFactor->setCallbackUserData(mAvatarFactorText);
// Avatar physics detail slider
mCtrlAvatarPhysicsFactor = getChild<LLSliderCtrl>("AvatarPhysicsDetail");
mAvatarPhysicsFactorText = getChild<LLTextBox>("AvatarPhysicsDetailText");
mCtrlAvatarPhysicsFactor->setCommitCallback(&LLPanelDisplay::updateSliderText);
mCtrlAvatarPhysicsFactor->setCallbackUserData(mAvatarPhysicsFactorText);
// Terrain detail slider // Terrain detail slider
mCtrlTerrainFactor = getChild<LLSliderCtrl>("TerrainMeshDetail"); mCtrlTerrainFactor = getChild<LLSliderCtrl>("TerrainMeshDetail");
mTerrainFactorText = getChild<LLTextBox>("TerrainMeshDetailText"); mTerrainFactorText = getChild<LLTextBox>("TerrainMeshDetailText");
@@ -397,14 +405,15 @@ void LLPanelDisplay::refresh()
mBumpShiny = gSavedSettings.getBOOL("RenderObjectBump"); mBumpShiny = gSavedSettings.getBOOL("RenderObjectBump");
mShaderEnable = gSavedSettings.getBOOL("VertexShaderEnable"); mShaderEnable = gSavedSettings.getBOOL("VertexShaderEnable");
mWindLight = gSavedSettings.getBOOL("WindLightUseAtmosShaders"); mWindLight = gSavedSettings.getBOOL("WindLightUseAtmosShaders");
mReflections = gSavedSettings.getBOOL("RenderWaterReflections");
mAvatarVP = gSavedSettings.getBOOL("RenderAvatarVP"); mAvatarVP = gSavedSettings.getBOOL("RenderAvatarVP");
mDeferred = gSavedSettings.getBOOL("RenderDeferred"); mDeferred = gSavedSettings.getBOOL("RenderDeferred");
mSunShadow = gSavedSettings.getBOOL("RenderDeferredSunShadow"); mDeferredGI = gSavedSettings.getBOOL("RenderDeferredGI");
// reflection radio // reflection radio
mReflectionDetail = gSavedSettings.getS32("RenderReflectionDetail"); mReflectionDetail = gSavedSettings.getS32("RenderReflectionDetail");
mShadowDetail = gSavedSettings.getS32("RenderShadowDetail");
// avatar settings // avatar settings
mAvatarImpostors = gSavedSettings.getBOOL("RenderUseImpostors"); mAvatarImpostors = gSavedSettings.getBOOL("RenderUseImpostors");
mAvatarCloth = gSavedSettings.getBOOL("RenderAvatarCloth"); mAvatarCloth = gSavedSettings.getBOOL("RenderAvatarCloth");
@@ -431,6 +440,7 @@ void LLPanelDisplay::refresh()
updateSliderText(mCtrlFlexFactor, mFlexFactorText); updateSliderText(mCtrlFlexFactor, mFlexFactorText);
updateSliderText(mCtrlTreeFactor, mTreeFactorText); updateSliderText(mCtrlTreeFactor, mTreeFactorText);
updateSliderText(mCtrlAvatarFactor, mAvatarFactorText); updateSliderText(mCtrlAvatarFactor, mAvatarFactorText);
updateSliderText(mCtrlAvatarPhysicsFactor, mAvatarPhysicsFactorText);
updateSliderText(mCtrlTerrainFactor, mTerrainFactorText); updateSliderText(mCtrlTerrainFactor, mTerrainFactorText);
updateSliderText(mCtrlPostProcess, mPostProcessText); updateSliderText(mCtrlPostProcess, mPostProcessText);
updateSliderText(mCtrlSkyFactor, mSkyFactorText); updateSliderText(mCtrlSkyFactor, mSkyFactorText);
@@ -468,13 +478,11 @@ void LLPanelDisplay::refreshEnabledState()
BOOL reflections = gSavedSettings.getBOOL("VertexShaderEnable") BOOL reflections = gSavedSettings.getBOOL("VertexShaderEnable")
&& gGLManager.mHasCubeMap && gGLManager.mHasCubeMap
&& LLCubeMap::sUseCubeMaps; && LLCubeMap::sUseCubeMaps;
mCtrlReflections->setEnabled(reflections); mCtrlReflectionDetail->setEnabled(reflections);
// Bump & Shiny // Bump & Shiny
bool bumpshiny = gGLManager.mHasCubeMap && LLCubeMap::sUseCubeMaps && LLFeatureManager::getInstance()->isFeatureAvailable("RenderObjectBump"); bool bumpshiny = gGLManager.mHasCubeMap && LLCubeMap::sUseCubeMaps && LLFeatureManager::getInstance()->isFeatureAvailable("RenderObjectBump");
mCtrlBumpShiny->setEnabled(bumpshiny ? TRUE : FALSE); mCtrlBumpShiny->setEnabled(bumpshiny ? TRUE : FALSE);
mCtrlReflectionDetail->setEnabled(mCtrlReflections->get() && reflections);
// Avatar Mode // Avatar Mode
S32 max_avatar_shader = LLViewerShaderMgr::instance()->mMaxAvatarShaderLevel; S32 max_avatar_shader = LLViewerShaderMgr::instance()->mMaxAvatarShaderLevel;
@@ -501,8 +509,9 @@ void LLPanelDisplay::refreshEnabledState()
mCtrlDeferred->setEnabled(can_defer); mCtrlDeferred->setEnabled(can_defer);
mCtrlSunShadow->setEnabled(can_defer && gSavedSettings.getBOOL("RenderDeferred")); mCtrlShadowDetail->setEnabled(can_defer && gSavedSettings.getBOOL("RenderDeferred"));
mCtrlAvatarCloth->setValue(gSavedSettings.getBOOL("RenderAvatarVP")); //Enabling RenderDeferred changes this setting behind this floaters back. //GI won't do anything with shadows off, but disabling it here is less than intuitive. Ignore shadow setting for now.
mCtrlDeferredGI->setEnabled(mCtrlShadowDetail->getEnabled()/* && gSavedSettings.getS32("RenderShadowDetail") > 0*/);
// Vertex Shaders // Vertex Shaders
// mCtrlShaderEnable->setEnabled(LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable")); // mCtrlShaderEnable->setEnabled(LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable"));
@@ -551,8 +560,8 @@ void LLPanelDisplay::disableUnavailableSettings()
mCtrlWindLight->setEnabled(FALSE); mCtrlWindLight->setEnabled(FALSE);
mCtrlWindLight->setValue(FALSE); mCtrlWindLight->setValue(FALSE);
mCtrlReflections->setEnabled(FALSE); mCtrlReflectionDetail->setEnabled(FALSE);
mCtrlReflections->setValue(FALSE); mCtrlReflectionDetail->setValue(FALSE);
mCtrlAvatarVP->setEnabled(FALSE); mCtrlAvatarVP->setEnabled(FALSE);
mCtrlAvatarVP->setValue(FALSE); mCtrlAvatarVP->setValue(FALSE);
@@ -562,8 +571,10 @@ void LLPanelDisplay::disableUnavailableSettings()
mCtrlDeferred->setEnabled(FALSE); mCtrlDeferred->setEnabled(FALSE);
mCtrlDeferred->setValue(FALSE); mCtrlDeferred->setValue(FALSE);
mCtrlSunShadow->setEnabled(FALSE); mCtrlDeferredGI->setEnabled(FALSE);
mCtrlSunShadow->setValue(FALSE); mCtrlDeferredGI->setValue(FALSE);
mCtrlShadowDetail->setEnabled(FALSE);
mCtrlShadowDetail->setValue(FALSE);
} }
// disabled windlight // disabled windlight
@@ -576,8 +587,8 @@ void LLPanelDisplay::disableUnavailableSettings()
// disabled reflections // disabled reflections
if(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderWaterReflections")) if(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderWaterReflections"))
{ {
mCtrlReflections->setEnabled(FALSE); mCtrlReflectionDetail->setEnabled(FALSE);
mCtrlReflections->setValue(FALSE); mCtrlReflectionDetail->setValue(FALSE);
} }
// disabled av // disabled av
@@ -606,8 +617,10 @@ void LLPanelDisplay::disableUnavailableSettings()
{ {
mCtrlDeferred->setEnabled(FALSE); mCtrlDeferred->setEnabled(FALSE);
mCtrlDeferred->setValue(FALSE); mCtrlDeferred->setValue(FALSE);
mCtrlSunShadow->setEnabled(FALSE); mCtrlDeferredGI->setEnabled(FALSE);
mCtrlSunShadow->setValue(FALSE); mCtrlDeferredGI->setValue(FALSE);
mCtrlShadowDetail->setEnabled(FALSE);
mCtrlShadowDetail->setValue(FALSE);
} }
} }
@@ -669,6 +682,7 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
mCtrlFlexFactor->setVisible(!isHidden); mCtrlFlexFactor->setVisible(!isHidden);
mCtrlTreeFactor->setVisible(!isHidden); mCtrlTreeFactor->setVisible(!isHidden);
mCtrlAvatarFactor->setVisible(!isHidden); mCtrlAvatarFactor->setVisible(!isHidden);
mCtrlAvatarPhysicsFactor->setVisible(!isHidden);
mCtrlTerrainFactor->setVisible(!isHidden); mCtrlTerrainFactor->setVisible(!isHidden);
mCtrlSkyFactor->setVisible(!isHidden); mCtrlSkyFactor->setVisible(!isHidden);
mCtrlMaxParticle->setVisible(!isHidden); mCtrlMaxParticle->setVisible(!isHidden);
@@ -678,12 +692,12 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
mFlexFactorText->setVisible(!isHidden); mFlexFactorText->setVisible(!isHidden);
mTreeFactorText->setVisible(!isHidden); mTreeFactorText->setVisible(!isHidden);
mAvatarFactorText->setVisible(!isHidden); mAvatarFactorText->setVisible(!isHidden);
mAvatarPhysicsFactorText->setVisible(!isHidden);
mTerrainFactorText->setVisible(!isHidden); mTerrainFactorText->setVisible(!isHidden);
mSkyFactorText->setVisible(!isHidden); mSkyFactorText->setVisible(!isHidden);
mPostProcessText->setVisible(!isHidden); mPostProcessText->setVisible(!isHidden);
mCtrlBumpShiny->setVisible(!isHidden); mCtrlBumpShiny->setVisible(!isHidden);
mCtrlReflections->setVisible(!isHidden);
mCtrlWindLight->setVisible(!isHidden); mCtrlWindLight->setVisible(!isHidden);
mCtrlAvatarVP->setVisible(!isHidden); mCtrlAvatarVP->setVisible(!isHidden);
mCtrlShaderEnable->setVisible(!isHidden); mCtrlShaderEnable->setVisible(!isHidden);
@@ -695,7 +709,8 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
mCtrlReflectionDetail->setVisible(!isHidden); mCtrlReflectionDetail->setVisible(!isHidden);
mCtrlDeferred->setVisible(!isHidden); mCtrlDeferred->setVisible(!isHidden);
mCtrlSunShadow->setVisible(!isHidden); mCtrlDeferredGI->setVisible(!isHidden);
mCtrlShadowDetail->setVisible(!isHidden);
// text boxes // text boxes
mShaderText->setVisible(!isHidden); mShaderText->setVisible(!isHidden);
@@ -727,12 +742,13 @@ void LLPanelDisplay::cancel()
gSavedSettings.setBOOL("RenderObjectBump", mBumpShiny); gSavedSettings.setBOOL("RenderObjectBump", mBumpShiny);
gSavedSettings.setBOOL("VertexShaderEnable", mShaderEnable); gSavedSettings.setBOOL("VertexShaderEnable", mShaderEnable);
gSavedSettings.setBOOL("WindLightUseAtmosShaders", mWindLight); gSavedSettings.setBOOL("WindLightUseAtmosShaders", mWindLight);
gSavedSettings.setBOOL("RenderWaterReflections", mReflections);
gSavedSettings.setBOOL("RenderAvatarVP", mAvatarVP); gSavedSettings.setBOOL("RenderAvatarVP", mAvatarVP);
gSavedSettings.setBOOL("RenderDeferred", mDeferred); gSavedSettings.setBOOL("RenderDeferred", mDeferred);
gSavedSettings.setBOOL("RenderDeferredSunShadow", mSunShadow); gSavedSettings.setBOOL("RenderDeferredGI", mDeferredGI);
gSavedSettings.setS32("RenderReflectionDetail", mReflectionDetail); gSavedSettings.setS32("RenderReflectionDetail", mReflectionDetail);
gSavedSettings.setS32("RenderShadowDetail", mShadowDetail);
gSavedSettings.setBOOL("RenderUseImpostors", mAvatarImpostors); gSavedSettings.setBOOL("RenderUseImpostors", mAvatarImpostors);
gSavedSettings.setBOOL("RenderAvatarCloth", mAvatarCloth); gSavedSettings.setBOOL("RenderAvatarCloth", mAvatarCloth);
@@ -989,6 +1005,13 @@ void LLPanelDisplay::updateSliderText(LLUICtrl* ctrl, void* user_data)
return; return;
} }
//Hack to display 'Off' for avatar physics slider.
if(slider->getName() == "AvatarPhysicsDetail" && !slider->getValueF32())
{
text_box->setText(std::string("Off"));
return;
}
// get range and points when text should change // get range and points when text should change
F32 range = slider->getMaxValue() - slider->getMinValue(); F32 range = slider->getMaxValue() - slider->getMinValue();
llassert(range > 0); llassert(range > 0);
@@ -1004,10 +1027,14 @@ void LLPanelDisplay::updateSliderText(LLUICtrl* ctrl, void* user_data)
{ {
text_box->setText(std::string("Mid")); text_box->setText(std::string("Mid"));
} }
else else if(slider->getValueF32() < slider->getMaxValue())
{ {
text_box->setText(std::string("High")); text_box->setText(std::string("High"));
} }
else
{
text_box->setText(std::string("Max"));
}
} }
void LLPanelDisplay::updateMeterText(LLUICtrl* ctrl, void* user_data) void LLPanelDisplay::updateMeterText(LLUICtrl* ctrl, void* user_data)

View File

@@ -101,18 +101,19 @@ protected:
LLSliderCtrl *mCtrlFlexFactor; // Timeslice for flexible objects LLSliderCtrl *mCtrlFlexFactor; // Timeslice for flexible objects
LLSliderCtrl *mCtrlTreeFactor; // Control tree cutoff distance LLSliderCtrl *mCtrlTreeFactor; // Control tree cutoff distance
LLSliderCtrl *mCtrlAvatarFactor; // LOD for avatars LLSliderCtrl *mCtrlAvatarFactor; // LOD for avatars
LLSliderCtrl *mCtrlAvatarPhysicsFactor; // Physics LOD for avatars
LLSliderCtrl *mCtrlTerrainFactor; // LOD for terrain LLSliderCtrl *mCtrlTerrainFactor; // LOD for terrain
LLSliderCtrl *mCtrlSkyFactor; // LOD for terrain LLSliderCtrl *mCtrlSkyFactor; // LOD for terrain
LLSliderCtrl *mCtrlMaxParticle; // Max Particle LLSliderCtrl *mCtrlMaxParticle; // Max Particle
LLSliderCtrl *mCtrlPostProcess; // Max Particle LLSliderCtrl *mCtrlPostProcess; // Max Particle
LLCheckBoxCtrl *mCtrlBumpShiny; LLCheckBoxCtrl *mCtrlBumpShiny;
LLCheckBoxCtrl *mCtrlReflections;
LLCheckBoxCtrl *mCtrlWindLight; LLCheckBoxCtrl *mCtrlWindLight;
LLCheckBoxCtrl *mCtrlAvatarVP; LLCheckBoxCtrl *mCtrlAvatarVP;
LLCheckBoxCtrl *mCtrlShaderEnable; LLCheckBoxCtrl *mCtrlShaderEnable;
LLCheckBoxCtrl *mCtrlDeferred; LLCheckBoxCtrl *mCtrlDeferred;
LLCheckBoxCtrl *mCtrlSunShadow; LLCheckBoxCtrl *mCtrlDeferredGI;
LLComboBox *mCtrlShadowDetail;
LLCheckBoxCtrl *mCtrlAvatarImpostors; LLCheckBoxCtrl *mCtrlAvatarImpostors;
LLCheckBoxCtrl *mCtrlAvatarCloth; LLCheckBoxCtrl *mCtrlAvatarCloth;
LLRadioGroup *mRadioLightingDetail2; LLRadioGroup *mRadioLightingDetail2;
@@ -136,6 +137,7 @@ protected:
LLTextBox *mFlexFactorText; LLTextBox *mFlexFactorText;
LLTextBox *mTreeFactorText; LLTextBox *mTreeFactorText;
LLTextBox *mAvatarFactorText; LLTextBox *mAvatarFactorText;
LLTextBox *mAvatarPhysicsFactorText;
LLTextBox *mTerrainFactorText; LLTextBox *mTerrainFactorText;
LLTextBox *mSkyFactorText; LLTextBox *mSkyFactorText;
LLTextBox *mPostProcessText; LLTextBox *mPostProcessText;
@@ -151,12 +153,12 @@ protected:
BOOL mBumpShiny; BOOL mBumpShiny;
BOOL mShaderEnable; BOOL mShaderEnable;
BOOL mWindLight; BOOL mWindLight;
BOOL mReflections;
BOOL mDeferred; BOOL mDeferred;
BOOL mSunShadow; BOOL mDeferredGI;
BOOL mAvatarVP; BOOL mAvatarVP;
S32 mReflectionDetail; S32 mReflectionDetail;
S32 mShadowDetail;
BOOL mAvatarImpostors; BOOL mAvatarImpostors;
BOOL mAvatarCloth; BOOL mAvatarCloth;

View File

@@ -496,7 +496,9 @@ BOOL LLPhysicsMotionController::onUpdate(F32 time, U8* joint_mask)
{ {
// Skip if disabled globally. // Skip if disabled globally.
static const LLCachedControl<bool> avatar_physics("AvatarPhysics",false); static const LLCachedControl<bool> avatar_physics("AvatarPhysics",false);
if (!avatar_physics || (!((LLVOAvatar*)mCharacter)->isSelf() && !((LLVOAvatar*)mCharacter)->mSupportsPhysics)) bool supports_physics = !avatar_physics || (!((LLVOAvatar*)mCharacter)->isSelf() && !((LLVOAvatar*)mCharacter)->mSupportsPhysics);
//Treat lod 0 as AvatarPhyiscs:FALSE. AvatarPhyiscs setting is superfluous unless we decide to hook it into param sending.
if (supports_physics || !LLVOAvatar::sPhysicsLODFactor)
{ {
if(!mIsDefault) if(!mIsDefault)
{ {
@@ -507,6 +509,7 @@ BOOL LLPhysicsMotionController::onUpdate(F32 time, U8* joint_mask)
} }
mCharacter->updateVisualParams(); mCharacter->updateVisualParams();
} }
if(!supports_physics) //Only use emerald physics if avatarphysiscs is really off, or the client doesn't seem to support new physics.
((LLVOAvatar*)mCharacter)->idleUpdateBoobEffect(); //Fall back to emerald physics ((LLVOAvatar*)mCharacter)->idleUpdateBoobEffect(); //Fall back to emerald physics
return TRUE; return TRUE;
} }

View File

@@ -191,37 +191,35 @@
initial_value="true" label="Deferred Shading" left_delta="0" initial_value="true" label="Deferred Shading" left_delta="0"
mouse_opaque="true" name="RenderDeferred" radio_style="false" mouse_opaque="true" name="RenderDeferred" radio_style="false"
width="256" /> width="256" />
<check_box bottom_delta="-17" control_name="RenderDeferredSunShadow" enabled="true" <check_box bottom_delta="-17" control_name="RenderDeferredGI" enabled="true"
follows="left|top" font="SansSerifSmall" height="16" follows="left|top" font="SansSerifSmall" height="16"
initial_value="true" label="Primary Shadows" left_delta="0" initial_value="true" label="Global Illumination (Experimental!)" left_delta="0"
mouse_opaque="true" name="RenderDeferredSunShadow" radio_style="false" mouse_opaque="true" name="RenderDeferredGI" radio_style="false"
width="256" /> width="256" />
<check_box bottom_delta="-17" control_name="RenderWaterReflections" enabled="true"
follows="left|top" font="SansSerifSmall" height="16"
initial_value="true" label="Water Reflections" left_delta="0"
mouse_opaque="true" name="Reflections" radio_style="false" width="256" />
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom_delta="-17" drop_shadow_visible="true" enabled="true" follows="left|top" bottom_delta="-17" drop_shadow_visible="true" enabled="true" follows="left|top"
font="SansSerifSmall" h_pad="0" halign="left" height="12" font="SansSerifSmall" h_pad="0" halign="left" height="12"
left="10" mouse_opaque="true" name="ReflectionDetailText" v_pad="0" left="15" mouse_opaque="true" name="ReflectionDetailText" v_pad="0"
width="128"> width="128">
Reflection Detail: Water Reflections:
</text> </text>
<combo_box bottom_delta="-20" control_name="RenderReflectionDetail" enabled = "true" follows="left|top" label="Reflection Detail" <combo_box bottom_delta="-20" control_name="RenderReflectionDetail" enabled = "true" follows="left|top" label="Reflection Detail"
left_delta="-2" mouse_opaque="true" name="ReflectionDetailCombo" width="160" height="16"> left_delta="-2" mouse_opaque="true" name="ReflectionDetailCombo" width="160" height="16">
<combo_item type="string" length="1" name="0" value="0"> <combo_item type="string" length="1" name="0" value="0">
Disabled
</combo_item>
<combo_item type="string" length="1" name="1" value="1">
Terrain and Trees Terrain and Trees
</combo_item> </combo_item>
<combo_item type="string" length="1" name="1" value="1"> <combo_item type="string" length="1" name="2" value="2">
All Static Objects All Static Objects
</combo_item> </combo_item>
<combo_item type="string" length="1" name="2" value="2"> <combo_item type="string" length="1" name="3" value="3">
All Avatars and Objects All Avatars and Objects
</combo_item> </combo_item>
<combo_item type="string" length="1" name="3" value="3"> <combo_item type="string" length="1" name="4" value="4">
Everything Everything
</combo_item> </combo_item>
</combo_box> </combo_box>
<!--radio_group bottom_delta="-73" control_name="RenderReflectionDetail" draw_border="false" <!--radio_group bottom_delta="-73" control_name="RenderReflectionDetail" draw_border="false"
@@ -245,6 +243,27 @@
Everything Everything
</radio_item> </radio_item>
</radio_group--> </radio_group-->
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom_delta="-17" drop_shadow_visible="true" enabled="true" follows="left|top"
font="SansSerifSmall" h_pad="0" halign="left" height="12"
left="15" mouse_opaque="true" name="ShadowDetailText" v_pad="0"
width="128">
Deferred Shadows:
</text>
<combo_box bottom_delta="-20" control_name="RenderShadowDetail" enabled = "true" follows="left|top" label="Shadow Detail"
left_delta="-2" mouse_opaque="true" name="ShadowDetailCombo" width="160" height="16">
<combo_item type="string" length="1" name="0" value="0">
Disabled
</combo_item>
<combo_item type="string" length="1" name="1" value="1">
Sun shadows
</combo_item>
<combo_item type="string" length="1" name="2" value="2">
Sun and spotlight shadows
</combo_item>
</combo_box>
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom="-313" drop_shadow_visible="true" enabled="true" follows="left|top" bottom="-313" drop_shadow_visible="true" enabled="true" follows="left|top"
font="SansSerifSmall" h_pad="0" halign="left" height="12" left="10" font="SansSerifSmall" h_pad="0" halign="left" height="12" left="10"
@@ -320,6 +339,11 @@
increment="0.125" initial_val="160" label=" Avatars:" increment="0.125" initial_val="160" label=" Avatars:"
label_width="140" left_delta="0" max_val="1" min_val="0" label_width="140" left_delta="0" max_val="1" min_val="0"
mouse_opaque="true" name="AvatarMeshDetail" show_text="false" width="223" /> mouse_opaque="true" name="AvatarMeshDetail" show_text="false" width="223" />
<slider bottom_delta="-20" can_edit_text="false" control_name="RenderAvatarPhysicsLODFactor"
decimal_digits="3" enabled="true" follows="left|top" height="16"
increment="0.1" initial_val="160" label=" Avatar Physics:"
label_width="140" left_delta="0" max_val="1" min_val="0"
mouse_opaque="true" name="AvatarPhysicsDetail" show_text="false" width="223" />
<slider bottom_delta="-20" can_edit_text="false" control_name="RenderTerrainLODFactor" <slider bottom_delta="-20" can_edit_text="false" control_name="RenderTerrainLODFactor"
decimal_digits="3" enabled="true" follows="left|top" height="16" decimal_digits="3" enabled="true" follows="left|top" height="16"
increment="0.125" initial_val="160" label=" Terrain:" increment="0.125" initial_val="160" label=" Terrain:"
@@ -364,6 +388,13 @@
name="AvatarMeshDetailText" v_pad="0" width="128"> name="AvatarMeshDetailText" v_pad="0" width="128">
Low Low
</text> </text>
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom_delta="-20" drop_shadow_visible="true" enabled="true"
follows="left|top" font="SansSerifSmall" h_pad="0" halign="left"
height="12" left_delta="0" mouse_opaque="true"
name="AvatarPhysicsDetailText" v_pad="0" width="128">
Off
</text>
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom_delta="-20" drop_shadow_visible="true" enabled="true" bottom_delta="-20" drop_shadow_visible="true" enabled="true"
follows="left|top" font="SansSerifSmall" h_pad="0" halign="left" follows="left|top" font="SansSerifSmall" h_pad="0" halign="left"
@@ -379,7 +410,7 @@
Low Low
</text> </text>
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom="-331" drop_shadow_visible="true" enabled="true" follows="left|top" bottom="-352" drop_shadow_visible="true" enabled="true" follows="left|top"
font="SansSerifSmall" h_pad="0" halign="left" height="12" font="SansSerifSmall" h_pad="0" halign="left" height="12"
left="210" mouse_opaque="true" name="LightingDetailText" v_pad="0" left="210" mouse_opaque="true" name="LightingDetailText" v_pad="0"
width="128"> width="128">
@@ -398,7 +429,7 @@
</radio_item> </radio_item>
</radio_group> </radio_group>
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
bottom="-331" drop_shadow_visible="true" enabled="true" follows="left|top" bottom="-352" drop_shadow_visible="true" enabled="true" follows="left|top"
font="SansSerifSmall" h_pad="0" halign="left" height="12" left="360" font="SansSerifSmall" h_pad="0" halign="left" height="12" left="360"
mouse_opaque="true" name="TerrainDetailText" v_pad="0" width="128"> mouse_opaque="true" name="TerrainDetailText" v_pad="0" width="128">
Terrain Detail: Terrain Detail: