136 lines
4.2 KiB
Plaintext
136 lines
4.2 KiB
Plaintext
#include <metal_stdlib>
|
|
|
|
using namespace metal;
|
|
struct buf0 {
|
|
/* 0x0000 */ packed_float2 resolution;
|
|
};
|
|
struct main_out {
|
|
float4 x_GLF_color_1;
|
|
};
|
|
struct tint_symbol_1 {
|
|
float4 x_GLF_color_1 [[color(0)]];
|
|
};
|
|
|
|
int pointInTriangle_vf2_vf2_vf2_vf2_(thread float2* const p, thread float2* const a, thread float2* const b, thread float2* const c) {
|
|
float x_66 = 0.0f;
|
|
float x_67 = 0.0f;
|
|
float x_68 = 0.0f;
|
|
float2 param = 0.0f;
|
|
float2 param_1 = 0.0f;
|
|
float2 param_2 = 0.0f;
|
|
float2 param_3 = 0.0f;
|
|
float2 param_4 = 0.0f;
|
|
float2 param_5 = 0.0f;
|
|
bool x_135 = false;
|
|
bool x_172 = false;
|
|
bool x_136_phi = false;
|
|
bool x_173_phi = false;
|
|
float const x_70 = (*(p)).x;
|
|
float const x_72 = (*(a)).x;
|
|
float const x_75 = (*(p)).y;
|
|
float const x_77 = (*(a)).y;
|
|
float const x_81 = (*(b)).x;
|
|
float const x_82 = (*(a)).x;
|
|
float const x_85 = (*(b)).y;
|
|
float const x_86 = (*(a)).y;
|
|
param = float2((x_70 - x_72), (x_75 - x_77));
|
|
param_1 = float2((x_81 - x_82), (x_85 - x_86));
|
|
float const x_90 = param.x;
|
|
float const x_92 = param_1.y;
|
|
float const x_95 = param_1.x;
|
|
float const x_97 = param.y;
|
|
float const x_99 = ((x_90 * x_92) - (x_95 * x_97));
|
|
x_68 = x_99;
|
|
float const x_100 = (*(p)).x;
|
|
float const x_101 = (*(b)).x;
|
|
float const x_103 = (*(p)).y;
|
|
float const x_104 = (*(b)).y;
|
|
float const x_108 = (*(c)).x;
|
|
float const x_109 = (*(b)).x;
|
|
float const x_112 = (*(c)).y;
|
|
float const x_113 = (*(b)).y;
|
|
param_2 = float2((x_100 - x_101), (x_103 - x_104));
|
|
param_3 = float2((x_108 - x_109), (x_112 - x_113));
|
|
float const x_117 = param_2.x;
|
|
float const x_119 = param_3.y;
|
|
float const x_122 = param_3.x;
|
|
float const x_124 = param_2.y;
|
|
float const x_126 = ((x_117 * x_119) - (x_122 * x_124));
|
|
x_67 = x_126;
|
|
bool const x_127 = (x_99 < 0.0f);
|
|
bool const x_129 = (x_127 && (x_126 < 0.0f));
|
|
x_136_phi = x_129;
|
|
if (!(x_129)) {
|
|
x_135 = ((x_99 >= 0.0f) && (x_126 >= 0.0f));
|
|
x_136_phi = x_135;
|
|
}
|
|
bool const x_136 = x_136_phi;
|
|
if (!(x_136)) {
|
|
return 0;
|
|
}
|
|
float const x_140 = (*(p)).x;
|
|
float const x_141 = (*(c)).x;
|
|
float const x_143 = (*(p)).y;
|
|
float const x_144 = (*(c)).y;
|
|
float const x_147 = (*(a)).x;
|
|
float const x_148 = (*(c)).x;
|
|
float const x_150 = (*(a)).y;
|
|
float const x_151 = (*(c)).y;
|
|
param_4 = float2((x_140 - x_141), (x_143 - x_144));
|
|
param_5 = float2((x_147 - x_148), (x_150 - x_151));
|
|
float const x_155 = param_4.x;
|
|
float const x_157 = param_5.y;
|
|
float const x_160 = param_5.x;
|
|
float const x_162 = param_4.y;
|
|
float const x_164 = ((x_155 * x_157) - (x_160 * x_162));
|
|
x_66 = x_164;
|
|
bool const x_166 = (x_127 && (x_164 < 0.0f));
|
|
x_173_phi = x_166;
|
|
if (!(x_166)) {
|
|
x_172 = ((x_99 >= 0.0f) && (x_164 >= 0.0f));
|
|
x_173_phi = x_172;
|
|
}
|
|
bool const x_173 = x_173_phi;
|
|
if (!(x_173)) {
|
|
return 0;
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
void main_1(constant buf0& x_17, thread float4* const tint_symbol_3, thread float4* const tint_symbol_4) {
|
|
float2 param_6 = 0.0f;
|
|
float2 param_7 = 0.0f;
|
|
float2 param_8 = 0.0f;
|
|
float2 param_9 = 0.0f;
|
|
float4 const x_55 = *(tint_symbol_3);
|
|
float2 const x_58 = x_17.resolution;
|
|
param_6 = (float2(x_55.x, x_55.y) / x_58);
|
|
param_7 = float2(0.699999988f, 0.300000012f);
|
|
param_8 = float2(0.5f, 0.899999976f);
|
|
param_9 = float2(0.100000001f, 0.400000006f);
|
|
int const x_60 = pointInTriangle_vf2_vf2_vf2_vf2_(&(param_6), &(param_7), &(param_8), &(param_9));
|
|
if ((x_60 == 1)) {
|
|
*(tint_symbol_4) = float4(1.0f, 0.0f, 0.0f, 1.0f);
|
|
} else {
|
|
*(tint_symbol_4) = float4(0.0f, 0.0f, 0.0f, 1.0f);
|
|
}
|
|
return;
|
|
}
|
|
|
|
main_out tint_symbol_inner(constant buf0& x_17, float4 gl_FragCoord_param, thread float4* const tint_symbol_5, thread float4* const tint_symbol_6) {
|
|
*(tint_symbol_5) = gl_FragCoord_param;
|
|
main_1(x_17, tint_symbol_5, tint_symbol_6);
|
|
main_out const tint_symbol_2 = {.x_GLF_color_1=*(tint_symbol_6)};
|
|
return tint_symbol_2;
|
|
}
|
|
|
|
fragment tint_symbol_1 tint_symbol(float4 gl_FragCoord_param [[position]], constant buf0& x_17 [[buffer(0)]]) {
|
|
thread float4 tint_symbol_7 = 0.0f;
|
|
thread float4 tint_symbol_8 = 0.0f;
|
|
main_out const inner_result = tint_symbol_inner(x_17, gl_FragCoord_param, &(tint_symbol_7), &(tint_symbol_8));
|
|
tint_symbol_1 wrapper_result = {};
|
|
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
|
|
return wrapper_result;
|
|
}
|
|
|