diff --git a/libraries/entities-renderer/src/RenderableModelEntityItem.cpp b/libraries/entities-renderer/src/RenderableModelEntityItem.cpp index cc202dde37..89f819b0da 100644 --- a/libraries/entities-renderer/src/RenderableModelEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableModelEntityItem.cpp @@ -101,8 +101,9 @@ int RenderableModelEntityItem::readEntitySubclassDataFromBuffer(const unsigned c } QVariantMap RenderableModelEntityItem::parseTexturesToMap(QString textures) { + // If textures are unset, revert to original textures if (textures == "") { - return QVariantMap(); + return _originalTexturesMap; } QString jsonTextures = "{\"" + textures.replace(":\"", "\":\"").replace(",\n", ",\"") + "}"; @@ -128,6 +129,7 @@ void RenderableModelEntityItem::remapTextures() { const QSharedPointer& networkGeometry = _model->getGeometry(); if (networkGeometry) { _originalTextures = networkGeometry->getTextureNames(); + _originalTexturesMap = parseTexturesToMap(_originalTextures.join(",\n")); _originalTexturesRead = true; } } diff --git a/libraries/entities-renderer/src/RenderableModelEntityItem.h b/libraries/entities-renderer/src/RenderableModelEntityItem.h index cbd4146772..d6deaa5d8d 100644 --- a/libraries/entities-renderer/src/RenderableModelEntityItem.h +++ b/libraries/entities-renderer/src/RenderableModelEntityItem.h @@ -92,6 +92,7 @@ private: EntityTreeRenderer* _myRenderer = nullptr; QString _currentTextures; QStringList _originalTextures; + QVariantMap _originalTexturesMap; bool _originalTexturesRead = false; QVector> _points; bool _dimensionsInitialized = true;