Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
uniforms.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 
6 
7 #ifndef BLAM
8 #define BLAM
9 #endif
10 
12 {
13  U_Float1,
14  U_Float2,
15  U_Float3,
16  U_Float4,
17 
18  U_Int1,
19  U_Int2,
20  U_Int3,
21  U_Int4,
22 
23  Undefined
24 };
25 
27 {
28 private:
30 
31 protected:
32  std::string name = "";
33  GLuint program_id = -1;
34  GLint uniform = -1;
35  bool valid = false;
36 
37 public:
38  BlamGLSLShaderUniform(GLuint _program_id, std::string _name, BlamShaderUniformType _type);
39 
41  std::string GetName();
42  bool IsValid();
43  void Prepare();
44 
45  virtual void Update();
46 };
47 
49 {
50 public:
51  float x = 0.0f;
52 
53  BlamShaderUniform1F(GLuint _program_id, std::string _name);
54 
55  void Update();
56 };
57 
59 {
60 
61 };
62 
64 {
65 
66 };
67 
69 {
70 
71 };
72 
73 
75 {
76  BLAM BlamGLSLShaderUniform* CreateShaderUniform(std::string name, BlamShaderUniformType type, GLuint program_id);
77 }
BlamShaderUniformType::U_Float3
@ U_Float3
BlamGLSLShaderUniform
Definition: uniforms.h:26
BlamGLSLShaderUniform::Prepare
void Prepare()
Definition: BlamGLSLShaderUniform.cpp:23
BlamShaderUniformType
BlamShaderUniformType
Definition: uniforms.h:11
BlamShaderUniform2F
Definition: uniforms.h:58
BlamShaderUniform1F
Definition: uniforms.h:48
BlamShaderUniform3F
Definition: uniforms.h:63
BlamShaderUniform4F
Definition: uniforms.h:68
BlamGLSLShaderUniform::valid
bool valid
Definition: uniforms.h:35
BlamGLSLShaderUniform::program_id
GLuint program_id
Definition: uniforms.h:33
rendering.h
Blam::Rendering::OpenGL
Definition: opengl.h:10
BlamShaderUniformType::U_Float1
@ U_Float1
Blam::Rendering::OpenGL::CreateShaderUniform
BLAM BlamGLSLShaderUniform * CreateShaderUniform(std::string name, BlamShaderUniformType type, GLuint program_id)
Definition: uniforms.cpp:5
BlamShaderUniformType::U_Int2
@ U_Int2
BLAM
#define BLAM
Definition: uniforms.h:8
BlamShaderUniform1F::Update
void Update()
Definition: BlamShaderUniform1F.cpp:11
BlamShaderUniformType::U_Float4
@ U_Float4
BlamGLSLShaderUniform::GetName
std::string GetName()
Definition: BlamGLSLShaderUniform.cpp:45
BlamGLSLShaderUniform::Update
virtual void Update()
Definition: BlamGLSLShaderUniform.cpp:40
BlamShaderUniform1F::x
float x
Definition: uniforms.h:51
BlamShaderUniform1F::BlamShaderUniform1F
BlamShaderUniform1F(GLuint _program_id, std::string _name)
Definition: BlamShaderUniform1F.cpp:6
BlamShaderUniformType::Undefined
@ Undefined
BlamShaderUniformType::U_Int3
@ U_Int3
BlamShaderUniformType::U_Float2
@ U_Float2
BlamGLSLShaderUniform::name
std::string name
Definition: uniforms.h:32
BlamGLSLShaderUniform::uniform
GLint uniform
Definition: uniforms.h:34
BlamShaderUniformType::U_Int1
@ U_Int1
BlamGLSLShaderUniform::GetType
BlamShaderUniformType GetType()
Definition: BlamGLSLShaderUniform.cpp:13
BlamGLSLShaderUniform::BlamGLSLShaderUniform
BlamGLSLShaderUniform(GLuint _program_id, std::string _name, BlamShaderUniformType _type)
Definition: BlamGLSLShaderUniform.cpp:6
BlamShaderUniformType::U_Int4
@ U_Int4
BlamGLSLShaderUniform::IsValid
bool IsValid()
Definition: BlamGLSLShaderUniform.cpp:18