aboutsummaryrefslogtreecommitdiff
path: root/src/RenderBackend/OpenGL/Uniform.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2020-02-14 10:43:26 +0100
committerdec05eba <dec05eba@protonmail.com>2021-11-18 15:22:09 +0100
commit83c78e2b5cc9b0cb737ec3785722ae280bd29b65 (patch)
tree8c1f522bc19d4adc7df849fe09f8afc9513f9d65 /src/RenderBackend/OpenGL/Uniform.cpp
parent23a37b2cdd8ffde8bb85a4159888bf3a7ec35966 (diff)
Use shader from file..
Diffstat (limited to 'src/RenderBackend/OpenGL/Uniform.cpp')
-rw-r--r--src/RenderBackend/OpenGL/Uniform.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/RenderBackend/OpenGL/Uniform.cpp b/src/RenderBackend/OpenGL/Uniform.cpp
new file mode 100644
index 0000000..67cf3c6
--- /dev/null
+++ b/src/RenderBackend/OpenGL/Uniform.cpp
@@ -0,0 +1,24 @@
+#include "../../../include/RenderBackend/OpenGL/Uniform.hpp"
+#include "../../../include/RenderBackend/OpenGL/opengl.hpp"
+
+namespace amalgine {
+ Uniform::~Uniform() {}
+
+ void Uniform::set(const vec3f &value) {
+ use();
+ glUniform3f(uniform_id, value.x, value.y, value.z);
+ }
+
+ void Uniform::set(const glm::mat4 &value) {
+ use();
+ glUniformMatrix4fv(uniform_id, 1, GL_FALSE, glm::value_ptr(value));
+ }
+
+ Uniform::Uniform(i32 uniform_id, u32 shader_program_id) : uniform_id(uniform_id), program_id(shader_program_id) {
+
+ }
+
+ void Uniform::use() {
+ glUseProgram(program_id);
+ }
+} \ No newline at end of file