#include #include using namespace metal; struct Scene { float3 color; }; struct type_StructuredBuffer_Scene { Scene _m0[1]; }; constant float2 _31 = {}; constant float4 _32 = {}; struct main0_out { float4 out_var_TEXCOORD0 [[user(locn0)]]; float4 gl_Position [[position]]; }; vertex main0_out main0(const device type_StructuredBuffer_Scene& test [[buffer(0)]], uint gl_VertexIndex [[vertex_id]]) { main0_out out = {}; float4 _71; float2 _72; if (gl_VertexIndex == 0u) { _71 = float4(test._m0[0u].color, 1.0); _72 = float2(-1.0); } else { float4 _69; float2 _70; if (gl_VertexIndex == 1u) { _69 = float4(test._m0[1u].color, 1.0); _70 = float2(1.0, -1.0); } else { bool _57 = gl_VertexIndex == 2u; float4 _66; if (_57) { _66 = float4(test._m0[2u].color, 1.0); } else { _66 = _32; } _69 = _66; _70 = select(_31, float2(0.0, 1.0), bool2(_57)); } _71 = _69; _72 = _70; } out.out_var_TEXCOORD0 = _71; out.gl_Position = float4(_72, 0.0, 1.0); return out; }