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