我应该在OpenGL中使用具有最大限制的数组或用于顶点批处理的ArrayList吗?

时间:2018-04-06 07:00:19

标签: arrays data-structures opengl-es-2.0

我正在尝试批量游戏中对象的顶点,并通过一次绘制调用绘制它们。但是,我不知道我手绘的这些物体有多少,因此顶点的数量是未知的。

我应该使用大尺寸的数组还是只使用List?在使用数组时,我的性能会有所提升,但是大小可能比我真正需要的更多,这可能会导致更高的内存使用量。

谢谢!

1 个答案:

答案 0 :(得分:1)

动态数组大小调整的一种可能方法是数组加倍

每次需要增加数组大小时,请重新分配其当前大小的两倍。 从较小的值开始,例如16 = 2^4(或适合您用例的那个)。

如果你现在有513 = 2^9+11024 = 2^10个顶点,那么阵列增加操作最多被调用六次。