bevy/crates/bevy_pbr/src/render
Elabajaba 0f5d8128c9
Fix prepass binding issues causing crashes when not all prepass bindings are used (#10788)
# Objective

Fixes https://github.com/bevyengine/bevy/issues/10786

## Solution

The bind_group_layout entries for the prepass were wrong when not all 4
prepass textures were used, as it just zipped [17, 18, 19, 20] with the
smallvec of prepass `bind_group_layout` entries that potentially didn't
contain 4 entries. (eg. if you had a depth and motion vector prepass but
no normal prepass, then depth would be correct but the entry for the
motion vector prepass would be 18 (normal prepass' spot) instead of 19).

Change the prepass `get_bind_group_layout_entries` function to return an
array of `[Option<BindGroupLayoutEntryBuilder>; 4]` and only add the
layout entry if it exists.
2023-11-29 23:11:12 +00:00
..
clustered_forward.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
fog.rs Fix fog color being inaccurate (#10226) 2023-10-23 12:45:18 +00:00
fog.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
forward_io.wgsl pbr shader cleanup (#10105) 2023-10-13 19:12:40 +00:00
light.rs More inactive camera checks (#10555) 2023-11-14 13:44:42 +00:00
mesh.rs Remove unnecessary path prefixes (#10749) 2023-11-28 23:43:40 +00:00
mesh.wgsl Ensure instance_index push constant is always used in prepass.wgsl (#10706) 2023-11-28 01:13:25 +00:00
mesh_bindings.rs Bind group layout entries (#10224) 2023-11-28 04:00:49 +00:00
mesh_bindings.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
mesh_functions.wgsl View Transformations (#9726) 2023-10-24 21:26:19 +00:00
mesh_types.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
mesh_view_bindings.rs Fix prepass binding issues causing crashes when not all prepass bindings are used (#10788) 2023-11-29 23:11:12 +00:00
mesh_view_bindings.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
mesh_view_types.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
mod.rs Variable MeshPipeline View Bind Group Layout (#10156) 2023-10-21 11:19:44 +00:00
morph.rs Use EntityHashMap<Entity, T> for render world entity storage for better performance (#9903) 2023-09-27 08:28:28 +00:00
morph.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
parallax_mapping.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr_ambient.wgsl Use “specular occlusion” term to consistently extinguish fresnel on Ambient and Environment Map lights (#10182) 2023-10-23 03:26:20 +00:00
pbr_bindings.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
pbr_fragment.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
pbr_functions.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
pbr_lighting.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr_prepass.wgsl double sided normals: fix apply_normal_mapping calls (#10330) 2023-11-01 16:40:25 +00:00
pbr_prepass_functions.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr_transmission.wgsl Non uniform transmission samples (#10674) 2023-11-22 18:54:45 +00:00
pbr_types.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
rgb9e5.wgsl Deferred Renderer (#9258) 2023-10-12 22:10:38 +00:00
shadow_sampling.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
shadows.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
skin.rs Use EntityHashMap<Entity, T> for render world entity storage for better performance (#9903) 2023-09-27 08:28:28 +00:00
skinning.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
utils.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
view_transformations.wgsl View Transformations (#9726) 2023-10-24 21:26:19 +00:00
wireframe.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00