Variante de shader
Una versión compilada concreta de un shader, producida al fijar una combinación concreta de sus palabras clave y funciones de tiempo de compilación.
Un shader escrito con funciones condicionales no compila a un único programa; la cadena de herramientas emite una variante por cada combinación de palabras clave activas que pueda necesitar (sombras sí/no, niebla sí/no, instanciación sí/no). Cada variante es un programa de GPU distinto que el driver puede enlazar.
El problema es multiplicativo: un puñado de palabras clave sí/no independientes da cientos o miles de variantes, cada una sumando tiempo de compilación, tamaño en disco y memoria en ejecución, y causando tirones al compilarse o cargarse por primera vez. Los motores lo combaten con recorte de variantes (descartar combinaciones que ningún material usa), cachés de shader y pases de precalentamiento. El estilo de autoría über-shader es la fuente habitual de la explosión.