20 Shader(
string const & name);
36 GLint
uniform(
string const & name);
50 void uniform(
string const& name, mat4
const * values,
size_t const size) { glUniformMatrix4fv(
uniform(name),size,GL_FALSE,reinterpret_cast<float const *>(values)); }
57 void uniform(
string const& name, mat4
const & value) { glUniformMatrix4fv(
uniform(name),1,GL_FALSE,glm::value_ptr(value)); }
63 void uniform(
string const& name, mat3
const & value) { glUniformMatrix3fv(
uniform(name),1,GL_FALSE,glm::value_ptr(value)); }
69 void uniform(
string const& name, vec4
const & value) { glUniform4f(
uniform(name),value.x, value.y, value.z, value.w); }
75 void uniform(
string const& name, vec3
const & value) { glUniform3f(
uniform(name),value.x, value.y, value.z); }
81 void uniform(
string const& name, vec2
const & value) { glUniform2f(
uniform(name),value.x, value.y); }
87 void uniform(
string const& name,
float value) { glUniform1f(
uniform(name),value); }
93 void uniform(
string const& name,
int value) { glUniform1i(
uniform(name),value); }
99 void uniform(
string const& name, uint value) { glUniform1ui(
uniform(name),value); }
105 void uniform(
string const& name, uint16 value) { glUniform1ui(
uniform(name),value); }
114 int loadShader(
string const & file, GLenum shaderType);
124 static const uint
uv = 2;
145 Shader*
get(
string const & name);
void uniform(string const &name, int value)
map< string, unique_ptr< Shader > > m_shaders
static const uint boneWeight
void uniform(string const &name, mat4 const *values, size_t const size)
map< string, GLint > m_uniforms
void uniform(string const &name, vec4 const &value)
static const uint position
void uniform(string const &name, mat3 const &value)
void uniform(string const &name, uint value)
int loadShader(string const &file, GLenum shaderType)
void uniform(string const &name, float value)
void uniform(string const &name, vec3 const &value)
GLint uniformBlock(string const &name)
void uniform(string const &name, uint16 value)
void uniform(string const &name, mat4 const &value)
Shader(string const &name)
void uniform(string const &name, vec2 const &value)
GLint uniform(string const &name)