142 lines
3.6 KiB
Plaintext
142 lines
3.6 KiB
Plaintext
#include <metal_stdlib>
|
|
|
|
using namespace metal;
|
|
struct buf1 {
|
|
/* 0x0000 */ packed_float2 resolution;
|
|
};
|
|
struct buf0 {
|
|
/* 0x0000 */ packed_float2 injectionSwitch;
|
|
};
|
|
struct tint_array_wrapper {
|
|
float arr[10];
|
|
};
|
|
struct main_out {
|
|
float4 x_GLF_color_1;
|
|
};
|
|
struct tint_symbol_2 {
|
|
float4 x_GLF_color_1 [[color(0)]];
|
|
};
|
|
|
|
bool checkSwap_f1_f1_(constant buf1& x_9, thread float* const a, thread float* const b, thread float4* const tint_symbol_5) {
|
|
bool x_144 = false;
|
|
float const x_146 = (*(tint_symbol_5)).y;
|
|
float const x_148 = x_9.resolution.y;
|
|
if ((x_146 < (x_148 / 2.0f))) {
|
|
float const x_154 = *(a);
|
|
float const x_155 = *(b);
|
|
x_144 = (x_154 > x_155);
|
|
} else {
|
|
float const x_157 = *(a);
|
|
float const x_158 = *(b);
|
|
x_144 = (x_157 < x_158);
|
|
}
|
|
bool const x_160 = x_144;
|
|
return x_160;
|
|
}
|
|
|
|
void main_1(constant buf0& x_13, constant buf1& x_9, thread float4* const tint_symbol_6, thread float4* const tint_symbol_7) {
|
|
int i = 0;
|
|
tint_array_wrapper data = {};
|
|
int i_1 = 0;
|
|
int j = 0;
|
|
bool doSwap = false;
|
|
float param = 0.0f;
|
|
float param_1 = 0.0f;
|
|
float temp = 0.0f;
|
|
i = 0;
|
|
while (true) {
|
|
int const x_56 = i;
|
|
if ((x_56 < 10)) {
|
|
} else {
|
|
break;
|
|
}
|
|
int const x_59 = i;
|
|
int const x_60 = i;
|
|
float const x_64 = x_13.injectionSwitch.y;
|
|
data.arr[x_59] = (float((10 - x_60)) * x_64);
|
|
{
|
|
int const x_67 = i;
|
|
i = (x_67 + 1);
|
|
}
|
|
}
|
|
i_1 = 0;
|
|
while (true) {
|
|
int const x_73 = i_1;
|
|
if ((x_73 < 9)) {
|
|
} else {
|
|
break;
|
|
}
|
|
j = 0;
|
|
while (true) {
|
|
int const x_80 = j;
|
|
if ((x_80 < 10)) {
|
|
} else {
|
|
break;
|
|
}
|
|
int const x_83 = j;
|
|
int const x_84 = i_1;
|
|
if ((x_83 < (x_84 + 1))) {
|
|
{
|
|
int const x_110 = j;
|
|
j = (x_110 + 1);
|
|
}
|
|
continue;
|
|
}
|
|
int const x_89 = i_1;
|
|
int const x_90 = j;
|
|
float const x_92 = data.arr[x_89];
|
|
param = x_92;
|
|
float const x_94 = data.arr[x_90];
|
|
param_1 = x_94;
|
|
bool const x_95 = checkSwap_f1_f1_(x_9, &(param), &(param_1), tint_symbol_6);
|
|
doSwap = x_95;
|
|
bool const x_96 = doSwap;
|
|
if (x_96) {
|
|
int const x_99 = i_1;
|
|
float const x_101 = data.arr[x_99];
|
|
temp = x_101;
|
|
int const x_102 = i_1;
|
|
int const x_103 = j;
|
|
float const x_105 = data.arr[x_103];
|
|
data.arr[x_102] = x_105;
|
|
int const x_107 = j;
|
|
float const x_108 = temp;
|
|
data.arr[x_107] = x_108;
|
|
}
|
|
{
|
|
int const x_110 = j;
|
|
j = (x_110 + 1);
|
|
}
|
|
}
|
|
{
|
|
int const x_112 = i_1;
|
|
i_1 = (x_112 + 1);
|
|
}
|
|
}
|
|
float const x_115 = (*(tint_symbol_6)).x;
|
|
float const x_117 = x_9.resolution.x;
|
|
if ((x_115 < (x_117 / 2.0f))) {
|
|
float const x_124 = data.arr[0];
|
|
float const x_127 = data.arr[5];
|
|
float const x_130 = data.arr[9];
|
|
*(tint_symbol_7) = float4((x_124 / 10.0f), (x_127 / 10.0f), (x_130 / 10.0f), 1.0f);
|
|
} else {
|
|
float const x_134 = data.arr[5];
|
|
float const x_137 = data.arr[9];
|
|
float const x_140 = data.arr[0];
|
|
*(tint_symbol_7) = float4((x_134 / 10.0f), (x_137 / 10.0f), (x_140 / 10.0f), 1.0f);
|
|
}
|
|
return;
|
|
}
|
|
|
|
fragment tint_symbol_2 tint_symbol(float4 gl_FragCoord_param [[position]], constant buf0& x_13 [[buffer(0)]], constant buf1& x_9 [[buffer(1)]]) {
|
|
thread float4 tint_symbol_8 = 0.0f;
|
|
thread float4 tint_symbol_9 = 0.0f;
|
|
tint_symbol_8 = gl_FragCoord_param;
|
|
main_1(x_13, x_9, &(tint_symbol_8), &(tint_symbol_9));
|
|
main_out const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_9};
|
|
tint_symbol_2 const tint_symbol_4 = {.x_GLF_color_1=tint_symbol_3.x_GLF_color_1};
|
|
return tint_symbol_4;
|
|
}
|
|
|