ShadowShader::ShadowShader(): ShaderProgram("./Resources/shaders/shadowshader") { bindAttributes(); glLinkProgram(_programID); glValidateProgram(_programID); getAllUniformLocations(); }
void BasicTexturedShader::installShader(){ vertexShaderID = glCreateShader(GL_VERTEX_SHADER); fragmentShaderID = glCreateShader(GL_FRAGMENT_SHADER); const GLchar* adapter[1]; std::string temp = readShaderCode("src/Engine/Shader/GLSL/BasicTexturedShaderVertexShader.glsl").c_str(); adapter[0] = temp.c_str(); glShaderSource(vertexShaderID, 1, adapter, 0); temp = readShaderCode("src/Engine/Shader/GLSL/BasicTexturedShaderFragmentShader.glsl").c_str(); adapter[0] = temp.c_str(); glShaderSource(fragmentShaderID, 1, adapter, 0); glCompileShader(vertexShaderID); glCompileShader(fragmentShaderID); if (!checkShaderStatus(vertexShaderID) | !checkShaderStatus(fragmentShaderID)){ return; } programID = glCreateProgram(); glAttachShader(programID, vertexShaderID); glAttachShader(programID, fragmentShaderID); glLinkProgram(programID); glValidateProgram(programID); if (!checkProgramStatus(programID)){ return; } getAllUniformLocations(); }
ShaderProgram::ShaderProgram(const char* vertexFname, const char* fragmentFname) { mProgramId = glCreateProgram(); mVertexShaderId = loadShader(vertexFname, GL_VERTEX_SHADER); mFragmentShaderId = loadShader(fragmentFname, GL_FRAGMENT_SHADER); bindAttributes(); glLinkProgram(mProgramId); glValidateProgram(mProgramId); getAllUniformLocations(); }
StaticShader::StaticShader() : ShaderProgram("src/shaders/vert_pokemon.glsl", "src/shaders/frag_pokemon.glsl") { getAllUniformLocations(); }
SkyboxShader::SkyboxShader() : ShaderProgram("src/shaders/vert_skybox.glsl", "src/shaders/frag_skybox.glsl") { getAllUniformLocations(); }
PostProcessPassShader::PostProcessPassShader(void) : ShaderProgram("Content//shader//basic.vertexshader", "Content//shader//PostProcessPass.fragmentshader") { getAllUniformLocations(); }
StaticShaders::StaticShaders(void) : ShaderProgram("Shader//comg.vertexshader","Shader//fog.fragmentshader") { getAllUniformLocations(); }
GausianBlurShader::GausianBlurShader(void) : ShaderProgram("Content//shader//basic.vertexshader", "Content//shader//Gausian1DShader.fragmentshader") { getAllUniformLocations(); }