diff options
author | Geenz <geenz@geenzo.com> | 2013-04-18 23:11:38 -0400 |
---|---|---|
committer | Geenz <geenz@geenzo.com> | 2013-04-18 23:11:38 -0400 |
commit | 9e53724538d61e6e53f5bf56e01760d59b54f690 (patch) | |
tree | ac494bb773e15f5b59bb3a6fffac0a5f913ce40b /indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl | |
parent | b6a6479c372e311b45e27eafd368e2045ca21790 (diff) | |
parent | 509c35d5bae7dbd938198c3e038011932693ff36 (diff) |
Merged with latest viewer-development-materials.
Diffstat (limited to 'indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl')
-rw-r--r-- | indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl index c7e5908d39..3d39394c32 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl @@ -315,11 +315,13 @@ void main() col *= diffuse.rgb; + vec3 refnormpersp = normalize(reflect(pos.xyz, norm.xyz)); + if (spec.a > 0.0) // specular reflection { // the old infinite-sky shiny reflection // - vec3 refnormpersp = normalize(reflect(pos.xyz, norm.xyz)); + float sa = dot(refnormpersp, sun_dir.xyz); vec3 dumbshiny = vary_SunlitColor*scol_ambocc.r*(texture2D(lightFunc, vec2(sa, spec.a)).r); @@ -327,8 +329,10 @@ void main() vec3 spec_contrib = dumbshiny * spec.rgb; bloom = dot(spec_contrib, spec_contrib) / 6; col += spec_contrib; + } - //add environmentmap + if (envIntensity > 0.0) + { //add environmentmap vec3 env_vec = env_mat * refnormpersp; col = mix(col.rgb, pow(textureCube(environmentMap, env_vec).rgb, vec3(2.2)) * 2.2, max(envIntensity-diffuse.a*2.0, 0.0)); |