Invisprims in deferred now bind the correct shader when being drawn. (Fixes vbo attrib errors)
This commit is contained in:
@@ -1598,16 +1598,18 @@ void LLDrawPoolInvisible::renderDeferred( S32 pass )
|
|||||||
}
|
}
|
||||||
|
|
||||||
LLFastTimer t(FTM_RENDER_INVISIBLE);
|
LLFastTimer t(FTM_RENDER_INVISIBLE);
|
||||||
|
|
||||||
|
gOcclusionProgram.bind();
|
||||||
|
|
||||||
U32 invisi_mask = LLVertexBuffer::MAP_VERTEX;
|
U32 invisi_mask = LLVertexBuffer::MAP_VERTEX;
|
||||||
glStencilMask(0);
|
glStencilMask(0);
|
||||||
glStencilOp(GL_ZERO, GL_KEEP, GL_REPLACE);
|
|
||||||
gGL.setColorMask(false, false);
|
gGL.setColorMask(false, false);
|
||||||
pushBatches(LLRenderPass::PASS_INVISIBLE, invisi_mask, FALSE);
|
pushBatches(LLRenderPass::PASS_INVISIBLE, invisi_mask, FALSE);
|
||||||
gGL.setColorMask(true, true);
|
gGL.setColorMask(true, true);
|
||||||
glStencilOp(GL_KEEP, GL_KEEP, GL_REPLACE);
|
|
||||||
glStencilMask(0xFFFFFFFF);
|
glStencilMask(0xFFFFFFFF);
|
||||||
|
|
||||||
|
gOcclusionProgram.unbind();
|
||||||
|
|
||||||
if (gPipeline.hasRenderBatches(LLRenderPass::PASS_INVISI_SHINY))
|
if (gPipeline.hasRenderBatches(LLRenderPass::PASS_INVISI_SHINY))
|
||||||
{
|
{
|
||||||
beginShiny(true);
|
beginShiny(true);
|
||||||
|
|||||||
Reference in New Issue
Block a user