1cb93a386Sopenharmony_ci#version 310 es
2cb93a386Sopenharmony_ci
3cb93a386Sopenharmony_cilayout(std140) uniform UBO
4cb93a386Sopenharmony_ci{
5cb93a386Sopenharmony_ci    vec4 A4[5][4][2];
6cb93a386Sopenharmony_ci    mat4 uMVP;
7cb93a386Sopenharmony_ci    vec4 A1[2];
8cb93a386Sopenharmony_ci    vec4 A2[2][3];
9cb93a386Sopenharmony_ci    float A3[3];
10cb93a386Sopenharmony_ci    vec4 Offset;
11cb93a386Sopenharmony_ci};
12cb93a386Sopenharmony_cilayout(location = 0) in vec4 aVertex;
13cb93a386Sopenharmony_ci
14cb93a386Sopenharmony_civoid main()
15cb93a386Sopenharmony_ci{
16cb93a386Sopenharmony_ci    vec4 a4 = A4[2][3][1]; // 2 * (4 * 2) + 3 * 2 + 1 = 16 + 6 + 1 = 23.
17cb93a386Sopenharmony_ci    vec4 offset = A2[1][1] + A1[1] + A3[2];
18cb93a386Sopenharmony_ci    gl_Position = uMVP * aVertex + Offset + offset;
19cb93a386Sopenharmony_ci}
20