#pragma once #include "MinimalEngine.h" #include "Containers/List.h" #include namespace Seele { DECLARE_REF(MaterialAsset) DECLARE_NAME_REF(Gfx, Graphics) struct MaterialImportArgs { std::filesystem::path filePath; std::string importPath; }; class MaterialLoader { public: MaterialLoader(Gfx::PGraphics graphic); ~MaterialLoader(); void importAsset(MaterialImportArgs args); PMaterialAsset getPlaceHolderMaterial(); private: void import(MaterialImportArgs args, PMaterialAsset asset); Gfx::PGraphics graphics; PMaterialAsset placeholderMaterial; }; DEFINE_REF(MaterialLoader) } // namespace Seele