diff options
author | Sandy Carter <bwrsandman@gmail.com> | 2016-07-15 17:14:32 +0300 |
---|---|---|
committer | Gaia Clary <gaia.clary@machinimatrix.org> | 2016-07-15 17:14:53 +0300 |
commit | b6797676561f63a261f7a69af03cc69500822ec2 (patch) | |
tree | e576692e39c1dafa99cafeb732ed1c8c7ad783dd /source/blender/collada | |
parent | 27641b51e7acef323a88f5cf96eac1229175eb55 (diff) |
fix T48857: Improved the handling of Material Alpha, based on patch D1949 with some small modifications
Diffstat (limited to 'source/blender/collada')
-rw-r--r-- | source/blender/collada/DocumentImporter.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/collada/DocumentImporter.cpp b/source/blender/collada/DocumentImporter.cpp index b91039fe012..226f319cefd 100644 --- a/source/blender/collada/DocumentImporter.cpp +++ b/source/blender/collada/DocumentImporter.cpp @@ -924,8 +924,12 @@ void DocumentImporter::write_profile_COMMON(COLLADAFW::EffectCommon *ef, Materia // TRANSPARENT // color if (ef->getOpacity().isColor()) { - float alpha = ef->getOpacity().getColor().getAlpha(); - if (alpha < 1) { + col = ef->getTransparent().getColor(); + float alpha = ef->getTransparency().getFloatValue(); + if (col.isValid()) { + alpha *= col.getAlpha(); // Assuming A_ONE opaque mode + } + if (col.isValid() || alpha < 1.0) { ma->alpha = alpha; ma->mode |= MA_ZTRANSP | MA_TRANSP; } |