diff options
author | Alexander Gavriliuk <gavriliuk@gmail.com> | 2023-02-16 02:11:46 +0100 |
---|---|---|
committer | marchcat-pe <alihatskiy@productengine.com> | 2023-02-16 15:07:20 +0200 |
commit | 53c33ebf993a4c0424bd5ae8f5e9c42b528dc5e5 (patch) | |
tree | 917d34f6e8ddb77867f99109ad3f5c9fdb90d097 /indra | |
parent | 23a781317a12e7e46124a05efd1a6849a39438b3 (diff) |
SL-18246 Highlight 100% transparent faces for scripted objects
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llvovolume.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 2e7ccc8334..108f5cd1d3 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -5850,15 +5850,18 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group) } else { - if (te->getColor().mV[3] > 0.f || te->getGlow() > 0.f) - { //only treat as alpha in the pipeline if < 100% transparent - drawablep->setState(LLDrawable::HAS_ALPHA); - add_face(sAlphaFaces, alpha_count, facep); - } - else if (LLDrawPoolAlpha::sShowDebugAlpha) - { - add_face(sAlphaFaces, alpha_count, facep); - } + if (te->getColor().mV[3] > 0.f || te->getGlow() > 0.f) + { //only treat as alpha in the pipeline if < 100% transparent + drawablep->setState(LLDrawable::HAS_ALPHA); + add_face(sAlphaFaces, alpha_count, facep); + } + else if (LLDrawPoolAlpha::sShowDebugAlpha || + gPipeline.sRenderHighlight && + (LLPipeline::getRenderScriptedBeacons() || LLPipeline::getRenderScriptedTouchBeacons()) && + drawablep->getVObj() && drawablep->getVObj()->flagScripted()) + { //draw the transparent face for debugging purposes using a custom texture + add_face(sAlphaFaces, alpha_count, facep); + } } } else |