85 lines
2.6 KiB
Plaintext
85 lines
2.6 KiB
Plaintext
|
#include <metal_stdlib>
|
||
|
|
||
|
using namespace metal;
|
||
|
struct tint_padded_array_element {
|
||
|
/* 0x0000 */ float 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_float_values;
|
||
|
};
|
||
|
struct tint_padded_array_element_1 {
|
||
|
/* 0x0000 */ int 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_int_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_10, thread float4* const tint_symbol_4) {
|
||
|
float2x2 M1 = float2x2(0.0f);
|
||
|
float a = 0.0f;
|
||
|
int c = 0;
|
||
|
float const x_41 = x_6.x_GLF_uniform_float_values.arr[1].el;
|
||
|
float const x_43 = x_6.x_GLF_uniform_float_values.arr[2].el;
|
||
|
float const x_45 = x_6.x_GLF_uniform_float_values.arr[3].el;
|
||
|
float const x_47 = x_6.x_GLF_uniform_float_values.arr[4].el;
|
||
|
M1 = float2x2(float2(x_41, x_43), float2(x_45, x_47));
|
||
|
float const x_52 = x_6.x_GLF_uniform_float_values.arr[1].el;
|
||
|
a = x_52;
|
||
|
int const x_54 = x_10.x_GLF_uniform_int_values.arr[1].el;
|
||
|
c = x_54;
|
||
|
while (true) {
|
||
|
int const x_59 = c;
|
||
|
int const x_61 = x_10.x_GLF_uniform_int_values.arr[0].el;
|
||
|
if ((x_59 < x_61)) {
|
||
|
} else {
|
||
|
break;
|
||
|
}
|
||
|
int const x_65 = x_10.x_GLF_uniform_int_values.arr[2].el;
|
||
|
int const x_66 = c;
|
||
|
float const x_70 = M1[x_65][clamp(~(x_66), 0, 1)];
|
||
|
float const x_71 = a;
|
||
|
a = (x_71 + x_70);
|
||
|
{
|
||
|
int const x_73 = c;
|
||
|
c = (x_73 + 1);
|
||
|
}
|
||
|
}
|
||
|
float const x_75 = a;
|
||
|
float const x_77 = x_6.x_GLF_uniform_float_values.arr[0].el;
|
||
|
if ((x_75 == x_77)) {
|
||
|
int const x_83 = x_10.x_GLF_uniform_int_values.arr[2].el;
|
||
|
int const x_86 = x_10.x_GLF_uniform_int_values.arr[1].el;
|
||
|
int const x_89 = x_10.x_GLF_uniform_int_values.arr[1].el;
|
||
|
int const x_92 = x_10.x_GLF_uniform_int_values.arr[2].el;
|
||
|
*(tint_symbol_4) = float4(float(x_83), float(x_86), float(x_89), float(x_92));
|
||
|
} else {
|
||
|
int const x_96 = x_10.x_GLF_uniform_int_values.arr[2].el;
|
||
|
float const x_97 = float(x_96);
|
||
|
*(tint_symbol_4) = float4(x_97, x_97, x_97, x_97);
|
||
|
}
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]], constant buf1& x_10 [[buffer(1)]]) {
|
||
|
thread float4 tint_symbol_5 = 0.0f;
|
||
|
main_1(x_6, x_10, &(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;
|
||
|
}
|
||
|
|