Files
XCEngine/engine/src/Resources/Model/ModelLoader.cpp

41 lines
1.0 KiB
C++

#include <XCEngine/Resources/Model/ModelLoader.h>
#include <XCEngine/Core/Asset/ResourceManager.h>
#include <XCEngine/Resources/Model/ModelArtifactIO.h>
namespace XCEngine {
namespace Resources {
ModelLoader::ModelLoader() = default;
ModelLoader::~ModelLoader() = default;
Containers::Array<Containers::String> ModelLoader::GetSupportedExtensions() const {
Containers::Array<Containers::String> extensions;
extensions.PushBack("xcmodel");
return extensions;
}
bool ModelLoader::CanLoad(const Containers::String& path) const {
return GetExtension(path).ToLower() == "xcmodel";
}
LoadResult ModelLoader::Load(const Containers::String& path, const ImportSettings* settings) {
(void)settings;
if (!CanLoad(path)) {
return LoadResult(Containers::String("Unsupported model format: ") + GetExtension(path).ToLower());
}
return LoadModelArtifact(path);
}
ImportSettings* ModelLoader::GetDefaultSettings() const {
return nullptr;
}
REGISTER_RESOURCE_LOADER(ModelLoader);
} // namespace Resources
} // namespace XCEngine