名称
glProgramBinary —使用程序二进制文件加载程序对象
C规范
void glProgramBinary( GLuint program,
GLenum binaryFormat,
const void *binary,
GLsizei length);
参数
program
指定要将程序二进制文件加载到其中的程序对象的名称。
binaryFormat
用二进制指定二进制数据的格式。
binary
指定包含要加载到程序中的二进制文件的数组的地址。
length
指定二进制文件中包含的字节数。
描述
glProgramBinary使用先前从glGetProgramBinary返回的程序二进制文件加载程序对象。 binaryFormat和binary必须是先前调用glGetProgramBinary所返回的二进制格式,而length必须是glGetProgramBinary或glGetProgramiv返回的长度(在将pname设置为GL_PROGRAM_BINARY_LENGTH时调用)。如果不满足这些条件,则加载程序二进制文件将失败,并且程序的GL_LINK_STATUS将设置为GL_FALSE。
程序对象的程序二进制文件由对glLinkProgram或glProgramBinary的调用替换。当考虑链接成功或失败时,可以考虑使用glProgramBinary执行隐式链接操作。 glLinkProgram和glProgramBinary都将程序对象的GL_LINK_STATUS设置为GL_TRUE或GL_FALSE。
成功调用glProgramBinary会将所有统一变量重置为其初始值,GL_FALSE表示布尔值,其他所有值