diff --git a/FullScreenQuad.hpp b/FullScreenQuad.hpp index a56fc81..1c71077 100644 --- a/FullScreenQuad.hpp +++ b/FullScreenQuad.hpp @@ -1,33 +1,35 @@ #include - class FullScreenQuad { -private: + private: unsigned int vao; -public: + + public: FullScreenQuad(); - int getVAO() { return vao;} + int getVAO() { return vao; } }; -FullScreenQuad::FullScreenQuad(){ - float quadVertices[] = { // vertex attributes for a quad that fills the entire screen in Normalized Device Coordinates. - // positions // texCoords - -1.0f, 1.0f, 0.0f, 1.0f, - -1.0f, -1.0f, 0.0f, 0.0f, - 1.0f, -1.0f, 1.0f, 0.0f, +FullScreenQuad::FullScreenQuad() { + float quadVertices[] = {// vertex attributes for a quad that fills the + // entire screen in Normalized Device Coordinates. + // positions // texCoords + -1.0f, 1.0f, 0.0f, 1.0f, -1.0f, -1.0f, + 0.0f, 0.0f, 1.0f, -1.0f, 1.0f, 0.0f, + + -1.0f, 1.0f, 0.0f, 1.0f, 1.0f, -1.0f, + 1.0f, 0.0f, 1.0f, 1.0f, 1.0f, 1.0f}; - -1.0f, 1.0f, 0.0f, 1.0f, - 1.0f, -1.0f, 1.0f, 0.0f, - 1.0f, 1.0f, 1.0f, 1.0f - }; unsigned int vbo; glGenVertexArrays(1, &vao); glGenBuffers(1, &vbo); glBindVertexArray(vao); glBindBuffer(GL_ARRAY_BUFFER, vbo); - glBufferData(GL_ARRAY_BUFFER, sizeof(quadVertices), &quadVertices, GL_STATIC_DRAW); + glBufferData(GL_ARRAY_BUFFER, sizeof(quadVertices), &quadVertices, + GL_STATIC_DRAW); glEnableVertexAttribArray(0); - glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)0); + glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), + (void *)0); glEnableVertexAttribArray(1); - glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)(2 * sizeof(float))); + glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), + (void *)(2 * sizeof(float))); } diff --git a/main.cpp b/main.cpp index 9cd9fec..70ef718 100644 --- a/main.cpp +++ b/main.cpp @@ -1,29 +1,26 @@ +#include "FullScreenQuad.hpp" #include #include #include -#include "FullScreenQuad.hpp" - const char *vertexShaderSource = #include "fsq.vs" -; + ; const char *fragmentShaderSource = #include "sdf.fs" -; + ; /*void framebuffer_size_callback(GLFWwindow* window, int width, int height) { glViewport(0, 0, wdth, height); }*/ -void processInput(GLFWwindow *window) -{ - if(glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) +void processInput(GLFWwindow *window) { + if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) glfwSetWindowShouldClose(window, true); } - unsigned int compVertexShader() { unsigned int vertexShader; vertexShader = glCreateShader(GL_VERTEX_SHADER); @@ -38,20 +35,19 @@ unsigned int compFragmentShader() { glShaderSource(fragmentShader, 1, &fragmentShaderSource, NULL); glCompileShader(fragmentShader); + // Print shader comp error GLint isCompiled = 0; glGetShaderiv(fragmentShader, GL_COMPILE_STATUS, &isCompiled); - if(isCompiled == GL_FALSE) - { + if (isCompiled == GL_FALSE) { GLint maxLength = 0; glGetShaderiv(fragmentShader, GL_INFO_LOG_LENGTH, &maxLength); // The maxLength includes the NULL character - //std::vector errorLog(maxLength); - char * errorLog = new char[maxLength](); + // std::vector errorLog(maxLength); + char *errorLog = new char[maxLength](); glGetShaderInfoLog(fragmentShader, maxLength, &maxLength, errorLog); - printf("\nFrag Log: %s\n",errorLog); - + printf("\nFrag Log: %s\n", errorLog); } return fragmentShader; @@ -65,30 +61,27 @@ unsigned int compShader() { glAttachShader(shaderProgram, vert); glAttachShader(shaderProgram, frag); glLinkProgram(shaderProgram); - + glDeleteShader(vert); - glDeleteShader(frag); + glDeleteShader(frag); return shaderProgram; } - -void framebuffer_size_callback(GLFWwindow* window, int width, int height) -{ +void framebuffer_size_callback(GLFWwindow *window, int width, int height) { glViewport(0, 0, width, height); -} +} -int main(int argc, char** argv) { +int main(int argc, char **argv) { - GLFWwindow* window; + GLFWwindow *window; if (!glfwInit()) return -1; window = glfwCreateWindow(800, 600, "Hello World", NULL, NULL); - if (!window) - { + if (!window) { glfwTerminate(); return -1; } @@ -101,30 +94,25 @@ int main(int argc, char** argv) { return 1; } - glViewport(0, 0, 800, 600); - - glfwSetFramebufferSizeCallback(window, framebuffer_size_callback); + glfwSetFramebufferSizeCallback(window, framebuffer_size_callback); unsigned int shaderProgramm = compShader(); FullScreenQuad fsq{}; - while (!glfwWindowShouldClose(window)) - { + while (!glfwWindowShouldClose(window)) { processInput(window); /* Render here */ - glClearColor(0.2f, 0.3f, 0.3f, 1.0f); glClear(GL_COLOR_BUFFER_BIT); - glUseProgram(shaderProgramm); glDrawArrays(GL_TRIANGLES, 0, 3); - glBindVertexArray(fsq.getVAO()); + glBindVertexArray(fsq.getVAO()); glDrawArrays(GL_TRIANGLES, 0, 6); /* Poll for and process events */ @@ -135,4 +123,3 @@ int main(int argc, char** argv) { glfwTerminate(); } -