diff options
Diffstat (limited to 'shaders/tree_fragment.glsl')
| -rw-r--r-- | shaders/tree_fragment.glsl | 22 | 
1 files changed, 22 insertions, 0 deletions
| diff --git a/shaders/tree_fragment.glsl b/shaders/tree_fragment.glsl new file mode 100644 index 0000000..382ab4e --- /dev/null +++ b/shaders/tree_fragment.glsl @@ -0,0 +1,22 @@ +#version 120 + +uniform sampler2D tex; +uniform vec3 player_pos; +varying vec3 normal, pos; + +void foggify(vec3 player_pos, vec3 pos); + +void main() { +	vec4 color = texture2D(tex, gl_TexCoord[0].st); + +	if(color.a < 0.7) +		discard; + +	gl_FragColor = color; +	float n = clamp(dot(normal, vec3(0, 0, 1)) + .5, .3, 1); +	gl_FragColor.rgb *= n; + +	foggify(player_pos, pos); +} + +/* vim: set syn=glsl: */ | 
