summaryrefslogtreecommitdiffstats
path: root/src/Shader.hpp
diff options
context:
space:
mode:
authorLaG1924 <lag1924@gmail.com>2021-11-19 20:29:28 +0100
committerLaG1924 <lag1924@gmail.com>2021-11-19 20:29:28 +0100
commit83c61036966c4c358a094cabe27c8de60082200d (patch)
tree6947537bd6af8a1e0d16de6a75f3e07f7db3b268 /src/Shader.hpp
parentAdded framebuffer to Gal (diff)
downloadAltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar.gz
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar.bz2
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar.lz
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar.xz
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.tar.zst
AltCraft-83c61036966c4c358a094cabe27c8de60082200d.zip
Diffstat (limited to 'src/Shader.hpp')
-rw-r--r--src/Shader.hpp60
1 files changed, 0 insertions, 60 deletions
diff --git a/src/Shader.hpp b/src/Shader.hpp
deleted file mode 100644
index 6b3220d..0000000
--- a/src/Shader.hpp
+++ /dev/null
@@ -1,60 +0,0 @@
-#pragma once
-
-#include <map>
-#include <vector>
-#include <string>
-
-#include <GL/glew.h>
-#include <glm/glm.hpp>
-#include <glm/gtc/type_ptr.hpp>
-
-class Shader {
- std::map<std::string, GLuint> uniforms;
- GLuint program = 0;
-
- GLuint GetUniformLocation(const std::string &name);
-
-public:
- Shader(const Shader &) = delete;
- Shader(Shader &&other) = delete;
- Shader &operator=(const Shader &) = delete;
- Shader &operator=(Shader &&other) = delete;
-
- Shader(const std::string &vertSource, const std::string &fragSource, const std::vector<std::string> &uniformsNames);
-
- ~Shader();
-
- void Activate();
-
- inline void SetUniform(const std::string& name, unsigned int val, unsigned int val2) {
- glUniform2ui(GetUniformLocation(name), val, val2);
- }
-
- inline void SetUniform(const std::string &name, int val) {
- glUniform1i(GetUniformLocation(name), val);
- }
-
- inline void SetUniform(const std::string& name, int val, int val2) {
- glUniform2i(GetUniformLocation(name), val, val2);
- }
-
- inline void SetUniform(const std::string &name, float val) {
- glUniform1f(GetUniformLocation(name), val);
- }
-
- inline void SetUniform(const std::string &name, glm::vec2 val) {
- glUniform2f(GetUniformLocation(name), val.x, val.y);
- }
-
- inline void SetUniform(const std::string &name, glm::vec3 val) {
- glUniform3f(GetUniformLocation(name), val.x, val.y, val.z);
- }
-
- inline void SetUniform(const std::string &name, glm::vec4 val) {
- glUniform4f(GetUniformLocation(name), val.x, val.y, val.z, val.w);
- }
-
- inline void SetUniform(const std::string &name, glm::mat4 val) {
- glUniformMatrix4fv(GetUniformLocation(name), 1, GL_FALSE, glm::value_ptr(val));
- }
-}; \ No newline at end of file