1#version 310 es 2 3struct Foo 4{ 5 mat3x4 MVP0; 6 mat3x4 MVP1; 7}; 8 9uniform vec4 UBO[8]; 10layout(location = 0) in vec4 v0; 11layout(location = 1) in vec4 v1; 12layout(location = 0) out vec3 V0; 13layout(location = 1) out vec3 V1; 14 15void main() 16{ 17 Foo _20 = Foo(transpose(mat4x3(UBO[0].xyz, UBO[1].xyz, UBO[2].xyz, UBO[3].xyz)), transpose(mat4x3(UBO[4].xyz, UBO[5].xyz, UBO[6].xyz, UBO[7].xyz))); 18 Foo f; 19 f.MVP0 = _20.MVP0; 20 f.MVP1 = _20.MVP1; 21 vec3 a = v0 * f.MVP0; 22 vec3 b = v1 * f.MVP1; 23 V0 = a; 24 V1 = b; 25} 26 27