Предположим, у меня есть сотни прямоугольников на моей сцене. Каждый из них меняется каждый кадр:Обновить VBO или использовать форму?
- они двигаются над сценой, они вращаются, масштабирование вверх/вниз изменения цвета
- вершин и должен сочетаться с цветом текселя
- текстуры координационных изменений, потому что те 2D анимация
Как мне сделать это, чтобы получить наилучшую производительность? Есть мои идеи. Пожалуйста, помогите мне выбрать лучший из них или предложить что-то другое:
- обновление VBO каждый кадр
- сделать больше вершин, чем потребность (например, хранить кадры всей анимации в VBO) и выбрать визуализируется (вызов glDrawElements много раз)
- посыла изменения данных через мундирах и пересчитать его в вершинный шейдер вместо CPU
главный вопрос на самом деле: какие функции можно назвать столько раз, сколько я хочу, и которые следует избегать вызова более одного раза в основной цикл?
VBO? вы имеете в виду ВАО? в вашем случае, посмотрите [instanced rendering] (http://ogldev.atspace.co.uk/www/tutorial33/tutorial33.html). – Gnimuc