1
0
Fork 0
This repository has been archived on 2023-03-27. You can view files and clone it, but cannot push or open issues or pull requests.
matabstrix/src/executable.cpp

35 lines
617 B
C++

#include "executable.hpp"
Executable::Executable()
{
id = glCreateProgram();
}
void Executable::attach_shader(const Shader &shader)
{
glAttachShader(id, shader.id());
}
void Executable::bind_attrib_location(GLuint index, const GLchar *name)
{
glBindAttribLocation(id, index, name);
}
void Executable::link()
{
glLinkProgram(id);
}
void Executable::use() const
{
glUseProgram(id);
}
void Executable::get_uniforms(unsigned count, const GLchar *const names[])
{
uniforms.resize(count);
for (unsigned index = 0; index < count; ++index)
uniforms[index] = glGetUniformLocation(id, names[index]);
}