In CXFileReader.h somewhere within the class, e.g. after the definition of SXMeshMaterialList:
Code: Select all
struct SXTemplateMaterial
{
core::stringc Name; // template name from X File
SXMaterial Material; // material
};
Code: Select all
core::array<SXTemplateMaterial> TemplateMaterials; // material array
In CXFileReader::parseDataObject() after the AnimateSet bit:
Code: Select all
else
if (objectName == "Material")
{
TemplateMaterials.push_back(SXTemplateMaterial());
TemplateMaterials[TemplateMaterials.size()-1].Name=getNextToken();
return parseDataObjectMaterial(TemplateMaterials[TemplateMaterials.size()-1].Material);
}
Code: Select all
else
if (objectName == "{")
{
objectName = getNextToken();
for (u32 i=0; i<TemplateMaterials.size(); ++i)
if (TemplateMaterials[i].Name == objectName)
{
mlist.Materials.push_back(TemplateMaterials[i].Material);
}
getNextToken(); // skip }
}
Joe