Switch Nazara to C++20
This commit is contained in:
@@ -22,7 +22,7 @@ namespace Nz
|
||||
|
||||
bool FontParams::IsValid() const
|
||||
{
|
||||
return true; // Rien à tester
|
||||
return true; // Nothing to test
|
||||
}
|
||||
|
||||
Font::Font() :
|
||||
@@ -37,29 +37,25 @@ namespace Nz
|
||||
OnFontRelease(this);
|
||||
|
||||
Destroy();
|
||||
SetAtlas({}); // On libère l'atlas proprement
|
||||
SetAtlas({}); // Reset our atlas
|
||||
}
|
||||
|
||||
void Font::ClearGlyphCache()
|
||||
{
|
||||
if (m_atlas)
|
||||
{
|
||||
if (m_atlas.unique())
|
||||
m_atlas->Clear(); // Appellera OnAtlasCleared
|
||||
if (m_atlas.use_count() == 1)
|
||||
m_atlas->Clear(); // Will call OnAtlasCleared
|
||||
else
|
||||
{
|
||||
// Au moins une autre police utilise cet atlas, on vire nos glyphes un par un
|
||||
for (auto mapIt = m_glyphes.begin(); mapIt != m_glyphes.end(); ++mapIt)
|
||||
// At least one font is using this atlas, remove our glyphes
|
||||
for (auto&& [_, glyphMap] : m_glyphes)
|
||||
{
|
||||
GlyphMap& glyphMap = mapIt->second;
|
||||
for (auto glyphIt = glyphMap.begin(); glyphIt != glyphMap.end(); ++glyphIt)
|
||||
{
|
||||
Glyph& glyph = glyphIt->second;
|
||||
for (auto&& [_, glyph] : glyphMap)
|
||||
m_atlas->Free(&glyph.atlasRect, &glyph.layerIndex, 1);
|
||||
}
|
||||
}
|
||||
|
||||
// Destruction des glyphes mémorisés et notification
|
||||
// Free all cached glyphes
|
||||
m_glyphes.clear();
|
||||
|
||||
OnFontGlyphCacheCleared(this);
|
||||
|
||||
@@ -89,7 +89,7 @@ namespace Nz
|
||||
stream.Read(skin, 68*sizeof(char));
|
||||
|
||||
ParameterList matData;
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, (baseDir / skin).generic_u8string());
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, PathToString(baseDir / skin));
|
||||
|
||||
mesh->SetMaterialData(i, std::move(matData));
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ namespace Nz
|
||||
sequence.firstFrame = 0;
|
||||
sequence.frameCount = frameCount;
|
||||
sequence.frameRate = frameRate;
|
||||
sequence.name = stream.GetPath().filename().generic_u8string();
|
||||
sequence.name = PathToString(stream.GetPath().filename());
|
||||
|
||||
animation->AddSequence(sequence);
|
||||
|
||||
|
||||
@@ -212,7 +212,7 @@ namespace Nz
|
||||
|
||||
// Material
|
||||
ParameterList matData;
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, (baseDir / md5Mesh.shader).generic_u8string());
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, PathToString(baseDir / md5Mesh.shader));
|
||||
|
||||
mesh->SetMaterialData(i, std::move(matData));
|
||||
|
||||
@@ -338,7 +338,7 @@ namespace Nz
|
||||
|
||||
// Material
|
||||
ParameterList matData;
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, (baseDir / md5Mesh.shader).generic_u8string());
|
||||
matData.SetParameter(MaterialData::BaseColorTexturePath, PathToString(baseDir / md5Mesh.shader));
|
||||
|
||||
mesh->SetMaterialData(i, std::move(matData));
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@ namespace Nz
|
||||
if (!fullPath.is_absolute())
|
||||
fullPath = baseDir / fullPath;
|
||||
|
||||
data.SetParameter(MaterialData::AlphaTexturePath, fullPath.generic_u8string());
|
||||
data.SetParameter(MaterialData::AlphaTexturePath, PathToString(fullPath));
|
||||
}
|
||||
|
||||
if (!mtlMat->diffuseMap.empty())
|
||||
@@ -89,7 +89,7 @@ namespace Nz
|
||||
if (!fullPath.is_absolute())
|
||||
fullPath = baseDir / fullPath;
|
||||
|
||||
data.SetParameter(MaterialData::BaseColorTexturePath, fullPath.generic_u8string());
|
||||
data.SetParameter(MaterialData::BaseColorTexturePath, PathToString(fullPath));
|
||||
}
|
||||
|
||||
if (!mtlMat->emissiveMap.empty())
|
||||
@@ -98,7 +98,7 @@ namespace Nz
|
||||
if (!fullPath.is_absolute())
|
||||
fullPath = baseDir / fullPath;
|
||||
|
||||
data.SetParameter(MaterialData::EmissiveTexturePath, fullPath.generic_u8string());
|
||||
data.SetParameter(MaterialData::EmissiveTexturePath, PathToString(fullPath));
|
||||
}
|
||||
|
||||
if (!mtlMat->normalMap.empty())
|
||||
@@ -107,7 +107,7 @@ namespace Nz
|
||||
if (!fullPath.is_absolute())
|
||||
fullPath = baseDir / fullPath;
|
||||
|
||||
data.SetParameter(MaterialData::NormalTexturePath, fullPath.generic_u8string());
|
||||
data.SetParameter(MaterialData::NormalTexturePath, PathToString(fullPath));
|
||||
}
|
||||
|
||||
if (!mtlMat->specularMap.empty())
|
||||
@@ -116,7 +116,7 @@ namespace Nz
|
||||
if (!fullPath.is_absolute())
|
||||
fullPath = baseDir / fullPath;
|
||||
|
||||
data.SetParameter(MaterialData::SpecularTexturePath, fullPath.generic_u8string());
|
||||
data.SetParameter(MaterialData::SpecularTexturePath, PathToString(fullPath));
|
||||
}
|
||||
|
||||
// If we either have an alpha value or an alpha map, let's configure the material for transparency
|
||||
|
||||
@@ -508,7 +508,7 @@ namespace Nz
|
||||
if (!m_mtlLib.empty())
|
||||
{
|
||||
Emit("mtllib ");
|
||||
EmitLine(m_mtlLib.generic_u8string());
|
||||
EmitLine(PathToString(m_mtlLib));
|
||||
EmitLine();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user