Vivid
Loading...
Searching...
No Matches
Camera.h
1#pragma once
2
3#include "glm/glm/glm.hpp"
4#include "glm/gtc/matrix_transform.hpp"
5
11enum class CameraMovement
12{
13 FORWARD = 1,
14 BACKWARD = 2,
15 LEFT = 3,
16 RIGHT = 4
17};
18
24class Camera
25{
26protected:
27 int m_ViewportWidth = 1920;
28 int m_ViewportHeight = 1080;
29
30public:
31 virtual glm::mat4 GetViewMatrix() = 0;
32 virtual glm::mat4 GetProjectionMatrix() = 0;
33
34 virtual void SetPerspective(const glm::mat4& perspective) = 0;
35 virtual void SetViewMatrix(const glm::mat4& view) = 0;
36
37 virtual void SetViewportSize(int width, int height) = 0;
38 int GetViewportWidth() { return m_ViewportWidth; }
39 int GetViewportHeight() { return m_ViewportHeight; }
40};
A class that represents the camera.
Definition: Camera.h:25