6 GLuint gl_create_program_from_resource(
const char *vertex_resource,
const char *fragment_resource,
7 const char *geometry_resource);
9 void gl_show_error(
const std::string &s);
10 void gl_color_to_uniform_3f(GLuint loc,
const class Color &c);
11 void gl_color_to_uniform_4f(GLuint loc,
const class Color &c,
float alpha = 1);
13 #define GET_LOC(d, loc) \ 15 d->loc##_loc = glGetUniformLocation(d->program, #loc); \ 18 #define GET_LOC2(d, loc) \ 20 (d).loc##_loc = glGetUniformLocation((d).program, #loc); \ 23 #define GL_CHECK_ERROR \ 24 if (int e = glGetError()) { \ 25 std::stringstream ss; \ 26 ss << "gl error " << e << " in " << __FILE__ << ":" << __LINE__; \ 27 gl_show_error(ss.str()); \