所以我创建了一个库来管理使用webgl缓冲的数据,它知道如何通过使用单个缓冲区来避免显卡上的内存分段,它知道如何找到最紧密的可用内存部分来重新填充新的对象被添加并知道如何,让我告诉它需要多大的缓冲区,必要时,如何将一部分内存复制到另一个有更多空间的地方,因为新的值被添加到向量中。 所以从外面我可以完全忘记垃圾收集,我可以调用像append这样的函数(只是将新值添加到数组中),以及另一个释放内存的函数。 然而 webgl目前不支持copyBufferSubData。 webgl2允许你这样做。我知道一个明显的解决方案是将矢量内容保存在主存储器和显卡存储器中,但我想知道是否有人知道一个不那么浪费的解决方案?
如果没有,我将在使用旧webgl时将向量存储在主存储器中,并为每种类型执行不同的操作。
答案 0 :(得分:0)
不,WebGL(以及GLES 2.0 for the mater)无法将缓冲区的内容复制回主内存或其他缓冲区。但是你可以建议具有这种能力的扩展。