diff options
| author | Oz Linden <oz@lindenlab.com> | 2012-03-11 08:06:22 -0400 |
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2012-03-11 08:06:22 -0400 |
| commit | 9f704b61adcf8aad9dc58b77ccb75a1b9f34bf91 (patch) | |
| tree | 199803a238d464a97be5d19c1701224ef8a38dba /indra/newview/llvovolume.cpp | |
| parent | 3210b0922e53daea2fc5f09212e9a4f429295ec2 (diff) | |
| parent | 80f2836a424520ebe022464bde709362303fa7ad (diff) | |
merge beta tags
Diffstat (limited to 'indra/newview/llvovolume.cpp')
| -rw-r--r-- | indra/newview/llvovolume.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 7492a06784..03d4c51aff 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -4433,10 +4433,10 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group) else { if (te->getColor().mV[3] > 0.f) - { + { //only treat as alpha in the pipeline if < 100% transparent drawablep->setState(LLDrawable::HAS_ALPHA); - alpha_faces.push_back(facep); } + alpha_faces.push_back(facep); } } else @@ -4947,7 +4947,11 @@ void LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, std:: if (is_alpha) { // can we safely treat this as an alpha mask? - if (facep->canRenderAsMask()) + if (facep->getFaceColor().mV[3] <= 0.f) + { //100% transparent, don't render unless we're highlighting transparent + registerFace(group, facep, LLRenderPass::PASS_ALPHA_INVISIBLE); + } + else if (facep->canRenderAsMask()) { if (te->getFullbright() || LLPipeline::sNoAlpha) { |
