CMaterial.h 566 B

1234567891011121314151617181920212223242526
  1. #pragma once
  2. #include <irrlicht/irrlicht.h>
  3. #include <nlohmann/json.hpp>
  4. #include "Materials/CPassess.h"
  5. namespace WallpaperEngine::Core::Objects::Images
  6. {
  7. using json = nlohmann::json;
  8. class CMaterial
  9. {
  10. public:
  11. static CMaterial* fromFile (irr::io::path filename);
  12. static CMaterial* fromJSON (json data);
  13. void insertPass (Materials::CPassess* mass);
  14. std::vector <Materials::CPassess*>* getPasses ();
  15. protected:
  16. CMaterial ();
  17. private:
  18. std::vector <Materials::CPassess*> m_passes;
  19. };
  20. };