diff options
author | Dave Parks <davep@lindenlab.com> | 2023-02-09 17:00:36 -0600 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2023-02-09 17:00:36 -0600 |
commit | 577f6a46f02ecfa4efabc0b379e44e4f53a0b391 (patch) | |
tree | 6c55da64e3276ae5cfb3ea78e54b906d90234993 /indra/newview/lldrawpoolpbropaque.cpp | |
parent | 95de63eaa3bab44dc435d1448d0732d6ffe13544 (diff) |
SL-19181 Modulate "glow" by PBR emissive.
Diffstat (limited to 'indra/newview/lldrawpoolpbropaque.cpp')
-rw-r--r-- | indra/newview/lldrawpoolpbropaque.cpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/indra/newview/lldrawpoolpbropaque.cpp b/indra/newview/lldrawpoolpbropaque.cpp index c5413a068a..d30fc22393 100644 --- a/indra/newview/lldrawpoolpbropaque.cpp +++ b/indra/newview/lldrawpoolpbropaque.cpp @@ -59,18 +59,29 @@ void LLDrawPoolGLTFPBR::renderDeferred(S32 pass) S32 LLDrawPoolGLTFPBR::getNumPostDeferredPasses() { - return LLPipeline::sRenderingHUDs ? 1 : 0; + return 1; } void LLDrawPoolGLTFPBR::renderPostDeferred(S32 pass) { - // only HUD rendering should execute this pass - llassert(LLPipeline::sRenderingHUDs); - - gHUDPBROpaqueProgram.bind(); - for (U32 type : gltf_render_types) + if (LLPipeline::sRenderingHUDs) { - pushGLTFBatches(type); + gHUDPBROpaqueProgram.bind(); + for (U32 type : gltf_render_types) + { + pushGLTFBatches(type); + } + } + else + { + gGL.setColorMask(false, true); + gPBRGlowProgram.bind(); + pushGLTFBatches(LLRenderPass::PASS_GLTF_GLOW); + + gPBRGlowProgram.bind(true); + pushRiggedGLTFBatches(LLRenderPass::PASS_GLTF_GLOW_RIGGED); + + gGL.setColorMask(true, false); } } |