From 08a3828cc9755f2d7da38b3da94b0570abdb7838 Mon Sep 17 00:00:00 2001 From: Shyotl Date: Sat, 8 Dec 2012 16:50:35 -0600 Subject: [PATCH] Applied Tofu Linden's water atmospherics improvements. https://bitbucket.org/tofu_linden/vwr-29175-fog-fixes/commits/59f73ee6a1545e5c377917f26cf22d95845caecd & https://bitbucket.org/tofu_linden/vwr-29175-fog-fixes/commits/43fdcb8d8489d8ba5ac7b852c2d6c7a639c2c4ba --- .../newview/app_settings/shaders/class1/deferred/waterF.glsl | 5 +++-- .../newview/app_settings/shaders/class1/deferred/waterV.glsl | 2 +- .../app_settings/shaders/class1/environment/waterV.glsl | 2 +- indra/newview/llviewershadermgr.cpp | 2 ++ 4 files changed, 7 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 9b64b3d3f..b27822814 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl @@ -162,8 +162,9 @@ void main() //spec *= shadow; //color.rgb += spec * specular; - //color.rgb = atmosTransport(color.rgb); - //color.rgb = scaleSoftClip(color.rgb); + color.rgb = atmosTransport(color.rgb); + color.rgb = scaleSoftClip(color.rgb); + //color.a = spec * sunAngle2; //wavef.z *= 0.1f; diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl index 9734acf00..ece34dcc4 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl @@ -85,7 +85,7 @@ void main() pos.w = 1.0; pos = modelview_matrix*pos; - calcAtmospherics(pos.xyz); + calcAtmospherics(view.xyz); //pass wave parameters to pixel shader vec2 bigWave = (v.xy) * vec2(0.04,0.04) + d1 * time * 0.055; diff --git a/indra/newview/app_settings/shaders/class1/environment/waterV.glsl b/indra/newview/app_settings/shaders/class1/environment/waterV.glsl index f66ba1d2d..f77edde70 100644 --- a/indra/newview/app_settings/shaders/class1/environment/waterV.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/waterV.glsl @@ -81,7 +81,7 @@ void main() pos.w = 1.0; pos = modelview_matrix*pos; - calcAtmospherics(pos.xyz); + calcAtmospherics(view.xyz); //pass wave parameters to pixel shader diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index f427b10a7..0cd49f717 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -1293,7 +1293,9 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() { // load water shader gDeferredWaterProgram.mName = "Deferred Water Shader"; + gDeferredWaterProgram.mFeatures.atmosphericHelpers = true; gDeferredWaterProgram.mFeatures.calculatesAtmospherics = true; + gDeferredWaterProgram.mFeatures.hasAtmospherics = true; gDeferredWaterProgram.mFeatures.hasGamma = true; gDeferredWaterProgram.mFeatures.hasTransport = true; gDeferredWaterProgram.mShaderFiles.clear();