Compiles N times the same GLSL source and link to a program.
<p>
The same input is compiled 1 to 6 times, each time prepended
with a #define specific to a shader type.
</p>
VERTEX_SHADER
FRAGMENT_SHADER
GEOMETRY_SHADER
TESS_CONTROL_SHADER
TESS_EVALUATION_SHADER
COMPUTE_SHADER
<p>
Each of these macros are alternatively set to 1 while the others are
set to 0. If such a macro isn't used in any preprocessor directive
of your source, this shader stage is considered unused.</p>
<p>For conformance reasons, any #version directive on the first line will stay at the top.</p>
Warning: <b>THIS FUNCTION REWRITES YOUR SHADER A BIT.</b>
Expect slightly wrong lines in GLSL compiler's error messages.
Compiles N times the same GLSL source and link to a program.
<p> The same input is compiled 1 to 6 times, each time prepended with a #define specific to a shader type. </p>
<p> Each of these macros are alternatively set to 1 while the others are set to 0. If such a macro isn't used in any preprocessor directive of your source, this shader stage is considered unused.</p>
<p>For conformance reasons, any #version directive on the first line will stay at the top.</p>
Warning: <b>THIS FUNCTION REWRITES YOUR SHADER A BIT.</b> Expect slightly wrong lines in GLSL compiler's error messages.
Example of a combined shader source:
Limitations: