2 mesh2d_vertex_output::VertexOutput, 3 mesh2d_view_bindings::view, 6#ifdef TONEMAP_IN_SHADER 7#import bevy_core_pipeline::tonemapping 17const COLOR_MATERIAL_FLAGS_TEXTURE_BIT: u32 = 1u; 18const COLOR_MATERIAL_FLAGS_ALPHA_MODE_RESERVED_BITS: u32 = 3221225472u; 19const COLOR_MATERIAL_FLAGS_ALPHA_MODE_OPAQUE: u32 = 0u; 20const COLOR_MATERIAL_FLAGS_ALPHA_MODE_MASK: u32 = 1073741824u; 21const COLOR_MATERIAL_FLAGS_ALPHA_MODE_BLEND: u32 = 2147483648u; 23@group(2) @binding(0) var<uniform> material: ColorMaterial; 24@group(2) @binding(1) var texture: texture_2d<f32>; 25@group(2) @binding(2) var texture_sampler: sampler; 30) -> @location(0) vec4<f32> { 31 var output_color: vec4<f32> = material.color; 34 output_color = output_color * mesh.color; 37 if ((material.flags & COLOR_MATERIAL_FLAGS_TEXTURE_BIT) != 0u) { 38 output_color = output_color * textureSample(texture, texture_sampler, mesh.uv); 41 output_color = alpha_discard(material, output_color); 43#ifdef TONEMAP_IN_SHADER 44 output_color = tonemapping::tone_mapping(output_color, view.color_grading); 49fn alpha_discard(material: ColorMaterial, output_color: vec4<f32>) -> vec4<f32> { 50 var color = output_color; 51 let alpha_mode = material.flags & COLOR_MATERIAL_FLAGS_ALPHA_MODE_RESERVED_BITS; 52 if alpha_mode == COLOR_MATERIAL_FLAGS_ALPHA_MODE_OPAQUE { 57 else if alpha_mode == COLOR_MATERIAL_FLAGS_ALPHA_MODE_MASK { 58 if color.a >= material.alpha_cutoff {