blob: aa4ad81e8c8b6f515dd2ba92fe124f2d4700d1a1 (
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
|
#version 460 core
#extension GL_ARB_shading_language_include : enable
#include "materialDetail.glsl"
layout(triangles) in;
layout(triangle_strip, max_vertices = 24) out;
uniform mat4 viewProjection[8];
uniform mat4 view[8];
in vec3 FragPos[];
in vec2 TexCoords[];
flat in MaterialDetail Material[];
in vec3 Normal[];
in vec4 Colour[];
out vec2 gTexCoords;
out vec3 gNormal;
out vec4 gColour;
flat out MaterialDetail gMaterial;
void
main()
{
for (gl_Layer = 0; gl_Layer < viewProjection.length(); ++gl_Layer) {
for (int v = 0; v < FragPos.length(); ++v) {
gl_Position = viewProjection[gl_Layer] * vec4(FragPos[v], 1);
gNormal = (view[gl_Layer] * vec4(Normal[v], 1)).xyz;
gTexCoords = TexCoords[v];
gMaterial = Material[v];
gColour = Colour[v];
EmitVertex();
}
EndPrimitive();
}
}
|