23 GLuint shader = glCreateShader(kind);
24 glShaderSource(shader, 1, &src, NULL);
25 glCompileShader(shader);
27 GLint is_ok = GL_TRUE;
28 glGetShaderiv(shader, GL_COMPILE_STATUS, &is_ok);
29 if (is_ok != GL_TRUE) {
31 glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &length);
33 char *out = allocator_alloc_ty(
char, alloc, length);
34 glGetShaderInfoLog(shader, length, 0, out);
35 PANIC(
"Shader Compilation Failed: %s", out);
43 const char *fragment_src) {
60 GLint is_ok = GL_TRUE;
61 glGetShaderiv(shader->
gl_program, GL_LINK_STATUS, &is_ok);
62 if (is_ok != GL_TRUE) {
64 glGetShaderiv(shader->
gl_program, GL_INFO_LOG_LENGTH, &length);
66 char *out = allocator_alloc_ty(
char, alloc, length);
67 glGetShaderInfoLog(shader->
gl_program, length, 0, out);
68 PANIC(
"Shader Linking Failed: %s", out);