From 3b1f94d00dc22bd432873e1038d9c9d525fb6e46 Mon Sep 17 00:00:00 2001 From: Natalie Vock Date: Mon, 28 Apr 2025 13:43:37 +0200 Subject: [PATCH] radv: Encode child opaqueness information in triangle nodes Part-of: --- src/amd/vulkan/bvh/encode.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/amd/vulkan/bvh/encode.h b/src/amd/vulkan/bvh/encode.h index 25abeb2ac8d..98de5603f01 100644 --- a/src/amd/vulkan/bvh/encode.h +++ b/src/amd/vulkan/bvh/encode.h @@ -17,10 +17,12 @@ radv_encode_triangle_gfx10_3(VOID_REF dst_addr, vk_ir_triangle_node src) { REF(radv_bvh_triangle_node) dst = REF(radv_bvh_triangle_node)(dst_addr); + bool opaque = (src.geometry_id_and_flags & VK_GEOMETRY_OPAQUE) != 0; + DEREF(dst).coords = src.coords; DEREF(dst).triangle_id = src.triangle_id; DEREF(dst).geometry_id_and_flags = src.geometry_id_and_flags; - DEREF(dst).id = 9; + DEREF(dst).id = 9 | (opaque ? 128 : 0); } void