https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glCompileShader.xhtml
名稱
glCompileShader ---- 編譯 shader 對象。
原型
void glCompileShader(GLuint shader);
參數
shader
指定要編譯的 shader 對象。
描述
glCompileShader 編譯指定的儲存有字符串源碼的 shader 對象。
編譯的狀態將會儲存在 shader 對象的狀態部分中。如果編譯 shader 沒有錯誤,可就緒使用,那麼狀態值將設置爲 GL_TRUE
,否則返回 GL_FALSE
。可以使用 glGetShader 函數帶上指定的 shader ID與 GL_COMPILE_STATUS
常量值。
shader 的編譯可能會由於不符合 OpenGL Shading Language Specification(OpenGL 着色器語言規範)的原因而失敗。編譯是否成功,相關的編譯信息可以通過調用 glGetShaderInfoLog來獲取 shader 對象的信息日誌。
錯誤
如果 shader 參數不是由 OpenGL 生成的,那麼生成 GL_INVALID_VALUE
錯誤。
如果 shader 參數不是 shader 對象,那麼生成 GL_INVALID_OPERATION
錯誤。