blob: f37383474e609a0d51b98b5ed34f242d35286c15 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#ifndef COMMON_SHADOW_POINT_GEOM_INCLUDED
#define COMMON_SHADOW_POINT_GEOM_INCLUDED
uniform mat4 viewProjection[4];
uniform int viewProjections;
in vec4 vworldPos[];
layout(triangles) in;
layout(triangle_strip, max_vertices = 12) out;
#ifdef TEXTURES
# include "materialDetail.glsl"
in vec2 TexCoords[];
out vec2 texCoord;
flat in MaterialDetail Material[];
flat out MaterialDetail material;
#endif
void
main()
{
for (int vp = 0; vp < viewProjections; ++vp) {
for (int v = 0; v < vworldPos.length(); ++v) {
gl_Position = viewProjection[vp] * vworldPos[v];
gl_Position.z = max(gl_Position.z, -1);
gl_Layer = vp;
#ifdef TEXTURES
texCoord = TexCoords[v];
material = Material[v];
#endif
EmitVertex();
}
EndPrimitive();
}
}
#endif
|