Can you have multiple pixel (fragment) shaders in the same program?

Harry picture Harry · Feb 26, 2010 · Viewed 10.1k times · Source

I would like to have two pixel shaders; the first doing one thing, and then the next doing something else. Is this possible, or do I have to pack everything into the one shader?

Answer

Bahbar picture Bahbar · Feb 27, 2010

You can do do this, e.g. by doing function calls from the main entrypoint to functions that are implemented in the various shader objects.

main() {
    callToShaderObject1()
    callToShaderObject2()
}

each of those callToShaderObject functions can live in different shader objects, but all objects have to be attached and linked in the same program before it can be used.