[vert.glsl] #version 130 in vec3 in_Position; in vec2 in_TexCoord; out vec2 pass_texcoord; uniform mat4 u_projection; uniform mat4 u_view; uniform mat4 u_model; void main() { gl_Position = u_projection * u_view * u_model * vec4(in_Position, 1.0); pass_texcoord = in_TexCoord; } [frag.glsl] #version 130 #if defined GL_ES precision mediump float; #endif in vec2 pass_texcoord; out vec4 out_color; uniform sampler2D u_texture; uniform vec2 u_texsize; void main() { vec4 col = texture2D(u_texture, pass_texcoord); if (col.a == 0.0) discard; out_color = col; }