Volume Renderer DoF
DoFShader.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <iostream>
4 
5 #include "RENDER\global.h"
6 #include "RENDER\GLShader.h"
7 #include "RENDER\FBO.h"
8 
12 class DoFShader: public GLShader
13 {
14 public:
15  DoFShader();
16  ~DoFShader();
17 
25  void draw(FBO* fbo0, FBO* fbo1, float C, bool f2b);
26 
32  void loadDepth(float depthZCoord, float distance);
33 
39  void prepare(GLCamera& camera, const GLuint& quadVAO, const GLuint& volTEX);
40 
42  void cleanUp();
43 
45  void refresh();
46 
47 private:
48  void configShader() override;
49 
53  GLint depthCoord;
54 
58  GLint distance;
59 
64  GLint FRONT2BACK_Location;
65 
69  GLint circleOfConfLocation;
70 
74  GLint volumeTextureLocation;
75 
79  GLint previousTextureLocation;
80 
84  GLint tfFirstValueLocation[5];
85 
89  GLint tfSecondValueLocation[5];
90 
94  GLint tfOptValueLocation[5];
95 
99  GLint tfColorLocation[5];
100 
104  GLint numberOfTFLocation;
105 };
106 
void cleanUp()
Definition: DoFShader.cpp:93
~DoFShader()
Definition: DoFShader.cpp:45
DoFShader()
Definition: DoFShader.cpp:5
void prepare(GLCamera &camera, const GLuint &quadVAO, const GLuint &volTEX)
Definition: DoFShader.cpp:49
Definition: GLCamera.h:9
Definition: DoFShader.h:12
void refresh()
Definition: DoFShader.cpp:101
Definition: GLShader.h:10
Definition: FBO.h:7
void draw(FBO *fbo0, FBO *fbo1, float C, bool f2b)
Definition: DoFShader.cpp:68
void loadDepth(float depthZCoord, float distance)
Definition: DoFShader.cpp:87