• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#version 310 es
2layout(local_size_x = 1) in;
3
4struct S0
5{
6    vec2 a[1];
7    float b;
8};
9
10struct S1
11{
12    vec3 a;
13    float b;
14};
15
16struct S2
17{
18    vec3 a[1];
19    float b;
20};
21
22struct S3
23{
24    vec2 a;
25    float b;
26};
27
28struct S4
29{
30	vec2 c;
31};
32
33struct Content
34{
35    S0 m0s[1];
36    S1 m1s[1];
37    S2 m2s[1];
38    S0 m0;
39    S1 m1;
40    S2 m2;
41    S3 m3;
42    float m4;
43
44	S4 m3s[8];
45};
46
47layout(binding = 1, std430) restrict buffer SSBO1
48{
49    Content content;
50    Content content1[2];
51    Content content2;
52
53    layout(column_major) mat2 m0;
54    layout(column_major) mat2 m1;
55    layout(column_major) mat2x3 m2[4];
56    layout(column_major) mat3x2 m3;
57    layout(row_major) mat2 m4;
58    layout(row_major) mat2 m5[9];
59    layout(row_major) mat2x3 m6[4][2];
60    layout(row_major) mat3x2 m7;
61    float array[];
62} ssbo_430;
63
64layout(binding = 0, std140) restrict buffer SSBO0
65{
66    Content content;
67    Content content1[2];
68    Content content2;
69
70    layout(column_major) mat2 m0;
71    layout(column_major) mat2 m1;
72    layout(column_major) mat2x3 m2[4];
73    layout(column_major) mat3x2 m3;
74    layout(row_major) mat2 m4;
75    layout(row_major) mat2 m5[9];
76    layout(row_major) mat2x3 m6[4][2];
77    layout(row_major) mat3x2 m7;
78
79    float array[];
80} ssbo_140;
81
82void main()
83{
84    ssbo_430.content = ssbo_140.content;
85}
86
87