#include #include using namespace metal; struct Vert { float3x3 wMatrix; float4 wTmp; float arr[4]; }; struct main0_out { float4 FragColor [[color(0)]]; }; struct main0_in { float3 vMatrix_0 [[user(locn0)]]; float3 vMatrix_1 [[user(locn1)]]; float3 vMatrix_2 [[user(locn2)]]; float3 Vert_wMatrix_0 [[user(locn4)]]; float3 Vert_wMatrix_1 [[user(locn5)]]; float3 Vert_wMatrix_2 [[user(locn6)]]; float4 Vert_wTmp [[user(locn7)]]; float Vert_arr_0 [[user(locn8)]]; float Vert_arr_1 [[user(locn9)]]; float Vert_arr_2 [[user(locn10)]]; float Vert_arr_3 [[user(locn11)]]; }; fragment main0_out main0(main0_in in [[stage_in]]) { main0_out out = {}; Vert _17 = {}; float3x3 vMatrix = {}; _17.wMatrix[0] = in.Vert_wMatrix_0; _17.wMatrix[1] = in.Vert_wMatrix_1; _17.wMatrix[2] = in.Vert_wMatrix_2; _17.wTmp = in.Vert_wTmp; _17.arr[0] = in.Vert_arr_0; _17.arr[1] = in.Vert_arr_1; _17.arr[2] = in.Vert_arr_2; _17.arr[3] = in.Vert_arr_3; vMatrix[0] = in.vMatrix_0; vMatrix[1] = in.vMatrix_1; vMatrix[2] = in.vMatrix_2; out.FragColor = (_17.wMatrix[0].xxyy + _17.wTmp) + vMatrix[1].yyzz; for (int i = 0; i < 4; i++) { out.FragColor += float4(_17.arr[i]); } return out; }