diff options
| author | Graham Linden <graham@lindenlab.com> | 2013-08-07 13:35:08 -0700 |
|---|---|---|
| committer | Graham Linden <graham@lindenlab.com> | 2013-08-07 13:35:08 -0700 |
| commit | f3952f9a8dc368c991d9aaac174bfee5a0dd90e9 (patch) | |
| tree | 98d8e289b73e75e73eafde30373d13120e917144 /indra/newview/llviewerobject.cpp | |
| parent | bfe2377a9a3061094e3c1fa10bb0afed06cac709 (diff) | |
NORSPEC-329 fix mangling of diffuse alpha mode by material edits when only one face really has alpha
Diffstat (limited to 'indra/newview/llviewerobject.cpp')
| -rwxr-xr-x | indra/newview/llviewerobject.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index f29a00e4c4..0070240803 100755 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -4517,6 +4517,30 @@ LLViewerTexture *LLViewerObject::getTEImage(const U8 face) const } +bool LLViewerObject::isImageAlphaBlended(const U8 te) const +{ + LLViewerTexture* image = getTEImage(te); + LLGLenum format = image ? image->getPrimaryFormat() : GL_RGB; + switch (format) + { + case GL_RGBA: + case GL_ALPHA: + { + return true; + } + break; + + case GL_RGB: break; + default: + { + llwarns << "Unexpected tex format in LLViewerObject::isImageAlphaBlended...returning no alpha." << llendl; + } + break; + } + + return false; +} + LLViewerTexture *LLViewerObject::getTENormalMap(const U8 face) const { // llassert(mTEImages); |
