56 lines
1.3 KiB
Plaintext
56 lines
1.3 KiB
Plaintext
#include <metal_stdlib>
|
|
|
|
using namespace metal;
|
|
struct Interface {
|
|
int i;
|
|
uint u;
|
|
int4 vi;
|
|
uint4 vu;
|
|
float4 pos;
|
|
};
|
|
struct tint_symbol {
|
|
int i [[user(locn0)]];
|
|
uint u [[user(locn1)]];
|
|
int4 vi [[user(locn2)]];
|
|
uint4 vu [[user(locn3)]];
|
|
float4 pos [[position]];
|
|
};
|
|
struct tint_symbol_2 {
|
|
int i [[user(locn0)]];
|
|
uint u [[user(locn1)]];
|
|
int4 vi [[user(locn2)]];
|
|
uint4 vu [[user(locn3)]];
|
|
};
|
|
struct tint_symbol_3 {
|
|
int value [[color(0)]];
|
|
};
|
|
|
|
Interface vert_main_inner() {
|
|
Interface const tint_symbol_4 = {};
|
|
return tint_symbol_4;
|
|
}
|
|
|
|
vertex tint_symbol vert_main() {
|
|
Interface const inner_result = vert_main_inner();
|
|
tint_symbol wrapper_result = {};
|
|
wrapper_result.i = inner_result.i;
|
|
wrapper_result.u = inner_result.u;
|
|
wrapper_result.vi = inner_result.vi;
|
|
wrapper_result.vu = inner_result.vu;
|
|
wrapper_result.pos = inner_result.pos;
|
|
return wrapper_result;
|
|
}
|
|
|
|
int frag_main_inner(Interface inputs) {
|
|
return inputs.i;
|
|
}
|
|
|
|
fragment tint_symbol_3 frag_main(float4 pos [[position]], tint_symbol_2 tint_symbol_1 [[stage_in]]) {
|
|
Interface const tint_symbol_5 = {.i=tint_symbol_1.i, .u=tint_symbol_1.u, .vi=tint_symbol_1.vi, .vu=tint_symbol_1.vu, .pos=pos};
|
|
int const inner_result_1 = frag_main_inner(tint_symbol_5);
|
|
tint_symbol_3 wrapper_result_1 = {};
|
|
wrapper_result_1.value = inner_result_1;
|
|
return wrapper_result_1;
|
|
}
|
|
|