ComputerGraphik TU WIEN
lightCamera.hpp
Go to the documentation of this file.
1 #ifndef LIGHTCAMERA_HPP
2 #define LIGHTCAMERA_HPP
3 
4 #include <glm/vec3.hpp>
5 #include <glm/mat4x4.hpp>
6 #include "camera.hpp"
7 #include "scene.hpp"
8 
9 /*
10 * TODO: At the moment not needed for simple post processing lights
11 */
12 
13 class LightCamera : public Camera {
14 public:
15  LightCamera(const std::string& name, Scene* scene, glm::vec3& pos, glm::vec3& up, glm::vec3& eye, float fov, float near, float far);
16  virtual ~LightCamera();
17 
18  void drawShadowMap();
19  void draw() const;
20  void reset();
21  void setShader(Shader* val);
22  void update(double deltaT);
23 
24 private:
26  friend class EffectObjectLightCamShadow;
27 
29  GLuint frameBuffer;
30  GLuint depthTexture;
31 
32  void setUpDepthTexture();
33 };
34 
35 #endif //CAMERA_HPP
GLuint depthTexture
Definition: lightCamera.hpp:30
void setUpDepthTexture()
Definition: lightCamera.cpp:156
virtual ~LightCamera()
Definition: lightCamera.cpp:85
glm::vec3 up
Definition: camera.hpp:73
void drawShadowMap()
Definition: lightCamera.cpp:116
glm::vec3 eye
Definition: camera.hpp:74
void reset()
Definition: lightCamera.cpp:103
Implements the camera movement with user input.
Definition: camera.hpp:11
Definition: lightCamera.cpp:20
Definition: lightCamera.hpp:13
Shader * shader
Definition: lightCamera.hpp:28
glm::vec3 pos
Definition: camera.hpp:75
GLuint frameBuffer
Definition: lightCamera.hpp:29
Encapsulates the Rendering Engine, holds a complete scene and it's assets.
Definition: scene.hpp:71
Scene * scene
Definition: sceneObject.hpp:68
LightCamera(const std::string &name, Scene *scene, glm::vec3 &pos, glm::vec3 &up, glm::vec3 &eye, float fov, float near, float far)
Definition: lightCamera.cpp:66
std::string name
Definition: sceneObject.hpp:73
Encapsulates a shader program.
Definition: shader.hpp:9
void setShader(Shader *val)
Definition: lightCamera.cpp:90
float fov
Definition: camera.hpp:70
void update(double deltaT)
Definition: lightCamera.cpp:99
void draw() const
Definition: lightCamera.cpp:94