diff options
| author | RunitaiLinden <davep@lindenlab.com> | 2023-12-14 14:11:46 -0600 | 
|---|---|---|
| committer | RunitaiLinden <davep@lindenlab.com> | 2023-12-14 14:11:46 -0600 | 
| commit | 8b86e2ad1b1326cb3e98acd857dc93f4f1455b8c (patch) | |
| tree | 093646ed0bbe4c06b3f6fe7ee151fc3d82ac5b50 /indra | |
| parent | 7bfe590a3669a005d4269cdcf378891080264dce (diff) | |
SL-20611 Followup -- fix for depth based atmospheric mask making atmospherics effect sun/moon/clouds
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/app_settings/shaders/class3/deferred/hazeF.glsl | 3 | ||||
| -rw-r--r-- | indra/newview/lldrawpool.h | 6 | ||||
| -rw-r--r-- | indra/newview/lldrawpoolwlsky.cpp | 3 | 
3 files changed, 7 insertions, 5 deletions
| diff --git a/indra/newview/app_settings/shaders/class3/deferred/hazeF.glsl b/indra/newview/app_settings/shaders/class3/deferred/hazeF.glsl index 229f332b36..0b154e82ad 100644 --- a/indra/newview/app_settings/shaders/class3/deferred/hazeF.glsl +++ b/indra/newview/app_settings/shaders/class3/deferred/hazeF.glsl @@ -78,13 +78,12 @@ void main()          do_atmospherics = true;      } -      vec3  irradiance = vec3(0);      vec3  radiance  = vec3(0);      if (depth >= 1.0)      { -        //should only be true of WL sky, just port over base color value +        //should only be true of sky, clouds, sun/moon, and stars          discard;      } diff --git a/indra/newview/lldrawpool.h b/indra/newview/lldrawpool.h index 4300670445..0925a01439 100644 --- a/indra/newview/lldrawpool.h +++ b/indra/newview/lldrawpool.h @@ -53,7 +53,9 @@ public:          // before grass, so grass should be the first alpha masked pool.  Other ordering should be done          // based on fill rate and likelihood to occlude future passes (faster, large occluders first).          //   -		POOL_SIMPLE = 1, +        POOL_SKY = 1, +        POOL_WL_SKY, +		POOL_SIMPLE,  		POOL_FULLBRIGHT,  		POOL_BUMP,  		POOL_TERRAIN, @@ -64,8 +66,6 @@ public:  		POOL_TREE,  		POOL_ALPHA_MASK,  		POOL_FULLBRIGHT_ALPHA_MASK, -        POOL_SKY, -        POOL_WL_SKY,  		POOL_AVATAR,  		POOL_CONTROL_AV, // Animesh  		POOL_GLOW, diff --git a/indra/newview/lldrawpoolwlsky.cpp b/indra/newview/lldrawpoolwlsky.cpp index 05ee328e43..b14235f25c 100644 --- a/indra/newview/lldrawpoolwlsky.cpp +++ b/indra/newview/lldrawpoolwlsky.cpp @@ -87,6 +87,9 @@ void LLDrawPoolWLSky::endDeferredPass(S32 pass)      cloud_shader = nullptr;      sun_shader   = nullptr;      moon_shader  = nullptr; + +    // clear the depth buffer so haze shaders can use unwritten depth as a mask +    glClear(GL_DEPTH_BUFFER_BIT);  }  void LLDrawPoolWLSky::renderDome(const LLVector3& camPosLocal, F32 camHeightLocal, LLGLSLShader * shader) const | 
