]> git.tdb.fi Git - libs/gl.git/blob - shaderlib/shadow.glsl
Add GLSL keywords for overriding functions
[libs/gl.git] / shaderlib / shadow.glsl
1 import msp_interface;
2
3 layout(constant_id=auto) const bool use_shadow_map = false;
4
5 #pragma MSP stage(vertex)
6 void shadow_transform(vec4 eye_vertex)
7 {
8         out vec3 shadow_coord = (shd_eye_matrix*eye_vertex).xyz;
9 }
10
11 #pragma MSP stage(fragment)
12 virtual float get_shadow_factor(int index)
13 {
14         if(use_shadow_map)
15         {
16                 float shadow_sample = texture(shadow_map, shadow_coord);
17                 return mix(1.0, shadow_sample, shadow_darkness);
18         }
19         else
20                 return 1.0;
21 }