77 const GLuint program = glCreateProgram();
79 for (
int i = 0; i < 2; i++) {
80 const GLuint shader = glCreateShader(shaders[i].type);
82 string source_str = shaders[i].source;
83 const char *c_str = source_str.c_str();
85 glShaderSource(shader, 1, &c_str,
NULL);
86 glCompileShader(shader);
89 glGetShaderiv(shader, GL_COMPILE_STATUS, &compile_status);
91 if (!compile_status) {
94 glGetShaderInfoLog(shader,
sizeof(
log), &length,
log);
99 glAttachShader(program, shader);
103 glBindFragDataLocation(program, 0,
"fragColor");
106 glLinkProgram(program);
109 glGetProgramiv(program, GL_LINK_STATUS, &link_status);
113 glGetShaderInfoLog(program,
sizeof(
log), &length,
log);