代码核心(显示红色矩形):
//bind program, set uniforms, bind vbo
glEnableVertexAttribArray(0);
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0,0);
glDrawArrays(GL_TRIANGLES, 0, 6);
glDisableVertexAttribArray(0);
//unbind vbo, unbind program
当我将上下文切换到 OpenGL 3.x 时,此代码停止工作(我只能看到背景颜色),但是当我以与上面代码相同的方式初始化 VAO 然后我绑定 VAO 并调用 glDrawArrays 时,然后它工作。
可能是什么问题呢?如何在不使用 VAO 的情况下绘制 VBO?
(着色器非常简单,与仅乘矩阵和 ps 输出红色相比)