YAGE  v0.1.3
Yet Another Game Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
camera2d.h
Go to the documentation of this file.
1 
9 #ifndef YAGE_CAMERA2D_H
10 #define YAGE_CAMERA2D_H
11 
12 #include <glm/glm.hpp>
13 #include <glm/gtc/matrix_transform.hpp>
14 
15 namespace yage
16 {
17 
18 class GlslProgram;
19 
20 class Camera2D
21 {
22 private:
23  bool update_matrix_ = true;
24  float scale_ = 1;
25  glm::vec2 position_;
26  glm::mat4 camera_matrix_;
27  glm::mat4 ortho_matrix_;
28 
29 public:
30  Camera2D(int screen_width = 1280, int screen_height = 720);
31 
32  void update(GlslProgram &program);
33  void move(const glm::vec2 &direction);
34 };
35 
36 } // namespace yage
37 
38 #endif
glm::mat4 ortho_matrix_
Definition: camera2d.h:27
float scale_
Definition: camera2d.h:24
glm::mat4 camera_matrix_
Definition: camera2d.h:26
void update(GlslProgram &program)
Definition: camera2d.cpp:24
Definition: glslprogram.h:19
bool update_matrix_
Definition: camera2d.h:23
glm::vec2 position_
Definition: camera2d.h:25
Definition: camera2d.h:20
void move(const glm::vec2 &direction)
Definition: camera2d.cpp:40
Camera2D(int screen_width=1280, int screen_height=720)
Definition: camera2d.cpp:17