8 #ifndef GlobalIllumination_hpp     9 #define GlobalIllumination_hpp    12 #include "RenderSystem.hpp"    13 #define GLFW_INCLUDE_NONE    14 #include <GLFW/glfw3.h>    16 #define VPLRESOLUTION 128    17 #define WRITEFRAMES true    27     void init(GLFWwindow* window);
    31     void initGeometryBuffer();
    32     void initCustomShaderBuffer();
    33     void initRenderBuffer();
    34     void initCompositeBuffer();
    36     const std::string& getOutputDir()
 const {
return(mOutputDir);}
    37     void setOutputDir(
const std::string& aOutputDir) {mOutputDir = aOutputDir;}
    39     void process(
Scene& scene);
    43     void geometryPass(
Program& geometryShader, 
Scene& scene);
    45     void customShaderPass(
Program &toonShader, 
Scene &scene);
    51     glm::mat4 getLightProjMatrix();
    52     glm::mat4 getLightViewMatrix(glm::vec3 position, glm::vec3 direction, glm::vec3 up);
    53     glm::mat4 getProjectionMatrix();
    54     glm::mat4 getViewMatrix(vec3 position, vec3 lookat);
    58     std::string mOutputDir = 
"./frames/";
    62     bool firstTime = 
true;
    70     GLuint VPLBuffer[6], VPLdepthBuf[6];
    71     GLuint VPLpositions[6], VPLcolors[6];
    74     GLuint geometryBuffer;
    75     GLuint gNormals, gPositions, gDepth, baseColors;
    78     GLuint notGIPositions;
    81     GLuint quad_VertexArrayID;
    82     GLuint quad_vertexbuffer;
    85     GLuint customShaderFBO;
    86     GLuint customShaderTexture;
    87     GLuint customShaderDepthBuf;
    95     GLuint compositeTexture;
    96     GLuint compositeDepthBuf;
 
Definition: drawable.hpp:8
Definition: RenderSystem.hpp:10
Definition: EntitiesBase.hpp:18
Definition: GlobalIllumination.hpp:20