#include "graphics.hpp" #include #include using namespace std; string ShaderProgram::baseName() { switch (this->base) { case Empty: return "Empty"; case Triangle: return "Triangle"; } } ShaderProgram::ShaderProgram(Base base, string vertexFile, string fragFile) { } void framebuffer_size_callback(GLFWwindow *window, int width, int height) { glViewport(0, 0, width, height); } int mainWindow(ShaderProgram shaderProgram) { /* graphics stuff */ glfwInit(); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); // glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); GLFWwindow *window = glfwCreateWindow(800, 600, "Shader Loader", NULL, NULL); if (window == NULL) { printf("Failed to create GLFW window\n"); glfwTerminate(); return -1; } glfwMakeContextCurrent(window); if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)) { printf("Failed to initialize GLAD\n"); return -1; } glfwSetFramebufferSizeCallback(window, framebuffer_size_callback); int result = shaderProgram.run(); glfwTerminate(); return result; }