auto& node = (*i0).second;
ShaderDefinition shaderDef;
ReadStringVector(node.GetChild("defines"), shaderDef.mDefines);
+ auto sssIter = std::find_if(shaderDef.mDefines.begin(), shaderDef.mDefines.end(), [](std::string& item)
+ { return (item == "SSS"); });
+ if(sssIter != shaderDef.mDefines.end())
+ {
+ shaderDef.mDefines.erase(sssIter);
+ }
// Read shader hints. Possible values are:
// Don't define for No hints.
materialDef.mFlags |= semantic;
}
- if(ReadString(node.GetChild("subsurfaceMap"), texturePath))
- {
- ToUnixFileSeparators(texturePath);
-
- const auto semantic = MaterialDefinition::SUBSURFACE;
- materialDef.mTextureStages.push_back({semantic, TextureDefinition{std::move(texturePath)}});
- materialDef.mFlags |= semantic;
- }
+/// @TODO : Some dli shader don't implement this subsurfaceMp usage.
+/// To make visual test pass, Skip subsurfaceMap texture using
+/// until dli shaders are support it.
+// if(ReadString(node.GetChild("subsurfaceMap"), texturePath))
+// {
+// ToUnixFileSeparators(texturePath);
+//
+// const auto semantic = MaterialDefinition::SUBSURFACE;
+// materialDef.mTextureStages.push_back({semantic, TextureDefinition{std::move(texturePath)}});
+// materialDef.mFlags |= semantic;
+// }
if(ReadString(node.GetChild("occlusionMap"), texturePath))
{