aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/render/Shader.cpp
blob: b494d79da92c848340427224fc374b6205a0b71a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "Shader.hpp"

GLint CShader::getUniformLocation(const std::string& unif) {
    const auto itpos = m_muUniforms.find(unif);

    if (itpos == m_muUniforms.end()) {
        const auto unifLoc = glGetUniformLocation(program, unif.c_str());
        m_muUniforms[unif] = unifLoc;
        return unifLoc;
    }

    return itpos->second;
}

CShader::~CShader() {
    destroy();
}

void CShader::destroy() {
    glDeleteProgram(program);

    program = 0;
}