aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llprefsadvanced.cpp
diff options
context:
space:
mode:
authorMcCabe Maxsted2010-04-09 22:31:27 -0700
committerMcCabe Maxsted2010-04-09 22:32:37 -0700
commit0d853708bf1ae4d5162fc7826301820bdcf5cd0b (patch)
tree42763a4ea3116417bf21bcc84dee3b0350dd1b01 /linden/indra/newview/llprefsadvanced.cpp
parentAdded a first use notification to the AO (diff)
downloadmeta-impy-0d853708bf1ae4d5162fc7826301820bdcf5cd0b.zip
meta-impy-0d853708bf1ae4d5162fc7826301820bdcf5cd0b.tar.gz
meta-impy-0d853708bf1ae4d5162fc7826301820bdcf5cd0b.tar.bz2
meta-impy-0d853708bf1ae4d5162fc7826301820bdcf5cd0b.tar.xz
Added ugly checkbox to toggle shadows in Preferences > Advanced
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/llprefsadvanced.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/linden/indra/newview/llprefsadvanced.cpp b/linden/indra/newview/llprefsadvanced.cpp
index 1ecc0ec..88f066c 100644
--- a/linden/indra/newview/llprefsadvanced.cpp
+++ b/linden/indra/newview/llprefsadvanced.cpp
@@ -59,6 +59,37 @@ void LLPrefsAdvanced::apply()
59 gSavedSettings.setBOOL("DisableLoginLogoutScreens", childGetValue("disable_log_screen_check")); 59 gSavedSettings.setBOOL("DisableLoginLogoutScreens", childGetValue("disable_log_screen_check"));
60 gSavedSettings.setBOOL("DisableTeleportScreens", childGetValue("disable_tp_screen_check")); 60 gSavedSettings.setBOOL("DisableTeleportScreens", childGetValue("disable_tp_screen_check"));
61 gSavedSettings.setBOOL("ClothingLayerProtection", childGetValue("client_name_tag_check")); 61 gSavedSettings.setBOOL("ClothingLayerProtection", childGetValue("client_name_tag_check"));
62
63 // This is bad bad BAD UI from Emerald, I know.
64 // If anyone wants to do this better, please do -- MC
65 if ( childGetValue("shadows_check").asBoolean() )
66 {
67 if ( (gSavedSettings.getU32("RenderQualityPerformance") < 3) // Make sure we have everything enabled
68 || !gSavedSettings.getBOOL("WindLightUseAtmosShaders")
69 || !gSavedSettings.getBOOL("VertexShaderEnable") )
70 {
71 childSetValue("shadows_check", FALSE);
72 LLNotifications::instance().add("NoShadows");
73 llwarns << "Attempting to enable shadow rendering while graphics settings less than Ultra or shaders are missing!" << llendl;
74 }
75 else if ( (gSavedSettings.getBOOL("WindLightUseAtmosShaders") // If we do, toggle shadows in the correct order
76 && gSavedSettings.getBOOL("VertexShaderEnable")) )
77 {
78 gSavedSettings.setBOOL("RenderUseFBO", childGetValue("shadows_check").asBoolean());
79 gSavedSettings.setBOOL("RenderDeferred", childGetValue("shadows_check").asBoolean());
80 llinfos << "Shadow rendering enabled" << llendl;
81 }
82 }
83 else if (!childGetValue("shadows_check").asBoolean())
84 {
85 if (gSavedSettings.getBOOL("RenderDeferred"))
86 {
87 gSavedSettings.setBOOL("RenderDeferred", childGetValue("shadows_check").asBoolean());
88 gSavedSettings.setBOOL("RenderUseFBO", childGetValue("shadows_check").asBoolean());
89 llinfos << "Shadow rendering disabled" << llendl;
90 }
91 }
92 gSavedSettings.setBOOL("ShadowsEnabled", childGetValue("shadows_check").asBoolean());
62} 93}
63 94
64void LLPrefsAdvanced::cancel() 95void LLPrefsAdvanced::cancel()