From c1b6d91c32ae4ab0bd9a19d92dc95110d937d940 Mon Sep 17 00:00:00 2001
From: Graham Linden <graham@lindenlab.com>
Date: Mon, 8 Jul 2019 10:48:34 -0700
Subject: [PATCH] SL-11540

Make class1/environment and class1/deferred water match.
---
 .../app_settings/shaders/class1/deferred/waterF.glsl        | 6 ++----
 .../app_settings/shaders/class1/environment/waterF.glsl     | 4 ++++
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
index 5a3a02d5d1d..51b131ada77 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl
@@ -155,18 +155,16 @@ void main()
 	vec2 distort2 = distort+wavef.xy*refScale/max(dmod*df1, 1.0);
 		
 	vec4 fb = texture2D(screenTex, distort2);
-    fb.rgb = srgb_to_linear(fb.rgb);
 	
 	//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.49999 + 0.5);
+	color.rgb = mix(fb.rgb, refcol.rgb, df1 * 0.99999f);
 	
 	vec4 pos = vary_position;
 	
 	color.rgb += spec * specular;
 
 	//color.rgb = atmosTransport(color.rgb);
-    color.rgb *= 2.0f;
 	color.rgb = scaleSoftClip(color.rgb);
     
 	color.a   = spec * sunAngle2;
@@ -175,5 +173,5 @@ void main()
 
 	frag_data[0] = vec4(color.rgb, color); // diffuse
 	frag_data[1] = vec4(0);		// speccolor, spec
-	frag_data[2] = vec4(encode_normal(screenspacewavef.xyz*0.5+0.5), 0.05, 0);// normalxy, 0, 0
+	frag_data[2] = vec4(encode_normal(screenspacewavef.xyz*0.5+0.5), 0.0, 0);// normalxy, 0, 0
 }
diff --git a/indra/newview/app_settings/shaders/class1/environment/waterF.glsl b/indra/newview/app_settings/shaders/class1/environment/waterF.glsl
index 05fd4461c1e..750de7100f0 100644
--- a/indra/newview/app_settings/shaders/class1/environment/waterF.glsl
+++ b/indra/newview/app_settings/shaders/class1/environment/waterF.glsl
@@ -121,6 +121,7 @@ void main()
 
     vec4 refcol = refcol1 + refcol2 + refcol3;
     float df1 = df.x + df.y + df.z;
+    df1 *= 0.666666f;
     refcol *= df1;
     
     vec3 wavef = (wave1 + wave2 * 0.4 + wave3 * 0.6) * 0.5;
@@ -155,6 +156,9 @@ void main()
 
     color.a = spec * sunAngle2;
 
+    //color.rgb = atmosTransport(color.rgb);
+	color.rgb = scaleSoftClip(color.rgb);
+
 #if defined(WATER_EDGE)
     gl_FragDepth = 0.9999847f;
 #endif
-- 
GitLab