//
// Created by sebastian on 09.02.26.
//

#include "GUIShader.h"

void GUIShader::loadTransformationMatrix(glm::mat4 matrix) {
    ShaderProgram::loadMatrix(location_transformationMatrix, matrix);
}

void GUIShader::loadShaderEffect(float brightness, glm::vec3 tintColor, float tintStrength) {
    ShaderProgram::loadFloat(location_brightness, brightness);
    ShaderProgram::loadVector(location_tintColor, tintColor);
    ShaderProgram::loadFloat(location_tintStrength, tintStrength);
}

void GUIShader::getAllUniformLocations() {
    location_transformationMatrix = ShaderProgram::getUniformLocation("transformationMatrix");

    location_brightness = ShaderProgram::getUniformLocation("brightness");
    location_tintColor = ShaderProgram::getUniformLocation("tintColor");
    location_tintStrength = ShaderProgram::getUniformLocation("tintStrength");
}

void GUIShader::bindAttributes() const {
    ShaderProgram::bindAttribute(0, "position");
}
