diff options
| author | Nyx (Neal Orman) <nyx@lindenlab.com> | 2011-05-17 12:13:54 -0400 |
|---|---|---|
| committer | Nyx (Neal Orman) <nyx@lindenlab.com> | 2011-05-17 12:13:54 -0400 |
| commit | 8f94ff85f9b0318f959f066a138eac03770838cf (patch) | |
| tree | 7b2885af863ae16281f197c61bbedff4f2895e2c /indra/newview/lldrawpoolalpha.cpp | |
| parent | 2deea74cf6f08376e14e2f7e5333fc6959d2af19 (diff) | |
| parent | a2d8f0cb3308fed1cb2c8d5fa8fb74ec4cefa45b (diff) | |
merging up latest mesh-development to nyx-mesh-development
Diffstat (limited to 'indra/newview/lldrawpoolalpha.cpp')
| -rw-r--r-- | indra/newview/lldrawpoolalpha.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp index a2a109d5ee..8b5a2ce781 100644 --- a/indra/newview/lldrawpoolalpha.cpp +++ b/indra/newview/lldrawpoolalpha.cpp @@ -107,10 +107,14 @@ S32 LLDrawPoolAlpha::getNumPostDeferredPasses() { //skip depth buffer filling pass when rendering impostors return 1; } - else + else if (gSavedSettings.getBOOL("RenderDepthOfField")) { return 2; } + else + { + return 1; + } } void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass) @@ -210,7 +214,7 @@ void LLDrawPoolAlpha::render(S32 pass) gGL.setColorMask(true, true); } - if (LLPipeline::sAutoMaskAlphaNonDeferred && !deferred_render) + if (LLPipeline::sAutoMaskAlphaNonDeferred) { mColorSFactor = LLRender::BF_ONE; // } mColorDFactor = LLRender::BF_ZERO; // } these are like disabling blend on the color channels, but we're still blending on the alpha channel so that we can suppress glow @@ -226,7 +230,10 @@ void LLDrawPoolAlpha::render(S32 pass) simple_shader->bind(); pushBatches(LLRenderPass::PASS_ALPHA_MASK, getVertexDataMask()); } - fullbright_shader->bind(); + if (fullbright_shader) + { + fullbright_shader->bind(); + } pushBatches(LLRenderPass::PASS_FULLBRIGHT_ALPHA_MASK, getVertexDataMask()); LLGLSLShader::bindNoShader(); } @@ -273,6 +280,7 @@ void LLDrawPoolAlpha::render(S32 pass) if (deferred_render && pass == 1) { gGL.setAlphaRejectSettings(LLRender::CF_DEFAULT); + gGL.setSceneBlendType(LLRender::BT_ALPHA); } if (deferred_render && current_shader != NULL) |
