uniform float res; uniform float first; uniform sampler2D ztex; varying float cosine; varying vec2 texCoord; void main() { if( first == 0.0) { float depth = tex2D(ztex,gl_FragCoord.xy/res).a; if (gl_FragCoord.z < (depth + 0.000001)) discard; } gl_FragColor.rg = texCoord+0.5/512.0; gl_FragColor.b = cosine; gl_FragColor.a = gl_FragCoord.z; }