diff options
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); } } |