Remove deprecated extensions

This commit is contained in:
hodasemi 2025-03-01 06:32:18 +01:00
parent 3d8046818f
commit 74fafcdd8f
2 changed files with 18 additions and 28 deletions

View file

@ -54,21 +54,19 @@ impl DescriptorSetLayoutBuilder {
let binding_flags_ci = let binding_flags_ci =
VkDescriptorSetLayoutBindingFlagsCreateInfoEXT::new(&self.indexing_flags); VkDescriptorSetLayoutBindingFlagsCreateInfoEXT::new(&self.indexing_flags);
if device.enabled_extensions().descriptor_indexing { descriptor_set_ci.chain(&binding_flags_ci);
descriptor_set_ci.chain(&binding_flags_ci);
/* /*
if device.enabled_extensions().maintenance3 { if device.enabled_extensions().maintenance3 {
let mut layout_support = VkDescriptorSetLayoutSupport::default(); let mut layout_support = VkDescriptorSetLayoutSupport::default();
let variable_support = let variable_support =
VkDescriptorSetVariableDescriptorCountLayoutSupportEXT::default(); VkDescriptorSetVariableDescriptorCountLayoutSupportEXT::default();
layout_support.chain(&variable_support); layout_support.chain(&variable_support);
device.descriptor_set_layout_support(&descriptor_set_ci, &mut layout_support); device.descriptor_set_layout_support(&descriptor_set_ci, &mut layout_support);
}
*/
} }
*/
let bindings = self let bindings = self
.layout_bindings .layout_bindings

View file

@ -18,20 +18,20 @@ use core::ffi::c_void;
Extensions!(DeviceExtensions, { Extensions!(DeviceExtensions, {
(amd_rasterization_order, "VK_AMD_rasterization_order"), (amd_rasterization_order, "VK_AMD_rasterization_order"),
(maintenance3, "VK_KHR_maintenance3"), // (maintenance3, "VK_KHR_maintenance3"), // in vulkan 1.1
(descriptor_indexing, "VK_EXT_descriptor_indexing"), // (descriptor_indexing, "VK_EXT_descriptor_indexing"), // in vulkan 1.2
(memory_requirements2, "VK_KHR_get_memory_requirements2"), // (memory_requirements2, "VK_KHR_get_memory_requirements2"), // in vulkan 1.1
(swapchain, "VK_KHR_swapchain"), (swapchain, "VK_KHR_swapchain"),
(memory_budget, "VK_EXT_memory_budget"), (memory_budget, "VK_EXT_memory_budget"),
(memory_priority, "VK_EXT_memory_priority"), (memory_priority, "VK_EXT_memory_priority"),
(debug_marker, "VK_EXT_debug_marker"), (debug_marker, "VK_EXT_debug_marker"),
(ray_tracing_pipeline, "VK_KHR_ray_tracing_pipeline"), (ray_tracing_pipeline, "VK_KHR_ray_tracing_pipeline"),
(buffer_device_address, "VK_KHR_buffer_device_address"), // (buffer_device_address, "VK_KHR_buffer_device_address"), // in vulkan 1.2
(deferred_host_operations, "VK_KHR_deferred_host_operations"), (deferred_host_operations, "VK_KHR_deferred_host_operations"),
(pipeline_library, "VK_KHR_pipeline_library"), (pipeline_library, "VK_KHR_pipeline_library"),
(acceleration_structure, "VK_KHR_acceleration_structure"), (acceleration_structure, "VK_KHR_acceleration_structure"),
(spirv_1_4, "VK_KHR_spirv_1_4"), // (spirv_1_4, "VK_KHR_spirv_1_4"), // in vulkan 1.2
(shader_float_controls, "VK_KHR_shader_float_controls"), // (shader_float_controls, "VK_KHR_shader_float_controls"), // in vulkan 1.2
}); });
pub use vulkan_sys::prelude::VkPhysicalDeviceFeatures as DeviceFeatures; pub use vulkan_sys::prelude::VkPhysicalDeviceFeatures as DeviceFeatures;
@ -156,13 +156,10 @@ impl Device {
pub fn new( pub fn new(
physical_device: Arc<PhysicalDevice>, physical_device: Arc<PhysicalDevice>,
mut extensions: DeviceExtensions, extensions: DeviceExtensions,
queue_infos: &[VkDeviceQueueCreateInfo], queue_infos: &[VkDeviceQueueCreateInfo],
requested_device_features: DeviceFeatures, requested_device_features: DeviceFeatures,
) -> Result<Arc<Device>> { ) -> Result<Arc<Device>> {
// buffer device address is required in the current library implementation
extensions.buffer_device_address = true;
let device_extensions = physical_device.extensions(); let device_extensions = physical_device.extensions();
let mut checked_extensions = Vec::new(); let mut checked_extensions = Vec::new();
@ -209,16 +206,11 @@ impl Device {
} }
} }
if enabled_extensions.descriptor_indexing { device_ci.chain(physical_device.descriptor_indexing_features());
device_ci.chain(physical_device.descriptor_indexing_features()); device_ci.chain(physical_device.buffer_device_address_features());
}
// only required for khr ray tracing // only required for khr ray tracing
// ----- // -----
if enabled_extensions.buffer_device_address {
device_ci.chain(physical_device.buffer_device_address_features());
}
if enabled_extensions.acceleration_structure { if enabled_extensions.acceleration_structure {
device_ci.chain(physical_device.acceleration_structure_features()); device_ci.chain(physical_device.acceleration_structure_features());
} }