From b80b45e6962ea129d678b1c7e50fcebb499ed0f9 Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Fri, 3 Jul 2020 17:34:17 -0400
Subject: [PATCH] Make the water sparkle again

---
 .../shaders/class1/deferred/underWaterF.glsl      |  2 +-
 .../shaders/class1/deferred/waterF.glsl           | 15 +++------------
 2 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/indra/newview/app_settings/shaders/class1/deferred/underWaterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/underWaterF.glsl
index 9a5debb3c12..be0d7280703 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/underWaterF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/underWaterF.glsl
@@ -77,6 +77,6 @@ void main()
 	vec4 fb = texture2D(screenTex, distort);
 
 	frag_data[0] = vec4(fb.rgb, 1.0); // diffuse
-	frag_data[1] = vec4(0.5,0.5,0.5, 0.95); // speccolor*spec, spec
+	frag_data[1] = vec4(specular * 0.5, 0.95); // speccolor*spec, spec
 	frag_data[2] = vec4(encode_normal(wavef), 0.0, 0.0); // normalxyz, env intens, atmo kill
 }
diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
index a157e9c017b..6f0882bcf0b 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
@@ -158,10 +158,7 @@ void main()
 	
 	//mix with reflection
 	// Note we actually want to use just df1, but multiplying by 0.999999 gets around an nvidia compiler bug
-	color.rgb = mix(fb.rgb, refcol.rgb, df1 * 0.99999f);
-	
-	vec4 pos = vary_position;
-	
+	color.rgb = mix(fb.rgb, refcol.rgb, df1);
 	color.rgb += spec * specular;
 
 	color.rgb = atmosTransport(color.rgb);
@@ -171,14 +168,8 @@ void main()
     
 	vec3 screenspacewavef = normalize((norm_mat*vec4(wavef, 1.0)).xyz);
 
-	//frag_data[0] = color;
-
-    // TODO: The non-obvious assignment below is copied from the pre-EEP WL shader code
-    //       Unfortunately, fixing it causes a mismatch for EEP, and so it remains...  for now
-    //       SL-12975 (unfix pre-EEP broken alpha)
-    frag_data[0] = vec4(color.rgb, color);  // Effectively, color.rgbr
-
+	frag_data[0] = color;
 
-    frag_data[1] = vec4(0);		// speccolor, spec
+	frag_data[1] = vec4(specular * 0.5, 0.35);		// speccolor, spec
 	frag_data[2] = vec4(encode_normal(screenspacewavef.xyz), 0.05, 0);// normalxy, 0, 0
 }
-- 
GitLab