Rendering adegan biasanya melibatkan lebih dari satu program shader yang, dalam kasus saya, semua menggunakan atribut yang sama dan berbagi setidaknya beberapa seragam. Agar mereka berfungsi dengan baik, saat ini saya bermain aman, artinya saya mengubah atribut dan mendapatkan lokasi seragam yang sesuai setiap kali saya beralih di antara program shader. Jadi pada dasarnya beberapa kali dalam setiap frame, yang mungkin bukan pendekatan terbaik.
Jadi, apakah perlu (secara umum) untuk mengubah atribut dan seragam setelah beralih program shader? Dan mengapa?
Jika demikian, apakah ada cara untuk melakukan ini sekali pada awal program dan tidak perlu menyentuhnya lagi (kecuali untuk menetapkan nilai seragam)?