From 577f6a46f02ecfa4efabc0b379e44e4f53a0b391 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Thu, 9 Feb 2023 17:00:36 -0600 Subject: SL-19181 Modulate "glow" by PBR emissive. --- indra/newview/lldrawpoolpbropaque.cpp | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'indra/newview/lldrawpoolpbropaque.cpp') 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); } } -- cgit v1.2.3