Я инициализировал содержимое моего FloatBuffer
с массивом Float
один раз. И затем измените Floats
, который я вложил, я ожидаю, что он изменит и значения в FloatBuffer
, но я получаю странный результат.Можно ли изменить по ссылке содержимое FloatBuffer?
Я делаю неправильно? Можно ли это сделать?
EDIT: Моя ошибка, я понял, что Float неизменен, так что это нормальное поведение. Таким образом, мой вопрос будет, есть ли способ заполнить FloatBuffer изменчивыми флеш-оболочками, чтобы я мог легко изменить свой контент FloatBuffer по ссылке? Или есть ли более приятная альтернатива FloatBuffer для передачи данных OpenGL?
Это не то, что я хочу сделать. Я хочу поставить значение один раз и изменить значение, которое я установил извне, и изменить значение в FloatBuffer. Но я думаю, что это невозможно с FloatBuffers, поскольку они только сохраняют значения «float», и вы не можете сделать это с помощью примитивных типов, поэтому я не могу изменить их значение по ссылке – user2591935
FloatBuffers выделяют в родную память, где opengls нуждается в ее данные сохранены. Выделенная память сохраняется как массив, поэтому она является ссылкой. Если вы хотите, чтобы java-объект имел доступ к непосредственно встроенной памяти, я не думаю, что это возможно. – satm12