5
OpenGL(特にOpenGL ES 2.0)では、新しいVBOがバインドされるたびにglVertexAttribPointerを呼び出す必要がありますか?私はglVertexAttribPointerを呼び出すために有するが、これはOpenGLで行うことがOKであれば、私は思ったんだけどない対処VAOsがあることを知っているglBindBufferが呼び出されるたびにglVertexAttribPointerが必要ですか?
glBindBuffer(GL_ARRAY_BUFFER, vertexBuffer1);
glVertexAttribPointer(ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, sizeof(vertexStruct), (void*)offsetof(vertexStruct,position));
glEnableVertexAttribArray(ATTRIB_POSITION);
glVertexAttribPointer(ATTRIB_COLOR, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(vertexStruct), (void*)offsetof(vertexStruct,color);
glEnableVertexAttribArray(ATTRIB_COLOR);
glDrawElements(GL_TRIANGLE_STRIP, sizeof(indices)/sizeof(GLubyte), GL_UNSIGNED_BYTE, (void*)0);
// If vertexBuffer2 has the exact same attributes as vertexBuffer1
// is this legal or do the calls to glVertexAttribPointer (and glEnableVertexAttribArray)
// required again?
glBindBuffer(GL_ARRAY_BUFFER, vertexBuffer2);
glDrawElements(GL_TRIANGLE_STRIP, sizeof(indices)/sizeof(GLubyte), GL_UNSIGNED_BYTE, (void*)0);
:たとえば
?あなたはこれをしなかった場合