View.hpp 720 B

1234567891011121314151617181920212223242526272829
  1. #ifndef CORE_VIEW_HPP
  2. #define CORE_VIEW_HPP
  3. #include "core/Matrix.hpp"
  4. namespace Core {
  5. class View {
  6. Matrix view{};
  7. Vector3 back{};
  8. Vector3 down{};
  9. Vector3 front{};
  10. Vector3 left{};
  11. Vector3 right{};
  12. Vector3 up{};
  13. public:
  14. void updateDirections(float lengthAngle, float widthAngle);
  15. void updateDirections(const Quaternion& q);
  16. const Matrix& updateMatrix(const Vector3& pos);
  17. const Vector3& getBack() const;
  18. const Vector3& getDown() const;
  19. const Vector3& getFront() const;
  20. const Vector3& getLeft() const;
  21. const Vector3& getRight() const;
  22. const Vector3& getUp() const;
  23. };
  24. }
  25. #endif