Uber-shader
En enda stor shader som kompilerar varje materialfunktion bakom preprocessor-brytare, grenar eller statiska permutationer, i stället för en shader per effekt.
I stället för att handskriva dussintals små shaders skriver man en «über»-shader som innehåller alla vägar — normalmappning, detaljlager, emission, dimma — grindade av #ifdef:ar och uniform-flaggor. Vid bygge genererar verktygskedjan de statiska permutationer (shadervarianter) som behövs; vid körning kan dynamisk grening välja väg på GPU:n.
Lockelsen är underhåll: en sanningskälla, konsekvent ljussättning över material. Priset är kombinatorisk explosion — N oberoende funktioner ger upp till 2^N varianter, vilket spränger kompileringstid och minne (Unitys strippning av shadervarianter finns just för att tämja detta). Modern hårdvara har gjort dynamisk grening billig nog att vissa motorer grenar vid körning i stället.