// // Fragment shader for testing the discard command // // Author: Randi Rost // // Copyright (c) 2002-2004 3Dlabs Inc. Ltd. // // See 3Dlabs-License.txt for license information // varying vec3 DiffuseColor; varying vec3 SpecularColor; uniform vec2 Scale; uniform vec2 Threshold; uniform vec3 SurfaceColor; void main (void) { float ss = fract(gl_TexCoord[0].s * Scale.s); float tt = fract(gl_TexCoord[0].t * Scale.t); if ((ss > Threshold.s) && (tt > Threshold.t)) discard; vec3 finalColor = SurfaceColor * DiffuseColor + SpecularColor; gl_FragColor = vec4 (finalColor, 1.0); }