diff --git a/ash/src/vk/definitions.rs b/ash/src/vk/definitions.rs index e95c976cc..646e52ac6 100644 --- a/ash/src/vk/definitions.rs +++ b/ash/src/vk/definitions.rs @@ -45232,11 +45232,17 @@ pub struct TransformMatrixKHR { } #[repr(C)] #[derive(Copy, Clone)] +pub union AccelerationStructureReferenceKHR { + pub device_handle: DeviceAddress, + pub host_handle: AccelerationStructureKHR, +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct AccelerationStructureInstanceKHR { pub transform: TransformMatrixKHR, pub instance_custom_index_and_mask: u32, pub instance_shader_binding_table_record_offset_and_flags: u32, - pub acceleration_structure_reference: u64, + pub acceleration_structure_reference: AccelerationStructureReferenceKHR, } #[repr(C)] #[derive(Copy, Clone, Debug)] diff --git a/generator/src/lib.rs b/generator/src/lib.rs index 022a52b02..ed237f7dd 100644 --- a/generator/src/lib.rs +++ b/generator/src/lib.rs @@ -1977,13 +1977,19 @@ pub fn generate_struct( if &_struct.name == "VkAccelerationStructureInstanceKHR" { return quote! { + #[repr(C)] + #[derive(Copy, Clone)] + pub union AccelerationStructureReferenceKHR { + pub device_handle: DeviceAddress, + pub host_handle: AccelerationStructureKHR, + } #[repr(C)] #[derive(Copy, Clone)] pub struct AccelerationStructureInstanceKHR { pub transform: TransformMatrixKHR, pub instance_custom_index_and_mask: u32, pub instance_shader_binding_table_record_offset_and_flags: u32, - pub acceleration_structure_reference: u64, + pub acceleration_structure_reference: AccelerationStructureReferenceKHR, } }; }