camera.h 589 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include <nlohmann/json.hpp>
  3. #include <irrlicht/irrlicht.h>
  4. namespace wp::core::scenes
  5. {
  6. using json = nlohmann::json;
  7. class camera
  8. {
  9. public:
  10. static camera* fromJSON (json data);
  11. irr::core::vector3df* getCenter ();
  12. irr::core::vector3df* getEye ();
  13. irr::core::vector3df* getUp ();
  14. protected:
  15. camera (irr::core::vector3df center, irr::core::vector3df eye, irr::core::vector3df up);
  16. private:
  17. irr::core::vector3df m_center;
  18. irr::core::vector3df m_eye;
  19. irr::core::vector3df m_up;
  20. };
  21. };