32 OcclusionDirections = 10,
39 AmbientIntensity = 17,
47 Shader(
const string &path);
57 glUseProgram(_program);
67 return glGetAttribLocation(_program, name.c_str());
72 return glGetUniformLocation(_program, name.c_str());
79 glBindFragDataLocation(_program, 0, name.c_str() );
93 GLuint _vertex_shader;
94 GLuint _fragment_shader;
95 GLuint _shadow_shader;
96 GLuint _geometry_shader;
99 std::map<int, GLuint> _shaderAddresses;
101 GLuint compile(GLenum type,
const string &source);
103 void shader_log(GLuint shader);
104 void program_log(GLuint program);
105 void GenerateAddresses(
void);
108 #endif //#ifndef _SHADER_HPP_