Improved Binding of textures

This commit is contained in:
Robert 2021-01-21 16:27:41 +01:00
parent 8174ebaee4
commit f1f076acf4
5 changed files with 27 additions and 4 deletions

View file

@ -40,6 +40,7 @@ namespace oglu
glGetShaderInfoLog(vertexShader, 512, NULL, infoLog);
std::string err = ("Failed to compile shader " + std::string(vertexShaderFile) + "\n" + infoLog);
delete source;
glDeleteShader(vertexShader);
throw std::runtime_error(err);
}
delete source;
@ -57,6 +58,8 @@ namespace oglu
glGetShaderInfoLog(fragmentShader, 512, NULL, infoLog);
std::string err = ("Failed to compile shader " + std::string(fragmentShaderFile) + "\n" + infoLog);
delete source;
glDeleteShader(vertexShader);
glDeleteShader(fragmentShader);
throw std::runtime_error(err);
}
delete source;
@ -72,6 +75,9 @@ namespace oglu
{
glGetProgramInfoLog(program, 512, NULL, infoLog);
std::string err = ("Failed to link program.\n" + std::string(infoLog));
glDeleteShader(vertexShader);
glDeleteShader(fragmentShader);
glDeleteProgram(program);
throw std::runtime_error(err);
}

View file

@ -68,6 +68,12 @@ namespace oglu
glBindTexture(GL_TEXTURE_2D, texture);
}
void AbstractTexture::BindAs(GLbyte index)
{
glActiveTexture(GL_TEXTURE0 + index);
glBindTexture(GL_TEXTURE_2D, texture);
}
void AbstractTexture::Unbind()
{
glBindTexture(GL_TEXTURE_2D, 0);