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

#ifndef GUISHADER_H
#define GUISHADER_H
#include "ShaderProgram.h"


class GUIShader: public ShaderProgram {
public:
    GUIShader() : ShaderProgram(VERTEX_FILE, FRAGMENT_FILE) {
        GUIShader::bindAttributes();
        GUIShader::getAllUniformLocations();
    };
    void loadTransformationMatrix(glm::mat4 matrix);

private:
    inline static const std::string VERTEX_FILE = "assets/shaders/guiVertexShader.glsl";
    inline static const std::string FRAGMENT_FILE = "assets/shaders/guiFragmentShader.glsl";

    int location_transformationMatrix;
protected:
    void getAllUniformLocations() override;
    void bindAttributes() const override;
};



#endif //GUISHADER_H
