diff options
Diffstat (limited to 'indra/newview/llvovolume.cpp')
-rw-r--r-- | indra/newview/llvovolume.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 0d8c2273b1..ea8527c001 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -4617,7 +4617,7 @@ BOOL LLVOVolume::lineSegmentIntersect(const LLVector4a& start, const LLVector4a& if (!pick_unselectable) { - if (!LLSelectMgr::instance().canSelectObject(this)) + if (!LLSelectMgr::instance().canSelectObject(this, TRUE)) { return FALSE; } @@ -5856,7 +5856,16 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group) } else { - if (te->getColor().mV[3] > 0.f || te->getGlow() > 0.f) + F32 alpha; + if (is_pbr) + { + alpha = gltf_mat ? gltf_mat->mBaseColor.mV[3] : 1.0; + } + else + { + alpha = te->getColor().mV[3]; + } + if (alpha > 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); |