scene.h 577 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <irrlicht/irrlicht.h>
  3. #include <nlohmann/json.hpp>
  4. #include "project.h"
  5. #include "scenes/camera.h"
  6. namespace wp::core
  7. {
  8. using json = nlohmann::json;
  9. class project;
  10. class scene
  11. {
  12. public:
  13. static scene* fromFile (irr::io::path filename);
  14. project* getProject ();
  15. protected:
  16. friend class project;
  17. void setProject (project* project);
  18. scenes::camera* getCamera ();
  19. scene (scenes::camera* camera);
  20. private:
  21. project* m_project;
  22. scenes::camera* m_camera;
  23. };
  24. };