#include "shader.hpp" void shader::linkshader() { glLinkProgram(shaderProgram); } void shader::attatchshader() { shaderProgram = glCreateProgram(); glAttachShader(shaderProgram, vertexShader); glAttachShader(shaderProgram, fragmentShader); if(geoshd){glAttachShader(shaderProgram, geometryShader);} } void shader::use() { glUseProgram(shaderProgram); } GLint shader::getInputId(std::string name) { return glGetProgramResourceLocation(shaderProgram, GL_PROGRAM_INPUT, name.c_str()); } GLint shader::getOutputId(std::string name) { return glGetProgramResourceLocation(shaderProgram, GL_PROGRAM_OUTPUT, name.c_str()); } GLint shader::getUniformId(std::string name){ return glGetProgramResourceLocation(shaderProgram, GL_UNIFORM, name.c_str()); }