Связывание текстур в OpenGL

Итак, я рендерю свою сцену партиями, чтобы попытаться минимизировать изменения состояния. Поскольку моим шейдерам обычно требуется несколько текстур, я привязываю несколько из них одновременно к разным текстурным блокам. Некоторые из этих текстур используются в нескольких пакетах, поэтому могут даже оставаться связанными.

Теперь мой вопрос, можно ли просто повторно связать все текстуры, которые мне нужны во время пакета, даже если некоторые из них уже могут связывать? Или я должен проверить, какие из них привязаны, и привязать только новые? Насколько дорого стоит glBindTexture? Я использую шейдеры, плохо ли иметь неиспользуемые текстуры, привязанные к текстурным блокам, из которых шейдер не будет производить выборку, или я должен их отвязать?

Я в основном спрашиваю «как сделать это быстро», а не « как ".

РЕДАКТИРОВАТЬ: Помогло бы, если бы я предоставил код?

15
задан Hannesh 10 March 2011 в 20:50
поделиться