Этот вопрос, как и при любой проблеме оптимизации, попадает во много, но я просто не мог найти то, что я (думаю) хочу.
Много учебников, и даже вопросы SO имеют похожие советы; обычно покрывая:
- Использование GL-отбрасывания (функция OpenGL, а не логика сцены)
- Отправлять только 1 матрицу в графический процессор (комбинацию projectionModelView), поэтому уменьшать расчеты MVP от каждой вершины до одной модели (как и должно быть).
- Использование чередующихся вершин
- Свести к минимуму как можно больше вызовов GL, пакет, где это необходимо
И, возможно, несколько/много других. Я (по соображениям любопытства) представляю 28 миллионов треугольников в своем приложении, используя несколько вершинных буферов. Я пробовал все вышеперечисленные методы (насколько мне известно) и почти не изменил производительность.
Пока я получаю около 40FPS в моей реализации, что ни в коем случае не проблематично, мне все еще интересно, где эти "советы" для оптимизации действительно используются?
Мой процессор работает на холостом ходу около 20-50% во время рендеринга, поэтому я предполагаю, что я GPU привязан для повышения производительности.
Примечание: Я просматриваю gDEBugger в настоящий момент
Перекресток, размещенный в Разработка игр