summaryrefslogtreecommitdiff
path: root/indra/newview/lldrawpoolalpha.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2013-05-07 17:20:33 -0500
committerDave Parks <davep@lindenlab.com>2013-05-07 17:20:33 -0500
commitdbfcd6c9c5709b74365c2538ba312685b09d22bf (patch)
tree378a109c6094afea0bb32a8a7334b226ab2fc60b /indra/newview/lldrawpoolalpha.cpp
parent2a8ec731c93bb3c119cea166057a027aa37e383b (diff)
Optimization -- don't draw glow in alpha pool unless needed
Diffstat (limited to 'indra/newview/lldrawpoolalpha.cpp')
-rw-r--r--indra/newview/lldrawpoolalpha.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp
index 6fa16825df..331744acb7 100644
--- a/indra/newview/lldrawpoolalpha.cpp
+++ b/indra/newview/lldrawpoolalpha.cpp
@@ -515,7 +515,8 @@ void LLDrawPoolAlpha::renderAlpha(U32 mask)
// If this alpha mesh has glow, then draw it a second time to add the destination-alpha (=glow). Interleaving these state-changing calls could be expensive, but glow must be drawn Z-sorted with alpha.
if (current_shader &&
draw_glow_for_this_partition &&
- params.mVertexBuffer->hasDataType(LLVertexBuffer::TYPE_EMISSIVE))
+ params.mVertexBuffer->hasDataType(LLVertexBuffer::TYPE_EMISSIVE) &&
+ (!params.mParticle || params.mHasGlow))
{
static LLFastTimer::DeclareTimer FTM_RENDER_ALPHA_GLOW("Alpha Glow");
LLFastTimer t(FTM_RENDER_ALPHA_GLOW);