More setting up for testing of gltf loading
This commit is contained in:
parent
78a20173e0
commit
a39230ce42
|
@ -25,10 +25,11 @@ namespace SHADE
|
|||
(void)scene;
|
||||
|
||||
SHMeshAsset result
|
||||
{
|
||||
.compiled = false,
|
||||
.changed = false
|
||||
};
|
||||
{
|
||||
.compiled { false},
|
||||
.changed { false },
|
||||
.meshName { mesh.mName.C_Str() }
|
||||
};
|
||||
|
||||
for (size_t i{0}; i < mesh.mNumVertices; ++i)
|
||||
{
|
||||
|
|
|
@ -31,15 +31,19 @@ namespace SHADE
|
|||
/****************************************************************************
|
||||
* \brief Static function to generate asset ID.
|
||||
****************************************************************************/
|
||||
AssetID SHAssetManager::GenerateAssetID() noexcept
|
||||
AssetID SHAssetManager::GenerateAssetID(AssetType type) noexcept
|
||||
{
|
||||
std::default_random_engine randEngine{
|
||||
static_cast<unsigned int>(std::chrono::system_clock::now().time_since_epoch().count()) };
|
||||
std::mt19937 idGen{ randEngine() };
|
||||
AssetID result{ idGen() };
|
||||
AssetID result{ static_cast<AssetID>(type) << 24};
|
||||
AssetID unique{ idGen() & ((1 << 24) - 1) };
|
||||
|
||||
result |= unique;
|
||||
|
||||
while (result == 0)
|
||||
{
|
||||
result = idGen();
|
||||
result = GenerateAssetID(type);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
@ -95,7 +99,7 @@ namespace SHADE
|
|||
****************************************************************************/
|
||||
AssetID SHAssetManager::CreateNewAsset(AssetType type, AssetName name) noexcept
|
||||
{
|
||||
AssetID id{ GenerateAssetID() };
|
||||
AssetID id{ GenerateAssetID(type) };
|
||||
SHAsset meta;
|
||||
meta.id = id;
|
||||
meta.type = type;
|
||||
|
@ -204,6 +208,8 @@ namespace SHADE
|
|||
.location {0}
|
||||
}
|
||||
);
|
||||
|
||||
SHLOG_INFO("Loaded meshes\n");
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
|
@ -228,8 +234,8 @@ namespace SHADE
|
|||
SHAsset SHAssetManager::RegisterAssetNew(AssetPath const& asset) noexcept
|
||||
{
|
||||
SHAsset meta;
|
||||
meta.id = GenerateAssetID();
|
||||
meta.type = SHAssetMetaHandler::GetTypeFromExtension(asset.extension().string());
|
||||
meta.id = GenerateAssetID(meta.type);
|
||||
|
||||
assetCollection.push_back(meta);
|
||||
|
||||
|
@ -261,6 +267,16 @@ namespace SHADE
|
|||
|
||||
//TODO Recognise new meshes as asset as well and write mesh into binary
|
||||
//TODO
|
||||
|
||||
for (auto const& mesh : meshes)
|
||||
{
|
||||
meshCollection.emplace(GenerateAssetID(AssetType::MESH), mesh);
|
||||
}
|
||||
|
||||
for (auto const& image : images)
|
||||
{
|
||||
ddsCollection.emplace(GenerateAssetID(AssetType::DDS), image);
|
||||
}
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
|
|
Loading…
Reference in New Issue