From 9aeb3b48d77ce9e22445b4bca23d36f651bb9395 Mon Sep 17 00:00:00 2001
From: Graham Linden <graham@lindenlab.com>
Date: Wed, 17 Jul 2013 08:03:09 -0700
Subject: [PATCH] NORSPEC-291 fix materials underwater, disable attempt at
 materials in reflect/distort RTs

---
 .../shaders/class1/deferred/waterF.glsl          |  2 +-
 indra/newview/pipeline.cpp                       | 16 ++++++++++++----
 2 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
index 17288873c81..46d5b9b6123 100755
--- a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
@@ -192,7 +192,7 @@ void main()
 	//wavef = normalize(wavef);
 	vec3 screenspacewavef = (norm_mat*vec4(wavef, 1.0)).xyz;
 	
-	frag_data[0] = vec4(linear_to_srgb(color.rgb), 0.5); // diffuse
+	frag_data[0] = vec4(color.rgb, 0.5); // diffuse
 	frag_data[1] = vec4(0.5,0.5,0.5, 0.95); // speccolor*spec, spec
 	frag_data[2] = vec4(encode_normal(screenspacewavef), 0.0, 0.0); // normalxyz, displace
 }
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index fc79f1c31fe..d88cb30887a 100755
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -122,9 +122,9 @@
 //#define DEBUG_INDICES
 #endif
 
-// Expensive
+// Expensive and currently broken
 //
-#define MATERIALS_IN_REFLECTIONS 1
+#define MATERIALS_IN_REFLECTIONS 0
 
 bool gShiftFrame = false;
 
@@ -1236,7 +1236,11 @@ void LLPipeline::createGLBuffers()
 
 	updateRenderDeferred();
 
-	bool materials_in_water = gSavedSettings.getS32("RenderWaterMaterials");
+	bool materials_in_water = false;
+
+#if MATERIALS_IN_REFLECTIONS
+	materials_in_water = gSavedSettings.getS32("RenderWaterMaterials");
+#endif
 
 	if (LLPipeline::sWaterReflections)
 	{ //water reflection texture
@@ -9685,7 +9689,11 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)
 			water_clip = 1;
 		}
 
-		bool materials_in_water = gSavedSettings.getS32("RenderWaterMaterials");
+		bool materials_in_water = false;
+
+#if MATERIALS_IN_REFLECTIONS
+		materials_in_water = gSavedSettings.getS32("RenderWaterMaterials");
+#endif
 
 		if (!LLViewerCamera::getInstance()->cameraUnderWater())
 		{	//generate planar reflection map
-- 
GitLab