diff options
| author | Kitty Barnett <develop@catznip.com> | 2012-03-25 15:25:35 +0200 |
|---|---|---|
| committer | Kitty Barnett <develop@catznip.com> | 2012-03-25 15:25:35 +0200 |
| commit | 911472ed08490cbc08ba5009be82b247c51102a7 (patch) | |
| tree | f9d5efb2e0037e5b602f2be23120910c40b94919 /indra/newview/llvovolume.cpp | |
| parent | e0d1ddab212103ba11a72783ce3b0a26ea8c0c55 (diff) | |
| parent | b187aeb8f177bd76e792652e773617beff18b47b (diff) | |
Merge with viewer-release
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) { |
