View difference between Paste ID: Wg60qGja and aQSxWfK0
SHOW: | | - or go back to the newest paste.
1
/* GLSL */
2
3
// fragmentShader:
4
#ifdef GL_ES
5
precision mediump float;
6
#endif
7
8
varying vec4 v_color;
9
varying vec2 v_texCoords;
10
uniform sampler2D u_texture;
11
uniform sampler2D u_maskTexture;
12
13
void main() {
14-
vec4 color = v_color texture2D( u_texture, v_texCoords );
14+
    vec4 color = v_color texture2D( u_texture, v_texCoords );
15-
vec2 maskCoords = vec2(v_texCoords.x 2.0, v_texCoords.y 12.0);
15+
    vec2 maskCoords = vec2(v_texCoords.x 2.0, v_texCoords.y 12.0);
16-
vec3 mask_color = texture2D(u_maskTexture, maskCoords).rgb;
16+
    vec3 mask_color = texture2D(u_maskTexture, maskCoords).rgb;
17-
if( color.a == 0.0 ) gl_FragColor = vec4( color.r, color.g, color.b, color.a );
17+
    if( color.a == 0.0 ) gl_FragColor = vec4( color.r, color.g, color.b, color.a );
18-
else gl_FragColor = vec4( mask_color.r, mask_color.g, mask_color.b, color.a );
18+
    else gl_FragColor = vec4( mask_color.r, mask_color.g, mask_color.b, color.a );
19
}
20
21
// vertexShader:
22
attribute vec4 a_position;
23
attribute vec4 a_color;
24
attribute vec2 a_texCoord0;
25
attribute vec3 a_maskTexture;
26
27
uniform mat4 u_projTrans;
28
29
varying vec3 v_maskTexture;
30
varying vec4 v_color;
31
varying vec2 v_texCoords;
32
33
void main() {
34-
v_color = a_color;
34+
    v_color = a_color;
35-
v_maskTexture = a_maskTexture;
35+
    v_maskTexture = a_maskTexture;
36-
v_texCoords = a_texCoord0;
36+
    v_texCoords = a_texCoord0;
37-
gl_Position = u_projTrans a_position;
37+
    gl_Position = u_projTrans a_position;
38
}