struct buf0 { resolution : vec2; }; var gl_FragCoord : vec4; [[group(0), binding(0)]] var x_6 : buf0; var x_GLF_color : vec4; fn main_1() { var indexable : array, 16>; var x_66 : i32; var x_66_phi : i32; var x_69_phi : i32; let x_52 : vec4 = gl_FragCoord; let x_55 : vec2 = x_6.resolution; let x_56 : vec2 = (vec2(x_52.x, x_52.y) / x_55); let x_64 : i32 = (i32((x_56.x * 10.0)) + (i32((x_56.y * 10.0)) * 10)); x_66_phi = 100; x_69_phi = 0; loop { var x_67 : i32; var x_70 : i32; x_66 = x_66_phi; let x_69 : i32 = x_69_phi; if ((x_69 < x_64)) { } else { break; } continuing { x_67 = (((4 * bitcast(x_66)) * (1000 - bitcast(x_66))) / 1000); x_70 = (x_69 + 1); x_66_phi = x_67; x_69_phi = x_70; } } indexable = array, 16>(vec4(0.0, 0.0, 0.0, 1.0), vec4(0.5, 0.0, 0.0, 1.0), vec4(0.0, 0.5, 0.0, 1.0), vec4(0.5, 0.5, 0.0, 1.0), vec4(0.0, 0.0, 0.5, 1.0), vec4(0.5, 0.0, 0.5, 1.0), vec4(0.0, 0.5, 0.5, 1.0), vec4(0.5, 0.5, 0.5, 1.0), vec4(0.0, 0.0, 0.0, 1.0), vec4(1.0, 0.0, 0.0, 1.0), vec4(0.0, 1.0, 0.0, 1.0), vec4(1.0, 1.0, 0.0, 1.0), vec4(0.0, 0.0, 1.0, 1.0), vec4(1.0, 0.0, 1.0, 1.0), vec4(0.0, 1.0, 1.0, 1.0), vec4(1.0, 1.0, 1.0, 1.0)); let x_78 : vec4 = indexable[bitcast((x_66 % 16))]; x_GLF_color = x_78; 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); }