当我尝试使用glInterleavedArrays()时,我总是会收到“GL_INVALID_FRAMEBUFFER_OPERATION”错误。
GLuint bufid;
glGenBuffers(1, &bufid);
glBindBuffer(GL_ARRAY_BUFFER, bufid);
glInterleavedArrays(GL_C4F_N3F_V3F, 0, 0);
glBindBuffer(GL_ARRAY_BUFFER, 0);
这段代码出了什么问题?
更新
glCheckFramebufferStatus(GL_DRAW_FRAMEBUFFER)
和glCheckFramebufferStatus(GL_READ_FRAMEBUFFER )
都返回GL_FRAMEBUFFER_COMPLETE
。
答案 0 :(得分:1)
你确定这是因为交错阵列吗?无效帧缓冲操作有很多原因。但这似乎是一个不太可能的原因。
即使帧缓冲完成,它仍然可以生成无效操作,例如在没有模板缓冲区的情况下启用模板。
您可以非常轻松地使用常规数组复制交错数组。错误是否仍然存在?