131cecd5db6eb71a2ad6e38e74185f8f7119d30d
[blender.git] / source / blender / draw / engines / eevee / shaders / shadow_process_geom.glsl
1
2 layout(triangles) in;
3 layout(triangle_strip, max_vertices = 3) out;
4
5 layout(std140) uniform shadow_render_block
6 {
7   /* Use vectors to avoid alignement padding. */
8   ivec4 shadowSampleCount;
9   vec4 shadowInvSampleCount;
10   vec4 filterSize;
11   int viewCount;
12   int baseId;
13   float cubeTexelSize;
14   float storedTexelSize;
15   float nearClip;
16   float farClip;
17   float exponent;
18 };
19
20 in int layerID_g[];
21
22 flat out int layerID;
23
24 void main()
25 {
26   gl_Layer = layerID_g[0];
27   layerID = gl_Layer - baseId;
28
29   gl_Position = gl_in[0].gl_Position;
30   EmitVertex();
31   gl_Position = gl_in[1].gl_Position;
32   EmitVertex();
33   gl_Position = gl_in[2].gl_Position;
34   EmitVertex();
35   EndPrimitive();
36 }