Merge "DALi Version 2.1.25" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-scene-loader / public-api / dli-loader.cpp
index 48a82c3..2c8bd97 100644 (file)
@@ -1014,6 +1014,14 @@ void DliLoader::Impl::ParseMaterials(const TreeNode* materials, ConvertColorCode
       materialDef.mFlags |= semantic;
     }
 
+    if(ReadString(node.GetChild("occlusionMap"), texturePath))
+    {
+      ToUnixFileSeparators(texturePath);
+      const auto semantic = MaterialDefinition::OCCLUSION;
+      materialDef.mTextureStages.push_back({semantic, TextureDefinition{std::move(texturePath)}});
+      materialDef.mFlags |= semantic;
+    }
+
     if(ReadColorCodeOrColor(&node, materialDef.mColor, convertColorCode) &&
        materialDef.mColor.a < 1.0f)
     {
@@ -1255,9 +1263,10 @@ void DliLoader::Impl::ParseNodesInternal(const TreeNode* const nodes, Index inde
       auto& extras = nodeDef.mExtras;
       extras.reserve(eExtras->Size());
 
-      NodeDefinition::Extra e;
       for(auto i0 = eExtras->CBegin(), i1 = eExtras->CEnd(); i0 != i1; ++i0)
       {
+        NodeDefinition::Extra e;
+
         auto eExtra = *i0;
         e.mKey      = eExtra.first;
         if(e.mKey.empty())