https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glUseProgram.xhtml
名稱
glUseProgram ---- 安裝一個程序對象作爲當前渲染狀態的一部分。
原型
void glUseProgram(GLuint program);
參數
program
指定帶有可執行對象的程序對象句柄,用於當前渲染狀態的一部分。
描述
glUseProgram 安裝指定的 program 程序對象來作爲當前渲染狀態的一部分。使用 glAttachShader 來給創建的程序對象附加一個或多個 shader 對象,使用 glCompileShader 來編譯 shader獨享,使用 glLinkProgram 來鏈接程序對象。
如果 program 爲0,則當前渲染狀態是無效的程序對象,並且着色器執行是未確定的。然而,這還不是一個錯誤。
如果 program 沒包含 GL_FRAGMENT_SHADER
類型的 shader 對象,那麼 fragment shader 執行將會是爲確定的。
錯誤
如果 program 不是0但也不是OpenGL 生成的,則生成 GL_INVALID_VALUE
錯誤。
如果 program 不是程序對象,則生成 GL_INVALID_OPERATION
錯誤。
如果 program 不是當前狀態的一部分,則生成 GL_INVALID_OPERATION
錯誤。
如果 transform feedback 模式激活了,則生成 GL_INVALID_OPERATION
錯誤。