2018-09-05 06:49:02 +00:00
|
|
|
#include "ShaderProgram.h"
|
|
|
|
|
|
|
|
ShaderProgram::ShaderProgram()
|
|
|
|
{
|
|
|
|
m_program = glCreateProgram();
|
|
|
|
}
|
|
|
|
|
|
|
|
ShaderProgram::~ShaderProgram()
|
|
|
|
{
|
|
|
|
glDeleteProgram(m_program);
|
|
|
|
}
|
|
|
|
|
|
|
|
void ShaderProgram::attach_shader(const Shader& shader)
|
|
|
|
{
|
|
|
|
glAttachShader(m_program, shader.get_shader());
|
|
|
|
}
|
|
|
|
|
|
|
|
void ShaderProgram::link()
|
|
|
|
{
|
|
|
|
glLinkProgram(m_program);
|
|
|
|
// TODO: Error handling
|
|
|
|
}
|
|
|
|
|
2018-09-05 20:26:50 +00:00
|
|
|
void ShaderProgram::use() const
|
2018-09-05 06:49:02 +00:00
|
|
|
{
|
|
|
|
glUseProgram(m_program);
|
|
|
|
}
|
|
|
|
|
|
|
|
GLuint ShaderProgram::get_program() const
|
|
|
|
{
|
|
|
|
return m_program;
|
|
|
|
}
|