diff options
author | Brian Paul <[email protected]> | 2008-08-16 09:36:46 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2008-08-16 09:36:46 -0600 |
commit | c0dd9122fdedd4bcab5bc0b3bbb490e6b62fac83 (patch) | |
tree | ac114b79c5790b10c0a8904ca79dfea5480c5617 /progs/glsl/shadowtex.frag | |
parent | ce00d232f3c01c71fb659568e9b58da1f24b2519 (diff) |
remove .txt suffix from shader source files
Diffstat (limited to 'progs/glsl/shadowtex.frag')
-rw-r--r-- | progs/glsl/shadowtex.frag | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/progs/glsl/shadowtex.frag b/progs/glsl/shadowtex.frag new file mode 100644 index 00000000000..a6a80da47f2 --- /dev/null +++ b/progs/glsl/shadowtex.frag @@ -0,0 +1,21 @@ +// Fragment shader for 2D texture with shadow attenuation +// Brian Paul + + +uniform sampler2D tex2d; +uniform vec3 lightPos; + +void main() +{ + // XXX should compute this from lightPos + vec2 shadowCenter = vec2(-0.25, -0.25); + + // d = distance from center + float d = distance(gl_TexCoord[0].xy, shadowCenter); + + // attenuate and clamp + d = clamp(d * d * d, 0.0, 2.0); + + // modulate texture by d for shadow effect + gl_FragColor = d * texture2D(tex2d, gl_TexCoord[0].xy, 0.0); +} |