[[block]] struct buf0 { resolution : vec2; }; var gl_FragCoord : vec4; [[group(0), binding(0)]] var x_24 : buf0; var x_GLF_color : vec4; fn cross2d_vf2_vf2_(a : ptr>, b : ptr>) -> f32 { let x_79 : f32 = (*(a)).x; let x_81 : f32 = (*(b)).y; let x_84 : f32 = (*(b)).x; let x_86 : f32 = (*(a)).y; return ((x_79 * x_81) - (x_84 * x_86)); } fn pointInTriangle_vf2_vf2_vf2_vf2_(p : ptr>, a_1 : ptr>, b_1 : ptr>, c : ptr>) -> i32 { var x_90 : bool = false; var x_91 : i32; var pab : f32; var param : vec2; var param_1 : vec2; var pbc : f32; var param_2 : vec2; var param_3 : vec2; var pca : f32; var param_4 : vec2; var param_5 : vec2; var x_140 : bool; var x_168 : bool; var x_141_phi : bool; var x_169_phi : bool; var x_173_phi : i32; switch(0u) { default: { let x_94 : ptr = &((*(p)).x); let x_95 : f32 = *(x_94); let x_96 : ptr = &((*(a_1)).x); let x_97 : f32 = *(x_96); let x_99 : ptr = &((*(p)).y); let x_100 : f32 = *(x_99); let x_101 : ptr = &((*(a_1)).y); let x_102 : f32 = *(x_101); let x_105 : ptr = &((*(b_1)).x); let x_106 : f32 = *(x_105); let x_107 : f32 = *(x_96); let x_109 : ptr = &((*(b_1)).y); let x_110 : f32 = *(x_109); let x_111 : f32 = *(x_101); param = vec2((x_95 - x_97), (x_100 - x_102)); param_1 = vec2((x_106 - x_107), (x_110 - x_111)); let x_114 : f32 = cross2d_vf2_vf2_(&(param), &(param_1)); pab = x_114; let x_115 : f32 = *(x_94); let x_116 : f32 = *(x_105); let x_118 : f32 = *(x_99); let x_119 : f32 = *(x_109); let x_122 : ptr = &((*(c)).x); let x_123 : f32 = *(x_122); let x_124 : f32 = *(x_105); let x_126 : ptr = &((*(c)).y); let x_127 : f32 = *(x_126); let x_128 : f32 = *(x_109); param_2 = vec2((x_115 - x_116), (x_118 - x_119)); param_3 = vec2((x_123 - x_124), (x_127 - x_128)); let x_131 : f32 = cross2d_vf2_vf2_(&(param_2), &(param_3)); pbc = x_131; let x_134 : bool = ((x_114 < 0.0) & (x_131 < 0.0)); x_141_phi = x_134; if (!(x_134)) { x_140 = ((x_114 >= 0.0) & (x_131 >= 0.0)); x_141_phi = x_140; } let x_141 : bool = x_141_phi; if (!(x_141)) { x_90 = true; x_91 = 0; x_173_phi = 0; break; } let x_145 : f32 = *(x_94); let x_146 : f32 = *(x_122); let x_148 : f32 = *(x_99); let x_149 : f32 = *(x_126); let x_152 : f32 = *(x_96); let x_153 : f32 = *(x_122); let x_155 : f32 = *(x_101); let x_156 : f32 = *(x_126); param_4 = vec2((x_145 - x_146), (x_148 - x_149)); param_5 = vec2((x_152 - x_153), (x_155 - x_156)); let x_159 : f32 = cross2d_vf2_vf2_(&(param_4), &(param_5)); pca = x_159; let x_162 : bool = ((x_114 < 0.0) & (x_159 < 0.0)); x_169_phi = x_162; if (!(x_162)) { x_168 = ((x_114 >= 0.0) & (x_159 >= 0.0)); x_169_phi = x_168; } let x_169 : bool = x_169_phi; if (!(x_169)) { x_90 = true; x_91 = 0; x_173_phi = 0; break; } x_90 = true; x_91 = 1; x_173_phi = 1; } } let x_173 : i32 = x_173_phi; return x_173; } fn main_1() { var pos : vec2; var param_6 : vec2; var param_7 : vec2; var param_8 : vec2; var param_9 : vec2; let x_67 : vec4 = gl_FragCoord; let x_70 : vec2 = x_24.resolution; let x_71 : vec2 = (vec2(x_67.x, x_67.y) / x_70); pos = x_71; param_6 = x_71; param_7 = vec2(0.699999988, 0.300000012); param_8 = vec2(0.5, 0.899999976); param_9 = vec2(0.100000001, 0.400000006); let x_72 : i32 = pointInTriangle_vf2_vf2_vf2_vf2_(&(param_6), &(param_7), &(param_8), &(param_9)); if ((x_72 == 1)) { x_GLF_color = vec4(1.0, 0.0, 0.0, 1.0); } else { x_GLF_color = vec4(0.0, 0.0, 0.0, 1.0); } return; } struct main_out { [[location(0)]] x_GLF_color_1 : vec4; }; [[stage(fragment)]] fn main([[builtin(position)]] gl_FragCoord_param : vec4) -> main_out { gl_FragCoord = gl_FragCoord_param; main_1(); return main_out(x_GLF_color); }