Поведение униформ после glUseProgram() и скорость

Насколько быстро работает glUseProgram()? Есть ли что-нибудь лучше (быстрее)?:

Вот мои мысли:

  1. Использовать 1 универсальную шейдерную программу, но с множеством входных настроек и атрибутов (настройки для каждого графического класса)
  2. Использовать более 1 шейдера для каждого Graphics class

В каком состоянии находятся униформы после изменения шейдерной программы? Сохраняют ли они значения (например, значения матриц)?

Вот что я считаю преимуществами #1:

  • Не использует glUseProgram()

И преимуществами #2:

  • Отсутствие изменений матрицы (например, если класс Менюи класс Scene3Dимеют разные матрицы проекции)
8
задан genpfault 14 March 2012 в 09:24
поделиться