VisPro  1.0
Project of Visualisierung 2
CutawaySurface.h
Go to the documentation of this file.
1 #pragma once
2 
7 #include "ZBufferShader.h"
8 #include "Quad.h"
9 #include "QuadShader.h"
10 #include <memory>
11 
15 public:
17  ~CutawaySurface();
18 
27  void init(int w, int h, float z_near, float z_far, float angle, float cut);
28 
37  void update(int w, int h, float z_near, float z_far, float angle, float c);
38 
41  void prepareZBufferPass();
44  void endZBufferPass();
50  void quadPass(int step, glm::mat4& vp);
55  void prepareRenderPass(int unit);
56 
60  glm::vec2 getDimension();
61 
66  GLuint getTextureHandle(int tex);
67 
72  GLuint getFBOHandle(int fbo);
73 
76  void clearBuffers();
77 
90  float cut;
91 private:
92  GLuint tex1, tex2, look_up_tex, target_tex, fbo1, fbo2, target_fbo;
93  int width, height, last_target;
94 };
Quad * quad
Definition: CutawaySurface.h:84
float cut
Definition: CutawaySurface.h:90
Quad class file.
Quad shader class file.
void init(int w, int h, float z_near, float z_far, float angle, float cut)
Definition: CutawaySurface.cpp:42
Definition: Quad.h:14
ZBufferShader * z_buffer_shader
Definition: CutawaySurface.h:81
void clearBuffers()
Definition: CutawaySurface.cpp:238
Definition: QuadShader.h:11
void endZBufferPass()
Definition: CutawaySurface.cpp:128
void prepareRenderPass(int unit)
Definition: CutawaySurface.cpp:191
Definition: CutawaySurface.h:14
glm::vec2 getDimension()
Definition: CutawaySurface.cpp:233
void prepareZBufferPass()
Definition: CutawaySurface.cpp:115
QuadShader * quad_shader
Definition: CutawaySurface.h:87
Definition: ZBufferShader.h:11
Z buffer shader class file.
GLuint getTextureHandle(int tex)
Definition: CutawaySurface.cpp:207
GLuint getFBOHandle(int fbo)
Definition: CutawaySurface.cpp:220
void quadPass(int step, glm::mat4 &vp)
Definition: CutawaySurface.cpp:135
void update(int w, int h, float z_near, float z_far, float angle, float c)
Definition: CutawaySurface.cpp:97