opengl中的多个动态模型数据

时间:2013-11-06 23:54:11

标签: opengl

所以我一直在做一点OpenGL。版本3.3。它一直很好。但是,有一个问题我无法想到答案:如何支持一个系统,其中存在未定义数量的未定义数据的模型。我的意思是一个例子,比如有一个模型,你想把它砍成两半。将创建两个新对象,每个对象用于模型的每一半。创建新对象是微不足道的(生成切割网格有点困难)。

我不认为是微不足道的,因为我不知道该怎么做,是将新的网格数据发送给OpenGL。不可能只更新原始对象的VBO,因为现在需要有两个VBO。使用glGenBuffers()可以轻松地生成缓冲区。但是,在https://stackoverflow.com/a/10769008/2159051中,提到genBuffers,deleteBuffers在运行时调用很糟糕。

简而言之,做动态数量的对象的正确方法是什么,每个对象都有不同的数据。

1 个答案:

答案 0 :(得分:2)

在运行时调用glGenBuffers,glDeleteBuffers和glBufferData是完全可能的。唯一的麻烦是,如果他们被要求每一帧。如果您碰巧只执行偶尔的数据更新,则可以使用它们。