#pragma once class Shader { public: unsigned int id; Shader(const char* vertex_path, const char* fragment_path); void use(void); void set_mat4(const char* name, const float* value); void set_vec3(const char* name, float v1, float v2, float v3); void set_int(const char* name, int value); private: void _check_compile_errors(unsigned int shader, const char* type); };