1#define_import_path bevy_pbr::pbr_bindings 3#import bevy_pbr::pbr_types::StandardMaterial 6struct StandardMaterialBindings { 8 base_color_texture: u32, 9 base_color_sampler: u32, 10 emissive_texture: u32, 11 emissive_sampler: u32, 12 metallic_roughness_texture: u32, 13 metallic_roughness_sampler: u32, 14 occlusion_texture: u32, 15 occlusion_sampler: u32, 16 normal_map_texture: u32, 17 normal_map_sampler: u32, 18 depth_map_texture: u32, 19 depth_map_sampler: u32, 20 anisotropy_texture: u32, 21 anisotropy_sampler: u32, 22 specular_transmission_texture: u32, 23 specular_transmission_sampler: u32, 24 thickness_texture: u32, 25 thickness_sampler: u32, 26 diffuse_transmission_texture: u32, 27 diffuse_transmission_sampler: u32, 28 clearcoat_texture: u32, 29 clearcoat_sampler: u32, 30 clearcoat_roughness_texture: u32, 31 clearcoat_roughness_sampler: u32, 32 clearcoat_normal_texture: u32, 33 clearcoat_normal_sampler: u32, 34 specular_texture: u32, 35 specular_sampler: u32, 36 specular_tint_texture: u32, 37 specular_tint_sampler: u32, 40@group(#{MATERIAL_BIND_GROUP}) @binding(0) var<storage> material_indices: array<StandardMaterialBindings>; 41@group(#{MATERIAL_BIND_GROUP}) @binding(10) var<storage> material_array: array<StandardMaterial>; 45@group(#{MATERIAL_BIND_GROUP}) @binding(0) var<uniform> material: StandardMaterial; 46@group(#{MATERIAL_BIND_GROUP}) @binding(1) var base_color_texture: texture_2d<f32>; 47@group(#{MATERIAL_BIND_GROUP}) @binding(2) var base_color_sampler: sampler; 48@group(#{MATERIAL_BIND_GROUP}) @binding(3) var emissive_texture: texture_2d<f32>; 49@group(#{MATERIAL_BIND_GROUP}) @binding(4) var emissive_sampler: sampler; 50@group(#{MATERIAL_BIND_GROUP}) @binding(5) var metallic_roughness_texture: texture_2d<f32>; 51@group(#{MATERIAL_BIND_GROUP}) @binding(6) var metallic_roughness_sampler: sampler; 52@group(#{MATERIAL_BIND_GROUP}) @binding(7) var occlusion_texture: texture_2d<f32>; 53@group(#{MATERIAL_BIND_GROUP}) @binding(8) var occlusion_sampler: sampler; 54@group(#{MATERIAL_BIND_GROUP}) @binding(9) var normal_map_texture: texture_2d<f32>; 55@group(#{MATERIAL_BIND_GROUP}) @binding(10) var normal_map_sampler: sampler; 56@group(#{MATERIAL_BIND_GROUP}) @binding(11) var depth_map_texture: texture_2d<f32>; 57@group(#{MATERIAL_BIND_GROUP}) @binding(12) var depth_map_sampler: sampler; 59#ifdef PBR_ANISOTROPY_TEXTURE_SUPPORTED 60@group(#{MATERIAL_BIND_GROUP}) @binding(13) var anisotropy_texture: texture_2d<f32>; 61@group(#{MATERIAL_BIND_GROUP}) @binding(14) var anisotropy_sampler: sampler; 62#endif // PBR_ANISOTROPY_TEXTURE_SUPPORTED 64#ifdef PBR_TRANSMISSION_TEXTURES_SUPPORTED 65@group(#{MATERIAL_BIND_GROUP}) @binding(15) var specular_transmission_texture: texture_2d<f32>; 66@group(#{MATERIAL_BIND_GROUP}) @binding(16) var specular_transmission_sampler: sampler; 67@group(#{MATERIAL_BIND_GROUP}) @binding(17) var thickness_texture: texture_2d<f32>; 68@group(#{MATERIAL_BIND_GROUP}) @binding(18) var thickness_sampler: sampler; 69@group(#{MATERIAL_BIND_GROUP}) @binding(19) var diffuse_transmission_texture: texture_2d<f32>; 70@group(#{MATERIAL_BIND_GROUP}) @binding(20) var diffuse_transmission_sampler: sampler; 71#endif // PBR_TRANSMISSION_TEXTURES_SUPPORTED 73#ifdef PBR_MULTI_LAYER_MATERIAL_TEXTURES_SUPPORTED 74@group(#{MATERIAL_BIND_GROUP}) @binding(21) var clearcoat_texture: texture_2d<f32>; 75@group(#{MATERIAL_BIND_GROUP}) @binding(22) var clearcoat_sampler: sampler; 76@group(#{MATERIAL_BIND_GROUP}) @binding(23) var clearcoat_roughness_texture: texture_2d<f32>; 77@group(#{MATERIAL_BIND_GROUP}) @binding(24) var clearcoat_roughness_sampler: sampler; 78@group(#{MATERIAL_BIND_GROUP}) @binding(25) var clearcoat_normal_texture: texture_2d<f32>; 79@group(#{MATERIAL_BIND_GROUP}) @binding(26) var clearcoat_normal_sampler: sampler; 80#endif // PBR_MULTI_LAYER_MATERIAL_TEXTURES_SUPPORTED 82#ifdef PBR_SPECULAR_TEXTURES_SUPPORTED 83@group(#{MATERIAL_BIND_GROUP}) @binding(27) var specular_texture: texture_2d<f32>; 84@group(#{MATERIAL_BIND_GROUP}) @binding(28) var specular_sampler: sampler; 85@group(#{MATERIAL_BIND_GROUP}) @binding(29) var specular_tint_texture: texture_2d<f32>; 86@group(#{MATERIAL_BIND_GROUP}) @binding(30) var specular_tint_sampler: sampler; 87#endif // PBR_SPECULAR_TEXTURES_SUPPORTED