| 13 | #include <GLES2/gl2.h> |
| 14 | |
| 15 | GLuint compile_shader(GLenum shaderType, const char *src) { |
| 16 | GLuint shader = glCreateShader(shaderType); |
| 17 | glShaderSource(shader, 1, &src, NULL); |
| 18 | glCompileShader(shader); |
| 19 | |
| 20 | GLint isCompiled = 0; |
| 21 | glGetShaderiv(shader, GL_COMPILE_STATUS, &isCompiled); |
| 22 | if (!isCompiled) |
| 23 | { |
| 24 | GLint maxLength = 0; |
| 25 | glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &maxLength); |
| 26 | char *buf = (char*)malloc(maxLength); |
| 27 | glGetShaderInfoLog(shader, maxLength, NULL, buf); |
| 28 | printf("%s\n", buf); |
| 29 | free(buf); |
| 30 | return 0; |
| 31 | } |
| 32 | |
| 33 | return shader; |
| 34 | } |
| 35 | |
| 36 | GLuint create_program(GLuint vertexShader, GLuint fragmentShader) |
| 37 | { |