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_145 : bool; var x_185 : bool; var x_146_phi : bool; var x_186_phi : bool; let x_88 : f32 = (*(p)).x; let x_90 : f32 = (*(a_1)).x; let x_93 : f32 = (*(p)).y; let x_95 : f32 = (*(a_1)).y; let x_99 : f32 = (*(b_1)).x; let x_101 : f32 = (*(a_1)).x; let x_104 : f32 = (*(b_1)).y; let x_106 : f32 = (*(a_1)).y; param = vec2((x_88 - x_90), (x_93 - x_95)); param_1 = vec2((x_99 - x_101), (x_104 - x_106)); let x_109 : f32 = cross2d_vf2_vf2_(&(param), &(param_1)); pab = x_109; let x_111 : f32 = (*(p)).x; let x_113 : f32 = (*(b_1)).x; let x_116 : f32 = (*(p)).y; let x_118 : f32 = (*(b_1)).y; let x_122 : f32 = (*(c)).x; let x_124 : f32 = (*(b_1)).x; let x_127 : f32 = (*(c)).y; let x_129 : f32 = (*(b_1)).y; param_2 = vec2((x_111 - x_113), (x_116 - x_118)); param_3 = vec2((x_122 - x_124), (x_127 - x_129)); let x_132 : f32 = cross2d_vf2_vf2_(&(param_2), &(param_3)); pbc = x_132; let x_133 : f32 = pab; let x_135 : f32 = pbc; let x_137 : bool = ((x_133 < 0.0) && (x_135 < 0.0)); x_146_phi = x_137; if (!(x_137)) { let x_141 : f32 = pab; let x_143 : f32 = pbc; x_145 = ((x_141 >= 0.0) && (x_143 >= 0.0)); x_146_phi = x_145; } let x_146 : bool = x_146_phi; if (!(x_146)) { return 0; } let x_151 : f32 = (*(p)).x; let x_153 : f32 = (*(c)).x; let x_156 : f32 = (*(p)).y; let x_158 : f32 = (*(c)).y; let x_162 : f32 = (*(a_1)).x; let x_164 : f32 = (*(c)).x; let x_167 : f32 = (*(a_1)).y; let x_169 : f32 = (*(c)).y; param_4 = vec2((x_151 - x_153), (x_156 - x_158)); param_5 = vec2((x_162 - x_164), (x_167 - x_169)); let x_172 : f32 = cross2d_vf2_vf2_(&(param_4), &(param_5)); pca = x_172; let x_173 : f32 = pab; let x_175 : f32 = pca; let x_177 : bool = ((x_173 < 0.0) && (x_175 < 0.0)); x_186_phi = x_177; if (!(x_177)) { let x_181 : f32 = pab; let x_183 : f32 = pca; x_185 = ((x_181 >= 0.0) && (x_183 >= 0.0)); x_186_phi = x_185; } let x_186 : bool = x_186_phi; if (!(x_186)) { 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); }