Shadervariant
En konkret kompilerad version av en shader, framställd genom att låsa en viss kombination av dess kompileringstids-nyckelord och funktioner.
En shader skriven med villkorliga funktioner kompileras inte till ett enda program; verktygskedjan avger en variant per kombination av påslagna nyckelord den kan behöva (skuggor på/av, dimma på/av, instansiering på/av). Varje variant är ett eget GPU-program som drivrutinen kan binda.
Problemet är multiplikativt: en handfull oberoende på/av-nyckelord ger hundratals eller tusentals varianter, var och en lägger till byggtid, diskstorlek och körtidsminne, och orsakar hack när den först kompileras eller laddas. Motorer bekämpar det med variantstrippning (slopa kombinationer inget material använder), shadercacher och uppvärmningspass. Uber-shader-stilen är den vanliga källan till explosionen.