diff options
author | Geenz <geenz@geenzo.com> | 2019-04-01 23:09:43 -0700 |
---|---|---|
committer | Geenz <geenz@geenzo.com> | 2019-04-01 23:09:43 -0700 |
commit | 558eaef3ea09ff560c1fead65f1d1b3b75b4bdc5 (patch) | |
tree | 9f2e5ddf80ec63596f5825bb54ea3b89439879dc /indra/newview/app_settings/shaders/class2 | |
parent | 9b34751614cf67ceddcae6e67f751ab02519b6a5 (diff) |
Make sure that atmospheric calcs aren't done twice.
The atomospherics were being applied both in the G-buffer and during the sun light pass. This ensures that is not the case.
Additionally, re-enable specular on the water plane, scale the bloom factor to something more reasonable, and also someone broke specular on emissive surfaces. That's fixed too now.
Diffstat (limited to 'indra/newview/app_settings/shaders/class2')
-rw-r--r-- | indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl index 27532ce458..39776f1791 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl @@ -142,11 +142,11 @@ void main() // add the two types of shiny together vec3 spec_contrib = dumbshiny * spec.rgb; - bloom = dot(spec_contrib, spec_contrib) / 6; + bloom = dot(spec_contrib, spec_contrib) / 64; col += spec_contrib; } - col = mix(col.rgb, diffuse.rgb, diffuse.a); + col.rgb += diffuse.a * diffuse.rgb; if (envIntensity > 0.0) { //add environmentmap @@ -154,9 +154,7 @@ void main() vec3 refcol = textureCube(environmentMap, env_vec).rgb; col = mix(col.rgb, refcol, envIntensity); } - - -vec3 a = col.rgb; + if (norm.w < 0.5) { col = mix(atmosFragLighting(col, additive, atten), fullbrightAtmosTransportFrag(col, additive, atten), diffuse.a); |