rename .hpp headers to .h
This commit is contained in:
41
engine/shader.h
Normal file
41
engine/shader.h
Normal file
@@ -0,0 +1,41 @@
|
||||
#pragma once
|
||||
#include "util.h"
|
||||
|
||||
enum class kShaderUniform : uint16_t
|
||||
{
|
||||
MVP = const_hash("mvp"),
|
||||
Tex = const_hash("tex"),
|
||||
Col = const_hash("col"),
|
||||
};
|
||||
|
||||
class Shader
|
||||
{
|
||||
std::map<kShaderUniform, GLuint> m_umap;
|
||||
GLuint prog;
|
||||
public:
|
||||
bool create(const char* vertex, const char* fragment);
|
||||
void use();
|
||||
void u_vec4(kShaderUniform id, const glm::vec4& v);
|
||||
void u_mat4(kShaderUniform id, const glm::mat4& m);
|
||||
void u_int(kShaderUniform id, int i);
|
||||
};
|
||||
|
||||
enum class kShader : uint16_t
|
||||
{
|
||||
Color = const_hash("color"),
|
||||
Texture = const_hash("texture"),
|
||||
UVs = const_hash("uvs"),
|
||||
};
|
||||
|
||||
class ShaderManager
|
||||
{
|
||||
static std::map<kShader, Shader> m_shaders;
|
||||
static Shader* m_current;
|
||||
public:
|
||||
static bool create(kShader id, const char* vertex, const char* fragment);
|
||||
static void use(kShader id);
|
||||
static void use(const char* name);
|
||||
static void u_vec4(kShaderUniform id, const glm::vec4& v);
|
||||
static void u_mat4(kShaderUniform id, const glm::mat4& m);
|
||||
static void u_int(kShaderUniform id, int i);
|
||||
};
|
||||
Reference in New Issue
Block a user