i生成了一个称为 object_A
的VBO缓冲区(顶点缓冲区(对象假设object_A
包含10个顶点(30个浮子(。现在我想使用glMapBuffer
更新object_A
20个顶点(60浮子(,我可以使用glMapBuffer
?
您不能使用glMapBuffer()
,这只是用于将缓冲区的数据映射到客户端地址空间中。
如果要调整缓冲区大小,则必须使用glBufferData()
。
glBufferData(GL_ARRAY_BUFFER, 60 * sizeof(GLfloat), NULL, GL_DYNAMIC_DRAW);
如果是因为您想要类似于realloc()
的东西(重新定位缓冲区,保留旧内容(。然后,您可以使用glCopyBufferSubData()
并在缓冲区之间复制数据。