Это зависит от остальной части вашего кода.Вероятно, разница будет незначительной, если вы говорите, например, о разнице для одного квадроцикла.Золотое правило - избегать изменений состояния и оптимизировать геометрию вокруг этой цели.Если у вас есть, скажем, 10000 плиток, которые вы можете нарисовать за один вызов glDrawElements
или glDrawArrays
, если вы переводите в своем коде и массово загружаете местоположения вершин, то вполне вероятно, что вы увидитеулучшение.Если вы делаете один вызов glDrawElements
или glDrawArrays
на плитку, то вряд ли вы заметите какую-либо разницу в любом случае.
Итак: это стоящее изменение, если оно позволяет объединять больше геометрии вместеиначе это, вероятно, не будет иметь большого шанса.Из моего анекдотического опыта, на устройстве iOS первого поколения с PowerVR MBX с движком в стиле спрайтов я перешел от устройства, немного борющегося с несколькими сотнями спрайтов, к способности обрабатывать тысячи.Пакетирование моей геометрии означало, что синхронизация GPU / CPU больше не была узким местом.