1 // Multi-texture fragment shader
4 // Composite second texture over first.
5 // We're assuming the 2nd texture has a meaningful alpha channel.
7 uniform sampler2D tex1;
8 uniform sampler2D tex2;
10 vec4 sample(sampler2D t, vec2 coord)
12 return texture2D(t, coord);
17 vec4 t1 = texture2D(tex1, gl_TexCoord[0].xy);
18 //vec4 t1 = sample(tex1, gl_TexCoord[0].xy);
19 //vec4 t2 = texture2D(tex2, gl_TexCoord[1].xy);
20 vec4 t2 = sample(tex2, gl_TexCoord[0].xy);
21 gl_FragColor = mix(t1, t2, t2.w);
26 vec4 t1 = sample(tex1, gl_TexCoord[0].xy);
27 vec4 t2 = sample(tex2, gl_TexCoord[0].xy);
28 gl_FragColor = t1 + t2;
31 0: MOV SAMPLER[0].x, SAMPLER[0];
32 1: MOV TEMP[1], INPUT[4];
33 2: TEX OUTPUT[0], TEMP[1], texture[0], 2D;