// This file is part of libigl, a simple c++ geometry processing library. // // Copyright (C) 2013 Alec Jacobson // // This Source Code Form is subject to the terms of the Mozilla Public License // v. 2.0. If a copy of the MPL was not distributed with this file, You can // obtain one at http://mozilla.org/MPL/2.0/. #include "load_shader.h" // Copyright Denis Kovacs 4/10/08 #include "print_shader_info_log.h" #include IGL_INLINE GLuint igl::opengl::load_shader(const char *src,const GLenum type) { GLuint s = glCreateShader(type); if(s == 0) { fprintf(stderr,"Error: load_shader() failed to create shader.\n"); return 0; } // Pass shader source string glShaderSource(s, 1, &src, NULL); glCompileShader(s); // Print info log (if any) igl::opengl::print_shader_info_log(s); return s; }