• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#include <metal_stdlib>
2#include <simd/simd.h>
3
4using namespace metal;
5
6struct Struct
7{
8    uint flags[1];
9};
10
11struct defaultUniformsVS
12{
13    Struct flags;
14    float4 uquad[4];
15    float4x4 umatrix;
16};
17
18struct main0_out
19{
20    float4 gl_Position [[position]];
21};
22
23struct main0_in
24{
25    float4 a_position [[attribute(0)]];
26};
27
28vertex main0_out main0(main0_in in [[stage_in]], constant defaultUniformsVS& _24 [[buffer(0)]], uint gl_VertexIndex [[vertex_id]])
29{
30    main0_out out = {};
31    out.gl_Position = _24.umatrix * float4(_24.uquad[int(gl_VertexIndex)].x, _24.uquad[int(gl_VertexIndex)].y, in.a_position.z, in.a_position.w);
32    if (_24.flags.flags[0] != 0u)
33    {
34        out.gl_Position.z = 0.0;
35    }
36    return out;
37}
38
39