diff --git a/Bigfoot/Sources/Engine/Include/Engine/Asset/AssetHelper.hpp b/Bigfoot/Sources/Engine/Include/Engine/Asset/AssetHelper.hpp index db18acd..1a4be67 100644 --- a/Bigfoot/Sources/Engine/Include/Engine/Asset/AssetHelper.hpp +++ b/Bigfoot/Sources/Engine/Include/Engine/Asset/AssetHelper.hpp @@ -19,6 +19,13 @@ return AssetType::GetTypeID(); \ } \ AssetContainer g_containerFor##AssetName; \ - const bool g_insertedContainerFor##AssetName = g_assetLibrary.Insert(&g_containerFor##AssetName); \ + const bool g_insertedContainerFor##AssetName = []() \ + { \ + const bool inserted = g_assetLibrary.Insert(&g_containerFor##AssetName); \ + CRITICAL_ASSERT(EngineAssertHandler, \ + inserted, \ + "AssetTypeID collision or duplicate registration for asset type '" #AssetName "'"); \ + return inserted; \ + }(); \ } #endif diff --git a/Bigfoot/Sources/Engine/SerializationManager/SerializationManager.cpp b/Bigfoot/Sources/Engine/SerializationManager/SerializationManager.cpp index 612fe61..380441d 100644 --- a/Bigfoot/Sources/Engine/SerializationManager/SerializationManager.cpp +++ b/Bigfoot/Sources/Engine/SerializationManager/SerializationManager.cpp @@ -85,10 +85,12 @@ void LoadAssets(const eastl::span p_uuids) for (const eastl::vector& wave: waves) { const eastl::vector> assetFlatbuffers = g_dataAccessor->GetAssetFlatbuffers(wave); - for (const eastl::vector& flatbuffer: assetFlatbuffers) + for (std::size_t i = 0; i < wave.size(); ++i) { + const eastl::vector& flatbuffer = assetFlatbuffers[i]; if (flatbuffer.empty()) { + BIGFOOT_LOG_ERROR(ENGINE_LOGGER, "Asset {} could not be found while loading, skipping it", wave[i]); continue; } @@ -135,6 +137,7 @@ void LoadAsset(const UUID& p_uuid) const eastl::vector flatbuffer = g_dataAccessor->GetAssetFlatbuffer(uuid); if (flatbuffer.empty()) { + BIGFOOT_LOG_ERROR(ENGINE_LOGGER, "Asset {} could not be found while loading, skipping it", uuid); continue; }