Files
untitled-game/inc/engine/shader.hpp
2025-11-24 09:22:10 +00:00

25 lines
631 B
C++

#ifndef SHADER_HPP
#define SHADER_HPP
#define GL_GLEXT_PROTOTYPES
// Includes
#include <SDL3/SDL_opengl.h>
#include <glm/glm.hpp>
#include <string>
// Shader class
class Shader {
public:
unsigned int ID;
Shader(const char* vertexPath, const char* fragmentPath);
void use() const;
void setBool(const std::string &name, bool value) const;
void setInt(const std::string &name, int value) const;
void setFloat(const std::string &name, float value) const;
void setMat4(const std::string &name, const glm::mat4 &mat) const;
~Shader();
private:
const char* read_file(const char* filePath);
};
#endif