Das Rendern der Szene umfasst normalerweise mehr als ein Shader-Programm, das in meinem Fall alle dieselben Attribute verwenden und zumindest einige der Uniformen gemeinsam nutzen. Damit sie richtig funktionieren, gehe ich derzeit auf Nummer sicher, dh ich binde die Attribute neu und erhalte bei jedem Wechsel zwischen Shader-Programmen die entsprechenden einheitlichen Speicherorte. Also im Grunde mehrmals in jedem Frame, was wahrscheinlich nicht der beste Ansatz ist.
Ist es also (im Allgemeinen) notwendig, Attribute und Uniformen nach dem Wechsel von Shader-Programmen neu zu binden? Und warum?
Wenn ja, gibt es eine Möglichkeit, dies einmal zu Beginn des Programms zu tun und sie nie wieder berühren zu müssen (außer zum Einstellen der einheitlichen Werte)?