Fixed asset name map conflict checks to be case-insensitive, new icons for export dialog disc filesystem tree, regenerated asset names

This commit is contained in:
Aruki
2017-02-08 12:40:09 -07:00
parent a7b0a2480c
commit 9b6376af68
8 changed files with 1779 additions and 1770 deletions

View File

@@ -188,7 +188,7 @@ void GenerateAssetNames(CGameProject *pProj)
{
CMaterialPass *pPass = pMat->Pass(iPass);
if (pPass->Texture() && !pPass->Texture()->Entry()->IsCategorized())
if (pPass->Texture())
ApplyGeneratedName(pPass->Texture()->Entry(), WorldDir + L"sky\\sourceimages\\", pPass->Texture()->Entry()->Name());
}
}

View File

@@ -19,11 +19,6 @@ class CAssetNameMap
TWideString Directory;
CFourCC Type; // This is mostly just needed to verify no name conflicts
bool operator<(const SAssetNameInfo& rkOther) const
{
return FullPath() < rkOther.FullPath();
}
TWideString FullPath() const
{
return Directory + Name + L'.' + Type.ToString().ToUTF16();
@@ -33,6 +28,16 @@ class CAssetNameMap
{
rArc << SERIAL_AUTO(Name) << SERIAL_AUTO(Directory) << SERIAL_AUTO(Type);
}
bool operator<(const SAssetNameInfo& rkOther) const
{
return FullPath().ToUpper() < rkOther.FullPath().ToUpper();
}
bool operator==(const SAssetNameInfo& rkOther) const
{
return FullPath().CaseInsensitiveCompare(rkOther.FullPath());
}
};
std::set<SAssetNameInfo> mUsedSet; // Used to prevent name conflicts