From ff76d275543fb3bf1c2efa093d9ea4352aa3c22a Mon Sep 17 00:00:00 2001 From: Friedrich Vock Date: Tue, 3 Dec 2024 05:25:41 +0100 Subject: [PATCH] vulkan/runtime/bvh: Set leaf_node_count for updates Since the leaf node pass doesn't run for updates, leaf_node_count never got set. This resulted in updates always running on 0 leaves (i.e. being no-ops). Reviewed-by: Konstantin Seurer Reviewed-by: Connor Abbott Part-of: --- src/vulkan/runtime/vk_acceleration_structure.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/vulkan/runtime/vk_acceleration_structure.c b/src/vulkan/runtime/vk_acceleration_structure.c index ccea927f559..a9f1fdf454d 100644 --- a/src/vulkan/runtime/vk_acceleration_structure.c +++ b/src/vulkan/runtime/vk_acceleration_structure.c @@ -1015,6 +1015,8 @@ vk_cmd_build_acceleration_structures(VkCommandBuffer commandBuffer, batch_state.any_lbvh = true; } else if (config.internal_type == INTERNAL_BUILD_TYPE_UPDATE) { batch_state.any_update = true; + /* For updates, the leaf node pass never runs, so set leaf_node_count here. */ + bvh_states[i].leaf_node_count = leaf_node_count; } else { unreachable("Unknown internal_build_type"); }