diff options
author | Graham Madarasz <graham@lindenlab.com> | 2019-05-13 20:57:11 +0000 |
---|---|---|
committer | Graham Madarasz <graham@lindenlab.com> | 2019-05-13 20:57:11 +0000 |
commit | 5196b7eac970f7f2b451f0cdf10cb4f6f5997a75 (patch) | |
tree | eb9f66bada72ce544345586694d3cf27c322e31a /indra/newview/app_settings/shaders/class3/windlight/transportF.glsl | |
parent | ce910edb0ed6222ad402e4310ccef6a0d0207dd0 (diff) | |
parent | 61c2f390210720132c861a157b66cc77fe273d51 (diff) |
Merged in graham_linden/viewer-eep-g (pull request #391)
SL-10996, SL-11149
Diffstat (limited to 'indra/newview/app_settings/shaders/class3/windlight/transportF.glsl')
-rw-r--r-- | indra/newview/app_settings/shaders/class3/windlight/transportF.glsl | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/indra/newview/app_settings/shaders/class3/windlight/transportF.glsl b/indra/newview/app_settings/shaders/class3/windlight/transportF.glsl index e7e56087ab..08eb119510 100644 --- a/indra/newview/app_settings/shaders/class3/windlight/transportF.glsl +++ b/indra/newview/app_settings/shaders/class3/windlight/transportF.glsl @@ -35,10 +35,12 @@ uniform int no_atmo; vec3 atmosTransportFrag(vec3 light, vec3 additive, vec3 atten) { if (no_atmo == 1) - { + { return light; } - return (light + additive) * atten * 2.0; + light *= atten.r; + light += additive; + return light * 2.0; } vec3 atmosTransport(vec3 light) @@ -48,10 +50,12 @@ vec3 atmosTransport(vec3 light) vec3 fullbrightAtmosTransport(vec3 light) { - return atmosTransportFrag(light, getAdditiveColor(), getAtmosAttenuation()); + float brightness = dot(light.rgb, vec3(0.33333)); + return atmosTransportFrag(light * 0.5, getAdditiveColor() * (brightness * 0.5 + 0.5), getAtmosAttenuation()); } vec3 fullbrightShinyAtmosTransport(vec3 light) { - return atmosTransportFrag(light, getAdditiveColor(), getAtmosAttenuation()); + float brightness = dot(light.rgb, vec3(0.33333)); + return atmosTransportFrag(light * 0.5, getAdditiveColor() * (brightness * brightness), getAtmosAttenuation()); } |