高效的dynamic内存管理

我的世界是由程序产生的。 随着玩家的移动,他们身后的块被卸载,在他们面前的块被加载。 每个块都有一个三角形的网格。

目前,我们为每个块(顶点和颜色)创建两个VBO,当块加载时。 一旦创建了网格,它每隔几秒只编辑一次。 这些缓冲区在块不再可见时被删除。

我在这里通过不断创建和销毁缓冲区来泄漏内存吗?

我听说OpenGL(或本例中的WebGL)在程序退出之前不会执行垃圾收集,因为速度很慢。 这是正确的吗?

我能不能改进这个系统?

deleteBuffer将删除WebGL(和OpenGL)中的缓冲区,但我只是好奇,是否有任何理由不重新使用相同的缓冲区只是把新的数据呢? (例如有一个缓冲池?)