glInterleavedArrays() generates GL_INVALID_FRAMEBUFFER_OPERA

glInterleavedArrays() generates GL_INVALID_FRAMEBUFFER_OPERATION

本文关键字:INVALID OPERA FRAMEBUFFER GL generates glInterleavedArrays      更新时间:2023-10-16

当我尝试使用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);

此代码怎么了?

update

glCheckFramebufferStatus(GL_DRAW_FRAMEBUFFER)glCheckFramebufferStatus(GL_READ_FRAMEBUFFER )都返回GL_FRAMEBUFFER_COMPLETE

您确定这是因为交错数组吗?有许多无效的Framebuffer操作的原因。但这似乎是一个不太可能的原因。

即使帧缓冲器完成,它仍然可以生成无效的操作,例如在没有模板缓冲区的情况下启用模板。

您可以很容易地复制带有常规的阵列。错误是否持续存在?