23 lines
524 B
C++
23 lines
524 B
C++
#pragma once
|
|
#include <vector>
|
|
#include "Asset.h"
|
|
#include "AssetLoaders/ModelLoader.h"
|
|
#include "uuid.h"
|
|
|
|
class AssetManager {
|
|
public:
|
|
|
|
void Init();
|
|
|
|
void RegisterAsset(Asset& asset);
|
|
void UnregisterAsset(Asset& asset);
|
|
|
|
|
|
static YoggieEngine::Mesh* LoadFromAssetFile(const std::filesystem::path assetPath);
|
|
static YoggieEngine::Renderable* LoadFromSource(const std::filesystem::path srcPath, const std::filesystem::path assetFolder);
|
|
|
|
private:
|
|
std::map<uuid::v4::UUID , Asset> Assets;
|
|
ModelLoader modelLoader;
|
|
|
|
}; |