From b7f011e6535b118fc058441d4527cdd5f33e15ea Mon Sep 17 00:00:00 2001 From: Natalie Vock Date: Mon, 17 Nov 2025 16:41:58 +0100 Subject: [PATCH] radv/rt: Correctly copy culling flags when updating to separate AS This was missing and led to the field being uninitialized. Cc: mesa-stable Part-of: --- src/amd/vulkan/bvh/update.comp | 2 ++ src/amd/vulkan/radv_acceleration_structure.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/src/amd/vulkan/bvh/update.comp b/src/amd/vulkan/bvh/update.comp index 84c3c9ab96c..d8a9a6047cf 100644 --- a/src/amd/vulkan/bvh/update.comp +++ b/src/amd/vulkan/bvh/update.comp @@ -95,6 +95,8 @@ void main() { if (!VK_BUILD_FLAG(RADV_BUILD_FLAG_UPDATE_IN_PLACE)) { for (uint32_t i = 0; i < 4; ++i) DEREF(dst_node).children[i] = children[i]; + if (VK_BUILD_FLAG(VK_BUILD_FLAG_PROPAGATE_CULL_FLAGS)) + DEREF(dst_node).flags = DEREF(src_node).flags; } for (uint32_t i = 0; i < valid_child_count; ++i) { diff --git a/src/amd/vulkan/radv_acceleration_structure.c b/src/amd/vulkan/radv_acceleration_structure.c index fe753276189..4271a0be143 100644 --- a/src/amd/vulkan/radv_acceleration_structure.c +++ b/src/amd/vulkan/radv_acceleration_structure.c @@ -320,6 +320,9 @@ radv_get_build_config(VkDevice _device, struct vk_acceleration_structure_build_s if (state->build_info->geometryCount == 1) update_key |= RADV_BUILD_FLAG_UPDATE_SINGLE_GEOMETRY; + if (device->meta_state.accel_struct_build.build_args.propagate_cull_flags) + update_key |= VK_BUILD_FLAG_PROPAGATE_CULL_FLAGS; + state->config.update_key[0] = update_key; }