uniform sampler2D tex; void main() { const float softness = 0.008; float alpha = texture2D(tex, gl_TexCoord[0].st).a; float mask = smoothstep(0.5 - softness, 0.5 + softness, alpha); gl_FragColor.rgb = gl_Color.rgb; gl_FragColor.a = mask; }