No Direct3D, os sombreadores multipass são simples de usar, porque você pode definir literalmente passes dentro de um programa. No OpenGL, parece um pouco mais complexo porque é possível fornecer a um programa de sombreador quantos shaders de vértice, geometria e fragmento desejar. Um exemplo...