我在函数中创建了一个 VBO,我只想返回 VBO id。
我在另一个函数中使用 glDrawArrays,我希望它绘制 VBO 中的所有顶点,而无需同时传递顶点数。VBO 还包含纹理坐标数据。
谢谢你。
我在函数中创建了一个 VBO,我只想返回 VBO id。
我在另一个函数中使用 glDrawArrays,我希望它绘制 VBO 中的所有顶点,而无需同时传递顶点数。VBO 还包含纹理坐标数据。
谢谢你。
你需要退货,对不起。关于 VBO 的数据可能位于远离 CPU 的某个地方并且访问速度很慢,因此您需要将所需的任何数据保存在本地。
也许它对您的应用程序没有用,您可以使用带有参数GL_BUFFER_SIZE的 glGetBufferParameteriv:它返回缓冲区对象的字节数。
很难说这是解决方案,因为您应该知道缓冲区元素的内部格式(实际上,它的大小以字节为单位),以便获得组成缓冲区对象的元素数量。
当然,最好的解决方案是将大多数信息保存在代表缓冲区对象的类中,但正如我从您的问题中理解的那样,这很难实现。