1#include <metal_stdlib> 2#include <simd/simd.h> 3using namespace metal; 4struct Uniforms { 5 uint a; 6}; 7struct Inputs { 8}; 9struct Outputs { 10 float4 sk_FragColor [[color(0)]]; 11}; 12 13fragment Outputs fragmentMain(Inputs _in [[stage_in]], constant Uniforms& _uniforms [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { 14 Outputs _out; 15 (void)_out; 16 _out.sk_FragColor.xy = unpackHalf2x16(_uniforms.a); 17 _out.sk_FragColor.xy = unpackUnorm2x16(_uniforms.a); 18 _out.sk_FragColor.xy = unpackSnorm2x16(_uniforms.a); 19 _out.sk_FragColor = unpackUnorm4x8(_uniforms.a); 20 _out.sk_FragColor = unpackSnorm4x8(_uniforms.a); 21 return _out; 22} 23