Este es un camino que permita a un conductor GL hacer shader paralelo compilación y enlazado,
(1.) Al principio de la carga de aplicaciones, para todos los shaders ejecutar {glShaderSource (), glCompileShader ()}, entonces para todos los programas administrados {glAttachShader () s, glLinkProgram ()}. No llames a algo que consulta un shader o programa. Esta es la regla fundamental, ya que sin las consultas que el conductor no se ve obligado a bloquear en los resultados de una compilación o vínculo.
(2.) Hacer otros trabajos de carga en paralelo.
(3. ) Sólo en un marco que tiene el primer uso de un determinado programa, a continuación, llamar a funciones que consultan un sombreado o programa: por ejemplo, la reflexión (para obtener la ubicación de valores con nombre) o conseguir compilar o el estado del enlace. Idealmente utilizar esquemas de trazado () calificadores de GLSL para evitar la necesidad de hacer ninguna reflexión.