Add option to reflect buffer blocks & variables separately to uniforms
[platform/upstream/glslang.git] / Test / reflection.options.vert
1 #version 440 core\r
2 \r
3 struct VertexInfo {\r
4     float position[3];\r
5     float normal[3];\r
6 };\r
7 \r
8 struct TriangleInfo {\r
9     VertexInfo v[3];\r
10 };\r
11 \r
12 buffer VertexCollection {\r
13     TriangleInfo t[5];\r
14 };\r
15 \r
16 buffer MultipleArrays {\r
17     TriangleInfo tri[5];\r
18     VertexInfo vert[5];\r
19     float f[5];\r
20 } multiarray;\r
21 \r
22 uniform UBO {\r
23     VertexInfo verts[2];\r
24     float flt[8];\r
25 } ubo;\r
26 \r
27 out float outval;\r
28 \r
29 void main()\r
30 {\r
31     float f;\r
32     f += t[0].v[0].position[0];\r
33     f += t[gl_InstanceID].v[gl_InstanceID].position[gl_InstanceID];\r
34     f += t[gl_InstanceID].v[gl_InstanceID].normal[gl_InstanceID];\r
35     f += multiarray.tri[gl_InstanceID].v[0].position[0];\r
36     f += multiarray.vert[gl_InstanceID].position[0];\r
37     f += multiarray.f[gl_InstanceID];\r
38     f += ubo.verts[gl_InstanceID].position[0];\r
39     f += ubo.flt[gl_InstanceID];\r
40     TriangleInfo tlocal[5] = t;\r
41     outval = f;\r
42 }\r