Используете ли вы Vertex Arrays или Vertex Buffer Objects? Если вы используете Vertex Arrays, вы можете рассмотреть glDrawRangeElements
, а не glDrawElements
.
Если у всех ваших полисов нет отдельных вершин (что маловероятно), glDrawElements
будет быстрее, чем glDrawArray
, потому что glDrawElements
будет использовать тот факт, что повторяющиеся вершины будут загружены в кэш GPU, и не будет должны быть загружены более одного раза для каждого поли, частью которого является эта вершина. Однако при glDrawArray
он будет перебирать массив и не сможет связать похожие вершины, поэтому ему придется загружать их несколько раз.
Однако, это всегда зависит от вашей конкретной ситуации. Попробуйте использовать профилировщик или получить частоту кадров, используя каждый из этих методов. Не должно быть слишком трудно переключаться между ними. Если кто-то явно лучше, используйте его. Если ни то, ни другое не намного лучше, то это, вероятно, не имеет большого значения.
Помните, преждевременная оптимизация - корень всего зла. Удачи! :)