-
Notifications
You must be signed in to change notification settings - Fork 2
/
shaderlibrary.h
50 lines (37 loc) · 1.06 KB
/
shaderlibrary.h
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#ifndef SHADER_LIBRARY_H
#define SHADER_LIBRARY_H
#include <map>
#include <string>
#include <stdexcept>
#include "Shaders.hpp"
using namespace std;
class ShaderLibrary {
public:
ShaderLibrary();
~ShaderLibrary();
///!Hamdy
static void initializeShaders();
//Phong
static Shader PhongShader;
static Shader * GetPhongShader();
//Shadow
static Shader simpleDepthShader;
static Shader * GetsimpleDepthShader();
//TextureToScreen
static Shader TexToScreen;
static Shader * GetTexToScreen();
//cubeMapShader
static Shader cubeMapShader;
static Shader * GetcubeMapShader();
//BoundingBox render
static Shader BoundingboxShader;
static Shader * GetBoundingboxShader();
//MessagesShader
static Shader MessagesShader;
static Shader * GetMessagesShader();
void AddShader(string shaderName, Shader * shader);
Shader* GetShader(string shaderName) const;
private:
map<string, Shader*> shaders;
};
#endif