From 3b23aa08647f39a152342ad2530c7dd946ff7b1a Mon Sep 17 00:00:00 2001 From: re0312 <45868716+re0312@users.noreply.github.com> Date: Mon, 15 Jul 2024 03:35:36 +0800 Subject: [PATCH] Fix prepass batch (#13943) # Objective - After #11804 , The queue_prepass_material_meshes function is now executed in parallel with other queue_* systems. This optimization introduced a potential issue where mesh_instance.should_batch() could return false in queue_prepass_material_meshes due to an unset material_bind_group_id. --- crates/bevy_pbr/src/prepass/mod.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crates/bevy_pbr/src/prepass/mod.rs b/crates/bevy_pbr/src/prepass/mod.rs index 5330e055ee..0d5757a687 100644 --- a/crates/bevy_pbr/src/prepass/mod.rs +++ b/crates/bevy_pbr/src/prepass/mod.rs @@ -851,6 +851,9 @@ pub fn queue_prepass_material_meshes( } }; + mesh_instance + .material_bind_group_id + .set(material.get_bind_group_id()); match mesh_key .intersection(MeshPipelineKey::BLEND_RESERVED_BITS | MeshPipelineKey::MAY_DISCARD) {