diff --git a/libraries/model-networking/src/model-networking/ModelCache.cpp b/libraries/model-networking/src/model-networking/ModelCache.cpp index af9fe97e93..3f7e0405d4 100644 --- a/libraries/model-networking/src/model-networking/ModelCache.cpp +++ b/libraries/model-networking/src/model-networking/ModelCache.cpp @@ -135,7 +135,7 @@ bool NetworkGeometry::isLoadedWithTextures() const { } if (!_isLoadedWithTextures) { - _hasTransparentTextures = false; + _hasTransparentTextures = true; for (auto&& material : _materials) { if ((material->albedoTexture && !material->albedoTexture->isLoaded()) || @@ -152,7 +152,8 @@ bool NetworkGeometry::isLoadedWithTextures() const { const auto& usage = material->albedoTexture->getGPUTexture()->getUsage(); bool isTransparentTexture = usage.isAlpha() && !usage.isAlphaMask(); material->_material->setTransparentTexture(isTransparentTexture); - _hasTransparentTextures = _hasTransparentTextures || isTransparentTexture; + // FIXME: Materials with *some* transparent textures seem to give all *other* textures alphas of 0. + _hasTransparentTextures = isTransparentTexture && _hasTransparentTextures; } }