#include using namespace metal; struct tint_padded_array_element { /* 0x0000 */ int el; /* 0x0004 */ int8_t tint_pad[12]; }; struct tint_array_wrapper { /* 0x0000 */ tint_padded_array_element arr[5]; }; struct buf0 { /* 0x0000 */ tint_array_wrapper x_GLF_uniform_int_values; }; struct tint_padded_array_element_1 { /* 0x0000 */ float el; /* 0x0004 */ int8_t tint_pad_1[12]; }; struct tint_array_wrapper_1 { /* 0x0000 */ tint_padded_array_element_1 arr[3]; }; struct buf1 { /* 0x0000 */ tint_array_wrapper_1 x_GLF_uniform_float_values; }; struct main_out { float4 x_GLF_color_1; }; struct tint_symbol_1 { float4 x_GLF_color_1 [[color(0)]]; }; void main_1(constant buf0& x_6, constant buf1& x_9, thread float4* const tint_symbol_4) { float4 I = 0.0f; float4 N = 0.0f; float4 R = 0.0f; float4 ref = 0.0f; int const x_40 = x_6.x_GLF_uniform_int_values.arr[2].el; int const x_43 = x_6.x_GLF_uniform_int_values.arr[3].el; int const x_46 = x_6.x_GLF_uniform_int_values.arr[4].el; I = as_type(uint4(as_type(x_40), as_type(x_43), as_type(x_46), 92985u)); float const x_51 = x_9.x_GLF_uniform_float_values.arr[1].el; N = float4(x_51, x_51, x_51, x_51); float4 const x_53 = I; R = reflect(x_53, float4(0.5f, 0.5f, 0.5f, 0.5f)); float4 const x_55 = I; float const x_57 = x_9.x_GLF_uniform_float_values.arr[2].el; float4 const x_58 = N; float4 const x_59 = I; float4 const x_62 = N; ref = (x_55 - (x_62 * (x_57 * dot(x_58, x_59)))); float4 const x_65 = R; float4 const x_66 = ref; float const x_69 = x_9.x_GLF_uniform_float_values.arr[0].el; if ((distance(x_65, x_66) < x_69)) { int const x_75 = x_6.x_GLF_uniform_int_values.arr[0].el; int const x_78 = x_6.x_GLF_uniform_int_values.arr[1].el; int const x_81 = x_6.x_GLF_uniform_int_values.arr[1].el; int const x_84 = x_6.x_GLF_uniform_int_values.arr[0].el; *(tint_symbol_4) = float4(float(x_75), float(x_78), float(x_81), float(x_84)); } else { int const x_88 = x_6.x_GLF_uniform_int_values.arr[1].el; float const x_89 = float(x_88); *(tint_symbol_4) = float4(x_89, x_89, x_89, x_89); } return; } fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]], constant buf1& x_9 [[buffer(1)]]) { thread float4 tint_symbol_5 = 0.0f; main_1(x_6, x_9, &(tint_symbol_5)); main_out const tint_symbol_2 = {.x_GLF_color_1=tint_symbol_5}; tint_symbol_1 const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_2.x_GLF_color_1}; return tint_symbol_3; }