OpenGL: лучше ли рисовать пакетно или иметь статические VBO

Что предпочтительнее с точки зрения эффективности (или с другой точки зрения, если это важно)?

Ситуация
Приложение OpenGL, которое рисует много линий в разных позициях в каждом кадре (60 кадров в секунду) . Допустим, есть 10 строк. Или 100 000 строк. Будет ли ответ быть другим?

  • # 1 Имейте статический VBO, который никогда не изменяется, содержащий 2 вершины строки

Каждый кадр будет иметь один вызов glDrawArrays на строку для рисования, а между ними будет матрица преобразования для позиционирования нашей одной строки

  • # 2 Обновить VBO данными для всех строк каждый кадр

Каждый кадр будет иметь один вызов отрисовки

18
задан mk12 24 September 2011 в 04:24
поделиться