如果您使用
ByteBuffer buffer = ByteBuffer.wrap(data);
缓冲区不是“
direct”的。
您必须使用
BufferUtils.createByteBuffer:
ByteBuffer buffer = BufferUtils.createByteBuffer(data.length);buffer.put(data);buffer.flip();
说明:
BufferUtils.createByteBuffer分配具有指定容量的直接按本机排序的字节缓冲区。
put(vboData)从当前位置(在这种情况下为缓冲区的开始)开始,将数据传输到缓冲区。缓冲区位置增加数据的大小。因此,新的缓冲区位置在新数据的末尾。
flip()将缓冲区的限制(长度)设置为当前位置,然后将该位置设置为零。



