FloatBuffer和CharBuffer中的元素数量:capacity()vs limit()

时间:2014-04-28 08:43:24

标签: android opengl-es-2.0 nio

我正在学习一些Android的OpenGLES2教程。所有示例都使用直接缓冲区将3D几何图形传输到图形卡。 FloatBuffer用于顶点,法线和颜色,CharBuffer用于索引。

当涉及绘制实体或将它们发送到VBO时,我们首先需要确定缓冲区中的元素数量。我对如何操作感到有点困惑,因为有些教程使用limit()方法而其他教程使用capacity()。这是一个问题:

我应该使用FloatBufferCharBuffer的哪种方法来确定缓冲区中的元素数量?

1 个答案:

答案 0 :(得分:1)

  

一些教程使用了limit()方法

他们是对的。

  

而其他教程使用capacity()。

他们错了。如果缓冲区已满,那只会是正确的。