На OpenGL ES 1.0 на Android быстрее рисуется объект - PullRequest
0 голосов
/ 05 июля 2018

Я работаю над проектом на основе OpenGL ES 1.0, который рисует много квадратов и имеет разные цвета.

Я много чего сделал для оптимизации кодов прорисовки, например, отключил свет или отключил DEPTH_TEST, включил CULL_FACE и т. Д.

Но я не могу найти больше решений, чтобы нарисовать один кадр быстрее, чтобы нарисовать около 38000 квадратных объектов. Есть ли какие-либо решения, которые рисуют много объектов быстрее, или библиотека интерполяции в ES 1.0? Я застрял здесь на долгое время.

1 Ответ

0 голосов
/ 09 июля 2018

OpenGL ES 1.x является относительно старым API и имеет множество ограничений, одним из которых является относительно высокая загрузка ЦП. Я настоятельно рекомендую использовать OpenGL ES 2.0 или новее, как с точки зрения производительности, так и с точки зрения совместимости на будущее.

Если вы должны использовать OpenGL ES 1.x, вам действительно нужно использовать объекты буфера вершин. Смотрите этот пост для более подробной информации:

Рисование с использованием объектов буфера вершин в OpenGL ES 1.1 против ES 2.0

... и пакетируйте свои меши, чтобы уменьшить количество уникальных вызовов, которые вы делаете

...