我不能找到从多个顶点缓冲器绘制是否被支撑在OpenGL ES 2.0的多的信息(即用于正常,颜色位置数据的一个顶点缓冲器和另一等)。这页http://developer.apple.com/library/ios/#documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/TechniquesforWorkingwithVertexData/TechniquesforWorkingwithVertexData.html和特别列表9.4意味着你应该能够,但我不能让它在我的程序上工作。代码有问题的绘图调用:的OpenGL ES 2.0,使用多个顶点绘图缓冲器
glBindBuffer(GL_ARRAY_BUFFER, mPositionBuffer->openglID);
glVertexAttribPointer(0, 4, GL_FLOAT, 0, 16, NULL);
glEnableVertexAttribArray(0);
glBindBuffer(GL_ARRAY_BUFFER, mTexCoordBuffer->openglID);
glVertexAttribPointer(1, 2, GL_FLOAT, 0, 76, NULL);
glEnableVertexAttribArray(1);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, mIndexBuffer->openglID);
glDrawElements(GL_TRIANGLES, 10788, GL_UNSIGNED_SHORT, NULL);
这场平局通话将模拟器失速或崩溃与EXC_BAD_ACCESS,并给出了设备上的非常怪异的行为(OpenGL的绘制随机三角形或呈现先前渲染的帧)。没有opengl调用会返回一个错误,我已经广泛地检查了顶点缓冲区,并确信它们具有正确的大小和数据。
有没有人成功地使用多个顶点缓冲区渲染并可以分享他们为什么这可能无法正常工作经验吗?任何信息在哪里开始调试停滞/失败绘制调用不返回任何错误代码将不胜感激。