diff options
| author | Jonathan "Geenz" Goodman <geenz@geenzo.com> | 2023-10-16 08:45:48 -0700 |
|---|---|---|
| committer | Jonathan "Geenz" Goodman <geenz@geenzo.com> | 2023-10-16 08:45:48 -0700 |
| commit | e841c73a9972fc184487c061e8a80add3a18aff1 (patch) | |
| tree | 2af618b6c72cc19f3b5a08f4901087b8229aa04a /indra/newview/lldrawpoolmaterials.cpp | |
| parent | e612d70fad8c6ec9335c109223211d516ebdf6f4 (diff) | |
Tons of masking changes and tweaks.
We now support masking mirrors in the GBuffer.
We also now support the concept of one arbitrary clip plane.
DRTVWR-583
Diffstat (limited to 'indra/newview/lldrawpoolmaterials.cpp')
| -rw-r--r-- | indra/newview/lldrawpoolmaterials.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/lldrawpoolmaterials.cpp b/indra/newview/lldrawpoolmaterials.cpp index 6a7e05ac74..373103ce0a 100644 --- a/indra/newview/lldrawpoolmaterials.cpp +++ b/indra/newview/lldrawpoolmaterials.cpp @@ -190,6 +190,19 @@ void LLDrawPoolMaterials::renderDeferred(S32 pass) glUniform4fv(specular, 1, lastSpecular.mV); } + if (gPipeline.mHeroProbeManager.isMirrorPass()) + { + glUniform1f(LLShaderMgr::MIRROR_FLAG, 1); + } + + LLVector4 clipPlane = LLVector4(gPipeline.mHeroProbeManager.currentMirrorClip()[0], + gPipeline.mHeroProbeManager.currentMirrorClip()[1], + gPipeline.mHeroProbeManager.currentMirrorClip()[2], + gPipeline.mHeroProbeManager.currentMirrorClip()[3]); + + mShader->uniform4fv(LLShaderMgr::CLIP_PLANE, + 1, clipPlane.mV); + LLVOAvatar* lastAvatar = nullptr; for (LLCullResult::drawinfo_iterator i = begin; i != end; ) |
