summaryrefslogtreecommitdiffhomepage
path: root/src/shader.hpp
blob: 7e4f25df7a7412144b0445537476583c996d8289 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#pragma once

#include <string>

#include "glad/glad.h"

class Shader
{
	public:
		// id of the shader program
		unsigned int ID;

		Shader(const char* vertexPath, const char* fragmentPath);

		// activate the shader
		void use();

		// utility functions for uniforms
		void setBool(const std::string &name, bool value) const;
		void setInt(const std::string &name, int value) const;
		void set1f(const std::string &name, float value) const;
		void set4f(
				const std::string &name,
				float value0,
				float value1,
				float value2,
				float value3
				) const;
};