Очко принято. В настоящее время я использую прямой байтовый буфер прямого порядка для всего, что, по моему мнению, буферизировалось в OpenGL при использовании, но, возможно, я ошибаюсь. Код установки выглядит следующим образом:
ByteBuffer bufTCDirect;
bufTCDirect = ByteBuffer.allocateDirect( aNumElements * 2 * ( Float.SIZE >> 3 ) );
bufTCDirect.order( ByteOrder.nativeOrder() );
FloatBuffer bufTC;
bufTC = bufTCDirect.asFloatBuffer();
bufTC.clear();
bufTC.put(tcArrayFromFile); // a float[] array loaded from the model file
bufTC.position(0);
Позже все, что я делаю, когда мне говорят, чтобы выгрузить, это:
this.bufTC = null;
this.bufTCDirect = null;
Мне кажется, это правильно, как будто это на стороне клиента, сборщик мусора позаботится обо всем этом?