chore: implement obj loading skeleton with localize asset

This commit is contained in:
Jan
2024-12-23 22:55:58 +01:00
parent 673db0592f
commit c524cb007a
64 changed files with 1238 additions and 1038 deletions

View File

@ -1,16 +1,15 @@
#pragma once
#include "AssetCreationContext.h"
#include "AssetRegistration.h"
#include "Game/IAsset.h"
#include "Utils/MemoryManager.h"
#include "IAssetCreator.h"
#include "Zone/ZoneTypes.h"
#include <string>
#include <type_traits>
class GenericAssetRegistration;
template<typename AssetType> class AssetRegistration;
class AssetCreationResult;
class AssetCreationContext;
class IDefaultAssetCreator
{
@ -23,7 +22,7 @@ public:
IDefaultAssetCreator& operator=(IDefaultAssetCreator&& other) noexcept = default;
[[nodiscard]] virtual asset_type_t GetHandlingAssetType() const = 0;
virtual GenericAssetRegistration CreateDefaultAsset(const std::string& assetName) const = 0;
virtual AssetCreationResult CreateDefaultAsset(const std::string& assetName, AssetCreationContext& context) const = 0;
};
template<typename AssetType> class DefaultAssetCreator : public IDefaultAssetCreator
@ -35,12 +34,4 @@ public:
{
return AssetType::EnumEntry;
}
GenericAssetRegistration CreateDefaultAsset(const std::string& assetName) const override
{
return CreateDefaultAssetInternal(assetName);
}
protected:
virtual AssetRegistration<typename AssetType::Type> CreateDefaultAssetInternal(const std::string& assetName) const = 0;
};