Clean up device create extensions

This commit is contained in:
Raph Levien 2021-04-03 08:34:26 -07:00
parent 115cb855d9
commit bcb26c931e

View file

@ -282,12 +282,14 @@ impl VkInstance {
.descriptor_binding_variable_descriptor_count(true) .descriptor_binding_variable_descriptor_count(true)
.runtime_descriptor_array(true); .runtime_descriptor_array(true);
let mut extensions = match surface { let mut extensions = Vec::new();
Some(_) => vec![khr::Swapchain::name().as_ptr()], if surface.is_some() {
None => vec![], extensions.push(khr::Swapchain::name().as_ptr());
}; }
extensions.push(vk::ExtDescriptorIndexingFn::name().as_ptr()); if has_descriptor_indexing {
extensions.push(vk::KhrMaintenance3Fn::name().as_ptr()); extensions.push(vk::KhrMaintenance3Fn::name().as_ptr());
extensions.push(vk::ExtDescriptorIndexingFn::name().as_ptr());
}
let mut create_info = vk::DeviceCreateInfo::builder() let mut create_info = vk::DeviceCreateInfo::builder()
.queue_create_infos(&queue_create_infos) .queue_create_infos(&queue_create_infos)
.enabled_extension_names(&extensions); .enabled_extension_names(&extensions);