2import bevy_ui_render::ui_vertex_output::UiVertexOutput; 3import bevy_ui_render::ui::sd_rounded_box; 6fn fragment(in: UiVertexOutput) -> @location(0) vec4<f32> { 7 let uv = (in.uv - vec2<f32>(0.5, 0.5)) * in.size / 16.; 8 let check = select(0.0, 1.0, (fract(uv.x) < 0.5) != (fract(uv.y) < 0.5)); 9 let bg = mix(vec3<f32>(0.2, 0.2, 0.2), vec3<f32>(0.6, 0.6, 0.6), check); 11 let size = vec2<f32>(in.size.x, in.size.y); 13 let external_distance = sd_rounded_box((in.uv - 0.5) * size, size, in.border_radius_x, in.border_radius_y); 14 let alpha = smoothstep(0.5, -0.5, external_distance); 16 return vec4<f32>(bg, alpha);