[[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_76 : f32 = (*(a)).x; let x_78 : f32 = (*(b)).y; let x_81 : f32 = (*(b)).x; let x_83 : f32 = (*(a)).y; return ((x_76 * x_78) - (x_81 * x_83)); } fn pointInTriangle_vf2_vf2_vf2_vf2_(p : ptr>, a_1 : ptr>, b_1 : ptr>, c : ptr>) -> 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_137 : bool; var x_169 : bool; var x_138_phi : bool; var x_170_phi : bool; let x_87 : ptr = &((*(p)).x); let x_88 : f32 = *(x_87); let x_89 : ptr = &((*(a_1)).x); let x_90 : f32 = *(x_89); let x_92 : ptr = &((*(p)).y); let x_93 : f32 = *(x_92); let x_94 : ptr = &((*(a_1)).y); let x_95 : f32 = *(x_94); let x_98 : ptr = &((*(b_1)).x); let x_99 : f32 = *(x_98); let x_100 : f32 = *(x_89); let x_102 : ptr = &((*(b_1)).y); let x_103 : f32 = *(x_102); let x_104 : f32 = *(x_94); param = vec2((x_88 - x_90), (x_93 - x_95)); param_1 = vec2((x_99 - x_100), (x_103 - x_104)); let x_107 : f32 = cross2d_vf2_vf2_(&(param), &(param_1)); pab = x_107; let x_108 : f32 = *(x_87); let x_109 : f32 = *(x_98); let x_111 : f32 = *(x_92); let x_112 : f32 = *(x_102); let x_115 : ptr = &((*(c)).x); let x_116 : f32 = *(x_115); let x_117 : f32 = *(x_98); let x_119 : ptr = &((*(c)).y); let x_120 : f32 = *(x_119); let x_121 : f32 = *(x_102); param_2 = vec2((x_108 - x_109), (x_111 - x_112)); param_3 = vec2((x_116 - x_117), (x_120 - x_121)); let x_124 : f32 = cross2d_vf2_vf2_(&(param_2), &(param_3)); pbc = x_124; let x_125 : f32 = pab; let x_127 : f32 = pbc; let x_129 : bool = ((x_125 < 0.0) & (x_127 < 0.0)); x_138_phi = x_129; if (!(x_129)) { let x_133 : f32 = pab; let x_135 : f32 = pbc; x_137 = ((x_133 >= 0.0) & (x_135 >= 0.0)); x_138_phi = x_137; } let x_138 : bool = x_138_phi; if (!(x_138)) { return 0; } let x_142 : f32 = *(x_87); let x_143 : f32 = *(x_115); let x_145 : f32 = *(x_92); let x_146 : f32 = *(x_119); let x_149 : f32 = *(x_89); let x_150 : f32 = *(x_115); let x_152 : f32 = *(x_94); let x_153 : f32 = *(x_119); param_4 = vec2((x_142 - x_143), (x_145 - x_146)); param_5 = vec2((x_149 - x_150), (x_152 - x_153)); let x_156 : f32 = cross2d_vf2_vf2_(&(param_4), &(param_5)); pca = x_156; let x_157 : f32 = pab; let x_159 : f32 = pca; let x_161 : bool = ((x_157 < 0.0) & (x_159 < 0.0)); x_170_phi = x_161; if (!(x_161)) { let x_165 : f32 = pab; let x_167 : f32 = pca; x_169 = ((x_165 >= 0.0) & (x_167 >= 0.0)); x_170_phi = x_169; } let x_170 : bool = x_170_phi; if (!(x_170)) { return 0; } return 1; } fn main_1() { var pos : vec2; var param_6 : vec2; var param_7 : vec2; var param_8 : vec2; var param_9 : vec2; let x_63 : vec4 = gl_FragCoord; let x_66 : vec2 = x_24.resolution; pos = (vec2(x_63.x, x_63.y) / x_66); let x_68 : vec2 = pos; param_6 = x_68; param_7 = vec2(0.699999988, 0.300000012); param_8 = vec2(0.5, 0.899999976); param_9 = vec2(0.100000001, 0.400000006); let x_69 : i32 = pointInTriangle_vf2_vf2_vf2_vf2_(&(param_6), &(param_7), &(param_8), &(param_9)); if ((x_69 == 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); }