| #include <metal_stdlib> | |
| using namespace metal; | |
| struct Uniforms { | |
| /* 0x0000 */ float4x4 modelViewProjectionMatrix; | |
| }; | |
| struct VertexInput { | |
| float4 cur_position; | |
| float4 color; | |
| }; | |
| struct VertexOutput { | |
| float4 vtxFragColor; | |
| float4 Position; | |
| }; | |
| struct tint_symbol_1 { | |
| float4 cur_position [[attribute(0)]]; | |
| float4 color [[attribute(1)]]; | |
| }; | |
| struct tint_symbol_2 { | |
| float4 vtxFragColor [[user(locn0)]]; | |
| float4 Position [[position]]; | |
| }; | |
| struct tint_symbol_4 { | |
| float4 fragColor [[user(locn0)]]; | |
| }; | |
| struct tint_symbol_5 { | |
| float4 value [[color(0)]]; | |
| }; | |
| vertex tint_symbol_2 vtx_main(tint_symbol_1 tint_symbol [[stage_in]], constant Uniforms& uniforms [[buffer(0)]]) { | |
| VertexInput const input = {.cur_position=tint_symbol.cur_position, .color=tint_symbol.color}; | |
| VertexOutput output = {}; | |
| output.Position = (uniforms.modelViewProjectionMatrix * input.cur_position); | |
| output.vtxFragColor = input.color; | |
| tint_symbol_2 const tint_symbol_6 = {.vtxFragColor=output.vtxFragColor, .Position=output.Position}; | |
| return tint_symbol_6; | |
| } | |
| fragment tint_symbol_5 frag_main(tint_symbol_4 tint_symbol_3 [[stage_in]]) { | |
| float4 const fragColor = tint_symbol_3.fragColor; | |
| tint_symbol_5 const tint_symbol_7 = {.value=fragColor}; | |
| return tint_symbol_7; | |
| } | |