Я использую GLES 3.0 в своем приложении для iOS, пытаюсь предварительно скомпилировать шейдерную программу GLSL, но когда я пытаюсь получить длину двоичного файла программы, вот так:
GLint len;
glGetProgramiv(programId, GL_PROGRAM_BINARY_LENGTH, &len);
len становится 0。, этомой код
GLint len;
glGetProgramiv(programId, GL_PROGRAM_BINARY_LENGTH, &len);
int binaryFormat;
glGetIntegerv(GL_PROGRAM_BINARY_FORMATS, &binaryFormat);
char *binary = malloc(len);
glGetProgramBinary(programId, len, &len, &binaryFormat, binary);
Я пытаюсь установить len = 1024, затем я получил glerror после glGetProgramBinary.У кого-нибудь есть идеи по этому поводу?