Я новичок в AR и OpenGL технологиях
Я нашел вот такой пример связки AR и OpenGL
https://github.com/google-ar/arcore-android-sdk/tree/master/samples/hello_ar_java
В примере есть обьяснение того как создать AR обьект и добавить его на экран
Что это означает - мы создаем (конфигурируем) AR object один раз и после того как он был добавлен на экран мы просто в методе onDrawFrame() перерисовываем его каждый фрейм (по `vertices tecCoords indices которые единожды были сформированы)
Тип даты вот такой
IntBuffer wideIndices = ObjData.getFaceVertexIndices(obj, 3);
FloatBuffer vertices = ObjData.getVertices(obj);
FloatBuffer texCoords = ObjData.getTexCoords(obj, 2);
Теперь, что мне нужно сделать - нужно сделать AR video. Это значит, что мне нужно каждый новый фрейм пересчитывать vertices tecCoords indices и отрисовывать их на экране.
У меня есть метод написаный на C++ который знает как каждый новый фрейм вернуть мне актуальные indices vertices texCoords в таком типе
List<float[]> vertices = new ArrayList<>();
List<float[]> texCoords = new ArrayList<>();
List<Integer> realIndices = new ArrayList<>();
Как вы видете тут есть не соответствие типов, так как в примере мы работаем с буферами а мой метод знает как вернуть списки.
Я вижу тут 2 возможных решения
1) найти возможность конвертировать List в Buffer (но сомневаюсь, что это подойдет...)
2) Найти позможность передать OpenGL как то свои данные в том типе который у меня есть
Так как впринципе это тот набор данных который и нужен OpenGL для того, чтоб построить AR object
Любые идеи приветствуются
Продвижение своими сайтами как стратегия роста и независимости