summaryrefslogtreecommitdiff
path: root/indra/newview/app_settings/shaders/class1
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@geenzo.com>2023-09-25 09:27:49 -0700
committerJonathan "Geenz" Goodman <geenz@geenzo.com>2023-09-25 09:27:49 -0700
commit73870cb0b41144dc9932947d13d6aa27952d8849 (patch)
treef712491a5baffb2e7be797d4d9110602687865d8 /indra/newview/app_settings/shaders/class1
parent3ff3e1a3537a5d051180aaf6223f5ddd8b540d35 (diff)
parent3da26ee8df6cc7e57ba3acbb91437ec97e151002 (diff)
Merge branch 'DRTVWR-559' into DRTVWR-583
Diffstat (limited to 'indra/newview/app_settings/shaders/class1')
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/postDeferredGammaCorrect.glsl3
-rw-r--r--indra/newview/app_settings/shaders/class1/windlight/atmosphericsFuncs.glsl10
2 files changed, 6 insertions, 7 deletions
diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredGammaCorrect.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredGammaCorrect.glsl
index 53e4f02314..64e6bc9da2 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredGammaCorrect.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredGammaCorrect.glsl
@@ -105,7 +105,8 @@ vec3 toneMap(vec3 color)
color *= exposure * exp_scale;
- color = toneMapACES_Hill(color);
+ // mix ACES and Linear here as a compromise to avoid over-darkening legacy content
+ color = mix(toneMapACES_Hill(color), color, 0.333);
#endif
return color;
diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsFuncs.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsFuncs.glsl
index 437fa0a6d5..a8aa5a36a3 100644
--- a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsFuncs.glsl
+++ b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsFuncs.glsl
@@ -39,7 +39,8 @@ uniform float max_y;
uniform vec3 glow;
uniform float scene_light_strength;
uniform float sun_moon_glow_factor;
-uniform float sky_hdr_scale;
+uniform float sky_sunlight_scale;
+uniform float sky_ambient_scale;
float getAmbientClamp() { return 1.0f; }
@@ -148,12 +149,9 @@ void calcAtmosphericVarsLinear(vec3 inPositionEye, vec3 norm, vec3 light_dir, ou
// multiply to get similar colors as when the "scaleSoftClip" implementation was doubling color values
// (allows for mixing of light sources other than sunlight e.g. reflection probes)
- sunlit *= 1.5;
- amblit *= 0.5;
+ sunlit *= sky_sunlight_scale;
+ amblit *= sky_ambient_scale;
- // override amblit with ambient_color if sky probe ambiance is not zero
- amblit = mix(amblit, ambient_color, clamp(sky_hdr_scale-1.0, 0.0, 1.0));
-
amblit = srgb_to_linear(amblit);
amblit *= ambientLighting(norm, light_dir);
}