OpenGLES20 и Wavefront — слишком высокие значения для краткости?

Пытаясь проанализировать файл OBJ (wavefront), чтобы нарисовать его в OpenGL ES20, я столкнулся с проблемой, которую не знаю, как решить/решить:

В файле ровно 50 000 (50 000) вершин, и все они используются в гранях. Когда я загружаю объект, я разбираю лица в индексы, которые должны быть UNSIGNED_SHORT, что, к сожалению, недоступно в Java, я использую Shorts, которые заканчиваются примерно на 32k. Поскольку у меня больше вершин и граней, я получаю исключение NumberFormatException.

Как мне решить эту проблему, не удаляя вершины? Любой обходной путь?


person damian    schedule 07.03.2014    source источник


Ответы (1)


Какую библиотеку вы используете, которая предоставляет OpenGL API без поддержки этого? Если это просто числовая проблема, вы можете уйти от нее, так или иначе используя число, используя тот же подход, который обсуждался в java opengl: glDrawElements() с ›32767 вершинами

person Prabindh    schedule 07.03.2014
comment
Привет, я использую собственную оболочку/фреймворк OpenGL ES2.0 для Android. Я думаю, короткого трюка здесь будет достаточно, спасибо. - person damian; 13.03.2014