9612 lines
392 KiB
Rust
9612 lines
392 KiB
Rust
// This file is auto-generated by vulkano-gen from vk.xml header version 186.
|
|
// It should not be edited manually. Changes should be made by editing vulkano-gen.
|
|
|
|
crate::device::extensions::device_extensions! {
|
|
khr_16bit_storage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_16bit_storage.html)
|
|
- Requires device extension: [`khr_storage_buffer_storage_class`](crate::device::DeviceExtensions::khr_storage_buffer_storage_class)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_16bit_storage",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_storage_buffer_storage_class],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_8bit_storage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_8bit_storage.html)
|
|
- Requires device extension: [`khr_storage_buffer_storage_class`](crate::device::DeviceExtensions::khr_storage_buffer_storage_class)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_8bit_storage",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_storage_buffer_storage_class],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_acceleration_structure => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_acceleration_structure.html)
|
|
- Requires Vulkan 1.1
|
|
- Requires device extensions: [`ext_descriptor_indexing`](crate::device::DeviceExtensions::ext_descriptor_indexing), [`khr_buffer_device_address`](crate::device::DeviceExtensions::khr_buffer_device_address), [`khr_deferred_host_operations`](crate::device::DeviceExtensions::khr_deferred_host_operations)
|
|
",
|
|
raw: b"VK_KHR_acceleration_structure",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [ext_descriptor_indexing, khr_buffer_device_address, khr_deferred_host_operations],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_bind_memory2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_bind_memory2.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_bind_memory2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_buffer_device_address => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_buffer_device_address.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Conflicts with device extension: [`ext_buffer_device_address`](crate::device::DeviceExtensions::ext_buffer_device_address)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_buffer_device_address",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [ext_buffer_device_address],
|
|
},
|
|
khr_copy_commands2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_copy_commands2.html)
|
|
",
|
|
raw: b"VK_KHR_copy_commands2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_create_renderpass2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_create_renderpass2.html)
|
|
- Requires device extensions: [`khr_multiview`](crate::device::DeviceExtensions::khr_multiview), [`khr_maintenance2`](crate::device::DeviceExtensions::khr_maintenance2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_create_renderpass2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_multiview, khr_maintenance2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_dedicated_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_dedicated_allocation.html)
|
|
- Requires device extension: [`khr_get_memory_requirements2`](crate::device::DeviceExtensions::khr_get_memory_requirements2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_dedicated_allocation",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_get_memory_requirements2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_deferred_host_operations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_deferred_host_operations.html)
|
|
",
|
|
raw: b"VK_KHR_deferred_host_operations",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_depth_stencil_resolve => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_depth_stencil_resolve.html)
|
|
- Requires device extension: [`khr_create_renderpass2`](crate::device::DeviceExtensions::khr_create_renderpass2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_depth_stencil_resolve",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_create_renderpass2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_descriptor_update_template => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_descriptor_update_template.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_descriptor_update_template",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_device_group => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_device_group.html)
|
|
- Requires instance extension: [`khr_device_group_creation`](crate::instance::InstanceExtensions::khr_device_group_creation)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_device_group",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_device_group_creation],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_display_swapchain => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_display_swapchain.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extension: [`khr_display`](crate::instance::InstanceExtensions::khr_display)
|
|
",
|
|
raw: b"VK_KHR_display_swapchain",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [khr_display],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_draw_indirect_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_draw_indirect_count.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_draw_indirect_count",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_driver_properties => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_driver_properties.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_driver_properties",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_fence => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_fence.html)
|
|
- Requires instance extension: [`khr_external_fence_capabilities`](crate::instance::InstanceExtensions::khr_external_fence_capabilities)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_fence",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_external_fence_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_fence_fd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_fence_fd.html)
|
|
- Requires device extension: [`khr_external_fence`](crate::device::DeviceExtensions::khr_external_fence)
|
|
",
|
|
raw: b"VK_KHR_external_fence_fd",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_fence],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_fence_win32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_fence_win32.html)
|
|
- Requires device extension: [`khr_external_fence`](crate::device::DeviceExtensions::khr_external_fence)
|
|
",
|
|
raw: b"VK_KHR_external_fence_win32",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_fence],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_memory.html)
|
|
- Requires instance extension: [`khr_external_memory_capabilities`](crate::instance::InstanceExtensions::khr_external_memory_capabilities)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_memory",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_external_memory_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_memory_fd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_memory_fd.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_KHR_external_memory_fd",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_memory_win32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_memory_win32.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_KHR_external_memory_win32",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_semaphore => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_semaphore.html)
|
|
- Requires instance extension: [`khr_external_semaphore_capabilities`](crate::instance::InstanceExtensions::khr_external_semaphore_capabilities)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_semaphore",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_external_semaphore_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_semaphore_fd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_semaphore_fd.html)
|
|
- Requires device extension: [`khr_external_semaphore`](crate::device::DeviceExtensions::khr_external_semaphore)
|
|
",
|
|
raw: b"VK_KHR_external_semaphore_fd",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_semaphore],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_external_semaphore_win32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_semaphore_win32.html)
|
|
- Requires device extension: [`khr_external_semaphore`](crate::device::DeviceExtensions::khr_external_semaphore)
|
|
",
|
|
raw: b"VK_KHR_external_semaphore_win32",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_semaphore],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_fragment_shading_rate => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_fragment_shading_rate.html)
|
|
- Requires device extension: [`khr_create_renderpass2`](crate::device::DeviceExtensions::khr_create_renderpass2)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_fragment_shading_rate",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_create_renderpass2],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_get_memory_requirements2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_get_memory_requirements2.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_get_memory_requirements2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_image_format_list => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_image_format_list.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_image_format_list",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_imageless_framebuffer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_imageless_framebuffer.html)
|
|
- Requires device extensions: [`khr_maintenance2`](crate::device::DeviceExtensions::khr_maintenance2), [`khr_image_format_list`](crate::device::DeviceExtensions::khr_image_format_list)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_imageless_framebuffer",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_maintenance2, khr_image_format_list],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_incremental_present => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_incremental_present.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
",
|
|
raw: b"VK_KHR_incremental_present",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_maintenance1 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_maintenance1.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_maintenance1",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_maintenance2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_maintenance2.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_maintenance2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_maintenance3 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_maintenance3.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_maintenance3",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_multiview => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_multiview.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_multiview",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_performance_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_performance_query.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_performance_query",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_pipeline_executable_properties => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_pipeline_executable_properties.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_pipeline_executable_properties",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_pipeline_library => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_pipeline_library.html)
|
|
",
|
|
raw: b"VK_KHR_pipeline_library",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_portability_subset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_portability_subset.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Must be enabled if it is supported by the physical device
|
|
",
|
|
raw: b"VK_KHR_portability_subset",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: true,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_present_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_present_id.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
",
|
|
raw: b"VK_KHR_present_id",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_present_wait => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_present_wait.html)
|
|
- Requires device extensions: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain), [`khr_present_id`](crate::device::DeviceExtensions::khr_present_id)
|
|
",
|
|
raw: b"VK_KHR_present_wait",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain, khr_present_id],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_push_descriptor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_push_descriptor.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_push_descriptor",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_ray_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_ray_query.html)
|
|
- Requires Vulkan 1.1
|
|
- Requires device extensions: [`khr_spirv_1_4`](crate::device::DeviceExtensions::khr_spirv_1_4), [`khr_acceleration_structure`](crate::device::DeviceExtensions::khr_acceleration_structure)
|
|
",
|
|
raw: b"VK_KHR_ray_query",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [khr_spirv_1_4, khr_acceleration_structure],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_ray_tracing_pipeline => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_ray_tracing_pipeline.html)
|
|
- Requires Vulkan 1.1
|
|
- Requires device extensions: [`khr_spirv_1_4`](crate::device::DeviceExtensions::khr_spirv_1_4), [`khr_acceleration_structure`](crate::device::DeviceExtensions::khr_acceleration_structure)
|
|
",
|
|
raw: b"VK_KHR_ray_tracing_pipeline",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [khr_spirv_1_4, khr_acceleration_structure],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_relaxed_block_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_relaxed_block_layout.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_relaxed_block_layout",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_sampler_mirror_clamp_to_edge => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_sampler_mirror_clamp_to_edge.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_sampler_mirror_clamp_to_edge",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_sampler_ycbcr_conversion => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_sampler_ycbcr_conversion.html)
|
|
- Requires device extensions: [`khr_maintenance1`](crate::device::DeviceExtensions::khr_maintenance1), [`khr_bind_memory2`](crate::device::DeviceExtensions::khr_bind_memory2), [`khr_get_memory_requirements2`](crate::device::DeviceExtensions::khr_get_memory_requirements2)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_sampler_ycbcr_conversion",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_maintenance1, khr_bind_memory2, khr_get_memory_requirements2],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_separate_depth_stencil_layouts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_separate_depth_stencil_layouts.html)
|
|
- Requires device extension: [`khr_create_renderpass2`](crate::device::DeviceExtensions::khr_create_renderpass2)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_separate_depth_stencil_layouts",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_create_renderpass2],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_atomic_int64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_atomic_int64.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_shader_atomic_int64",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_clock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_clock.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_shader_clock",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_draw_parameters => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_draw_parameters.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_shader_draw_parameters",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_float16_int8 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_float16_int8.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_shader_float16_int8",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_float_controls => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_float_controls.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_shader_float_controls",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_non_semantic_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_non_semantic_info.html)
|
|
",
|
|
raw: b"VK_KHR_shader_non_semantic_info",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_subgroup_extended_types => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_subgroup_extended_types.html)
|
|
- Requires Vulkan 1.1
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_shader_subgroup_extended_types",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_subgroup_uniform_control_flow => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_subgroup_uniform_control_flow.html)
|
|
- Requires Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_shader_subgroup_uniform_control_flow",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shader_terminate_invocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shader_terminate_invocation.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_shader_terminate_invocation",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_shared_presentable_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_shared_presentable_image.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extensions: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2), [`khr_get_surface_capabilities2`](crate::instance::InstanceExtensions::khr_get_surface_capabilities2)
|
|
",
|
|
raw: b"VK_KHR_shared_presentable_image",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2, khr_get_surface_capabilities2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_spirv_1_4 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_spirv_1_4.html)
|
|
- Requires Vulkan 1.1
|
|
- Requires device extension: [`khr_shader_float_controls`](crate::device::DeviceExtensions::khr_shader_float_controls)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_spirv_1_4",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [khr_shader_float_controls],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_storage_buffer_storage_class => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_storage_buffer_storage_class.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_storage_buffer_storage_class",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_swapchain => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_swapchain.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_swapchain",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_surface],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_swapchain_mutable_format => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_swapchain_mutable_format.html)
|
|
- Requires device extensions: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain), [`khr_maintenance2`](crate::device::DeviceExtensions::khr_maintenance2), [`khr_image_format_list`](crate::device::DeviceExtensions::khr_image_format_list)
|
|
",
|
|
raw: b"VK_KHR_swapchain_mutable_format",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain, khr_maintenance2, khr_image_format_list],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_synchronization2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_synchronization2.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_synchronization2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_timeline_semaphore => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_timeline_semaphore.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_timeline_semaphore",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_uniform_buffer_standard_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_uniform_buffer_standard_layout.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_uniform_buffer_standard_layout",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_variable_pointers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_variable_pointers.html)
|
|
- Requires device extension: [`khr_storage_buffer_storage_class`](crate::device::DeviceExtensions::khr_storage_buffer_storage_class)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_variable_pointers",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_storage_buffer_storage_class],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_video_decode_queue => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_video_decode_queue.html)
|
|
- Requires device extensions: [`khr_video_queue`](crate::device::DeviceExtensions::khr_video_queue), [`khr_synchronization2`](crate::device::DeviceExtensions::khr_synchronization2)
|
|
",
|
|
raw: b"VK_KHR_video_decode_queue",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_video_queue, khr_synchronization2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_video_encode_queue => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_video_encode_queue.html)
|
|
- Requires device extensions: [`khr_video_queue`](crate::device::DeviceExtensions::khr_video_queue), [`khr_synchronization2`](crate::device::DeviceExtensions::khr_synchronization2)
|
|
",
|
|
raw: b"VK_KHR_video_encode_queue",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_video_queue, khr_synchronization2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_video_queue => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_video_queue.html)
|
|
- Requires device extension: [`khr_sampler_ycbcr_conversion`](crate::device::DeviceExtensions::khr_sampler_ycbcr_conversion)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_video_queue",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_sampler_ycbcr_conversion],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_vulkan_memory_model => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_vulkan_memory_model.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_KHR_vulkan_memory_model",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_win32_keyed_mutex => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_win32_keyed_mutex.html)
|
|
- Requires device extension: [`khr_external_memory_win32`](crate::device::DeviceExtensions::khr_external_memory_win32)
|
|
",
|
|
raw: b"VK_KHR_win32_keyed_mutex",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory_win32],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_workgroup_memory_explicit_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_workgroup_memory_explicit_layout.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_workgroup_memory_explicit_layout",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
khr_zero_initialize_workgroup_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_zero_initialize_workgroup_memory.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_KHR_zero_initialize_workgroup_memory",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_4444_formats => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_4444_formats.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_4444_formats",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_astc_decode_mode => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_astc_decode_mode.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_astc_decode_mode",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_blend_operation_advanced => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_blend_operation_advanced.html)
|
|
",
|
|
raw: b"VK_EXT_blend_operation_advanced",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_buffer_device_address => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_buffer_device_address.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Conflicts with device extension: [`khr_buffer_device_address`](crate::device::DeviceExtensions::khr_buffer_device_address)
|
|
- Deprecated by [`khr_buffer_device_address`](crate::device::DeviceExtensions::khr_buffer_device_address)
|
|
",
|
|
raw: b"VK_EXT_buffer_device_address",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [khr_buffer_device_address],
|
|
},
|
|
ext_calibrated_timestamps => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_calibrated_timestamps.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_calibrated_timestamps",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_color_write_enable => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_color_write_enable.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_color_write_enable",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_conditional_rendering => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_conditional_rendering.html)
|
|
",
|
|
raw: b"VK_EXT_conditional_rendering",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_conservative_rasterization => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_conservative_rasterization.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_conservative_rasterization",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_custom_border_color => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_custom_border_color.html)
|
|
",
|
|
raw: b"VK_EXT_custom_border_color",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_debug_marker => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_debug_marker.html)
|
|
- Requires instance extension: [`ext_debug_report`](crate::instance::InstanceExtensions::ext_debug_report)
|
|
- Promoted to [`ext_debug_utils`](crate::instance::InstanceExtensions::ext_debug_utils)
|
|
",
|
|
raw: b"VK_EXT_debug_marker",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [ext_debug_report],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_depth_clip_enable => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_depth_clip_enable.html)
|
|
",
|
|
raw: b"VK_EXT_depth_clip_enable",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_depth_range_unrestricted => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_depth_range_unrestricted.html)
|
|
",
|
|
raw: b"VK_EXT_depth_range_unrestricted",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_descriptor_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_descriptor_indexing.html)
|
|
- Requires device extension: [`khr_maintenance3`](crate::device::DeviceExtensions::khr_maintenance3)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_descriptor_indexing",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_maintenance3],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_device_memory_report => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_device_memory_report.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_device_memory_report",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_discard_rectangles => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_discard_rectangles.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_discard_rectangles",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_display_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_display_control.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extension: [`ext_display_surface_counter`](crate::instance::InstanceExtensions::ext_display_surface_counter)
|
|
",
|
|
raw: b"VK_EXT_display_control",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [ext_display_surface_counter],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_extended_dynamic_state => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_extended_dynamic_state.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_extended_dynamic_state",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_extended_dynamic_state2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_extended_dynamic_state2.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_extended_dynamic_state2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_external_memory_dma_buf => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_external_memory_dma_buf.html)
|
|
- Requires device extension: [`khr_external_memory_fd`](crate::device::DeviceExtensions::khr_external_memory_fd)
|
|
",
|
|
raw: b"VK_EXT_external_memory_dma_buf",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory_fd],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_external_memory_host => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_external_memory_host.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_EXT_external_memory_host",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_filter_cubic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_filter_cubic.html)
|
|
",
|
|
raw: b"VK_EXT_filter_cubic",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_fragment_density_map => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_fragment_density_map.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_fragment_density_map",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_fragment_density_map2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_fragment_density_map2.html)
|
|
- Requires device extension: [`ext_fragment_density_map`](crate::device::DeviceExtensions::ext_fragment_density_map)
|
|
",
|
|
raw: b"VK_EXT_fragment_density_map2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [ext_fragment_density_map],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_fragment_shader_interlock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_fragment_shader_interlock.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_fragment_shader_interlock",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_full_screen_exclusive => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_full_screen_exclusive.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extensions: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2), [`khr_surface`](crate::instance::InstanceExtensions::khr_surface), [`khr_get_surface_capabilities2`](crate::instance::InstanceExtensions::khr_get_surface_capabilities2)
|
|
",
|
|
raw: b"VK_EXT_full_screen_exclusive",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2, khr_surface, khr_get_surface_capabilities2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_global_priority => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_global_priority.html)
|
|
",
|
|
raw: b"VK_EXT_global_priority",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_global_priority_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_global_priority_query.html)
|
|
- Requires device extension: [`ext_global_priority`](crate::device::DeviceExtensions::ext_global_priority)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_global_priority_query",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [ext_global_priority],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_hdr_metadata => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_hdr_metadata.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
",
|
|
raw: b"VK_EXT_hdr_metadata",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_host_query_reset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_host_query_reset.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_host_query_reset",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_image_drm_format_modifier => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_image_drm_format_modifier.html)
|
|
- Requires device extensions: [`khr_bind_memory2`](crate::device::DeviceExtensions::khr_bind_memory2), [`khr_image_format_list`](crate::device::DeviceExtensions::khr_image_format_list), [`khr_sampler_ycbcr_conversion`](crate::device::DeviceExtensions::khr_sampler_ycbcr_conversion)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_image_drm_format_modifier",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_bind_memory2, khr_image_format_list, khr_sampler_ycbcr_conversion],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_image_robustness => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_image_robustness.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_image_robustness",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_index_type_uint8 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_index_type_uint8.html)
|
|
",
|
|
raw: b"VK_EXT_index_type_uint8",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_inline_uniform_block => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_inline_uniform_block.html)
|
|
- Requires device extension: [`khr_maintenance1`](crate::device::DeviceExtensions::khr_maintenance1)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_inline_uniform_block",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_maintenance1],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_line_rasterization => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_line_rasterization.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_line_rasterization",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_memory_budget => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_memory_budget.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_memory_budget",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_memory_priority => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_memory_priority.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_memory_priority",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_multi_draw => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_multi_draw.html)
|
|
",
|
|
raw: b"VK_EXT_multi_draw",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_pci_bus_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_pci_bus_info.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_pci_bus_info",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_physical_device_drm => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_physical_device_drm.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_physical_device_drm",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_pipeline_creation_cache_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_pipeline_creation_cache_control.html)
|
|
",
|
|
raw: b"VK_EXT_pipeline_creation_cache_control",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_pipeline_creation_feedback => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_pipeline_creation_feedback.html)
|
|
",
|
|
raw: b"VK_EXT_pipeline_creation_feedback",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_post_depth_coverage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_post_depth_coverage.html)
|
|
",
|
|
raw: b"VK_EXT_post_depth_coverage",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_private_data => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_private_data.html)
|
|
",
|
|
raw: b"VK_EXT_private_data",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_provoking_vertex => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_provoking_vertex.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_provoking_vertex",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_queue_family_foreign => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_queue_family_foreign.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_EXT_queue_family_foreign",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_robustness2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_robustness2.html)
|
|
",
|
|
raw: b"VK_EXT_robustness2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_sample_locations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_sample_locations.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_sample_locations",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_sampler_filter_minmax => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_sampler_filter_minmax.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_sampler_filter_minmax",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_scalar_block_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_scalar_block_layout.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_scalar_block_layout",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_separate_stencil_usage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_separate_stencil_usage.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_separate_stencil_usage",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_atomic_float => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_atomic_float.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_shader_atomic_float",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_atomic_float2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_atomic_float2.html)
|
|
- Requires device extension: [`ext_shader_atomic_float`](crate::device::DeviceExtensions::ext_shader_atomic_float)
|
|
",
|
|
raw: b"VK_EXT_shader_atomic_float2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [ext_shader_atomic_float],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_demote_to_helper_invocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_demote_to_helper_invocation.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_shader_demote_to_helper_invocation",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_image_atomic_int64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_image_atomic_int64.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_shader_image_atomic_int64",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_stencil_export => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_stencil_export.html)
|
|
",
|
|
raw: b"VK_EXT_shader_stencil_export",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_subgroup_ballot => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_subgroup_ballot.html)
|
|
- Deprecated by Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_shader_subgroup_ballot",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_subgroup_vote => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_subgroup_vote.html)
|
|
- Deprecated by Vulkan 1.1
|
|
",
|
|
raw: b"VK_EXT_shader_subgroup_vote",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_shader_viewport_index_layer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_shader_viewport_index_layer.html)
|
|
- Promoted to Vulkan 1.2
|
|
",
|
|
raw: b"VK_EXT_shader_viewport_index_layer",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_subgroup_size_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_subgroup_size_control.html)
|
|
- Requires Vulkan 1.1
|
|
",
|
|
raw: b"VK_EXT_subgroup_size_control",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_texel_buffer_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_texel_buffer_alignment.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_texel_buffer_alignment",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_texture_compression_astc_hdr => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_texture_compression_astc_hdr.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_texture_compression_astc_hdr",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_tooling_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_tooling_info.html)
|
|
",
|
|
raw: b"VK_EXT_tooling_info",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_transform_feedback => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_transform_feedback.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_transform_feedback",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_validation_cache => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_validation_cache.html)
|
|
",
|
|
raw: b"VK_EXT_validation_cache",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_vertex_attribute_divisor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_vertex_attribute_divisor.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_vertex_attribute_divisor",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_vertex_input_dynamic_state => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_vertex_input_dynamic_state.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_EXT_vertex_input_dynamic_state",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_video_decode_h264 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_video_decode_h264.html)
|
|
- Requires device extension: [`khr_video_decode_queue`](crate::device::DeviceExtensions::khr_video_decode_queue)
|
|
",
|
|
raw: b"VK_EXT_video_decode_h264",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_video_decode_queue],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_video_decode_h265 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_video_decode_h265.html)
|
|
- Requires device extension: [`khr_video_decode_queue`](crate::device::DeviceExtensions::khr_video_decode_queue)
|
|
",
|
|
raw: b"VK_EXT_video_decode_h265",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_video_decode_queue],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_video_encode_h264 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_video_encode_h264.html)
|
|
- Requires device extension: [`khr_video_encode_queue`](crate::device::DeviceExtensions::khr_video_encode_queue)
|
|
",
|
|
raw: b"VK_EXT_video_encode_h264",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_video_encode_queue],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_ycbcr_2plane_444_formats => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_ycbcr_2plane_444_formats.html)
|
|
- Requires device extension: [`khr_sampler_ycbcr_conversion`](crate::device::DeviceExtensions::khr_sampler_ycbcr_conversion)
|
|
",
|
|
raw: b"VK_EXT_ycbcr_2plane_444_formats",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_sampler_ycbcr_conversion],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ext_ycbcr_image_arrays => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_ycbcr_image_arrays.html)
|
|
- Requires device extension: [`khr_sampler_ycbcr_conversion`](crate::device::DeviceExtensions::khr_sampler_ycbcr_conversion)
|
|
",
|
|
raw: b"VK_EXT_ycbcr_image_arrays",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_sampler_ycbcr_conversion],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_buffer_marker => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_buffer_marker.html)
|
|
",
|
|
raw: b"VK_AMD_buffer_marker",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_device_coherent_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_device_coherent_memory.html)
|
|
",
|
|
raw: b"VK_AMD_device_coherent_memory",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_display_native_hdr => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_display_native_hdr.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extensions: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2), [`khr_get_surface_capabilities2`](crate::instance::InstanceExtensions::khr_get_surface_capabilities2)
|
|
",
|
|
raw: b"VK_AMD_display_native_hdr",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2, khr_get_surface_capabilities2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_draw_indirect_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_draw_indirect_count.html)
|
|
- Promoted to [`khr_draw_indirect_count`](crate::device::DeviceExtensions::khr_draw_indirect_count)
|
|
",
|
|
raw: b"VK_AMD_draw_indirect_count",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_gcn_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_gcn_shader.html)
|
|
",
|
|
raw: b"VK_AMD_gcn_shader",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_gpu_shader_half_float => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_gpu_shader_half_float.html)
|
|
- Deprecated by [`khr_shader_float16_int8`](crate::device::DeviceExtensions::khr_shader_float16_int8)
|
|
",
|
|
raw: b"VK_AMD_gpu_shader_half_float",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_gpu_shader_int16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_gpu_shader_int16.html)
|
|
- Deprecated by [`khr_shader_float16_int8`](crate::device::DeviceExtensions::khr_shader_float16_int8)
|
|
",
|
|
raw: b"VK_AMD_gpu_shader_int16",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_memory_overallocation_behavior => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_memory_overallocation_behavior.html)
|
|
",
|
|
raw: b"VK_AMD_memory_overallocation_behavior",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_mixed_attachment_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_mixed_attachment_samples.html)
|
|
",
|
|
raw: b"VK_AMD_mixed_attachment_samples",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_pipeline_compiler_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_pipeline_compiler_control.html)
|
|
",
|
|
raw: b"VK_AMD_pipeline_compiler_control",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_rasterization_order => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_rasterization_order.html)
|
|
",
|
|
raw: b"VK_AMD_rasterization_order",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_ballot => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_ballot.html)
|
|
",
|
|
raw: b"VK_AMD_shader_ballot",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_core_properties => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_core_properties.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_AMD_shader_core_properties",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_core_properties2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_core_properties2.html)
|
|
- Requires device extension: [`amd_shader_core_properties`](crate::device::DeviceExtensions::amd_shader_core_properties)
|
|
",
|
|
raw: b"VK_AMD_shader_core_properties2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [amd_shader_core_properties],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_explicit_vertex_parameter => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_explicit_vertex_parameter.html)
|
|
",
|
|
raw: b"VK_AMD_shader_explicit_vertex_parameter",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_fragment_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_fragment_mask.html)
|
|
",
|
|
raw: b"VK_AMD_shader_fragment_mask",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_image_load_store_lod => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_image_load_store_lod.html)
|
|
",
|
|
raw: b"VK_AMD_shader_image_load_store_lod",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_info.html)
|
|
",
|
|
raw: b"VK_AMD_shader_info",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_shader_trinary_minmax => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_shader_trinary_minmax.html)
|
|
",
|
|
raw: b"VK_AMD_shader_trinary_minmax",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
amd_texture_gather_bias_lod => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_AMD_texture_gather_bias_lod.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_AMD_texture_gather_bias_lod",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
android_external_memory_android_hardware_buffer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_ANDROID_external_memory_android_hardware_buffer.html)
|
|
- Requires device extensions: [`khr_sampler_ycbcr_conversion`](crate::device::DeviceExtensions::khr_sampler_ycbcr_conversion), [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory), [`ext_queue_family_foreign`](crate::device::DeviceExtensions::ext_queue_family_foreign), [`khr_dedicated_allocation`](crate::device::DeviceExtensions::khr_dedicated_allocation)
|
|
",
|
|
raw: b"VK_ANDROID_external_memory_android_hardware_buffer",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_sampler_ycbcr_conversion, khr_external_memory, ext_queue_family_foreign, khr_dedicated_allocation],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
fuchsia_external_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_FUCHSIA_external_memory.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
- Requires instance extension: [`khr_external_memory_capabilities`](crate::instance::InstanceExtensions::khr_external_memory_capabilities)
|
|
",
|
|
raw: b"VK_FUCHSIA_external_memory",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [khr_external_memory_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
fuchsia_external_semaphore => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_FUCHSIA_external_semaphore.html)
|
|
- Requires device extension: [`khr_external_semaphore`](crate::device::DeviceExtensions::khr_external_semaphore)
|
|
- Requires instance extension: [`khr_external_semaphore_capabilities`](crate::instance::InstanceExtensions::khr_external_semaphore_capabilities)
|
|
",
|
|
raw: b"VK_FUCHSIA_external_semaphore",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_semaphore],
|
|
requires_instance_extensions: [khr_external_semaphore_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
ggp_frame_token => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GGP_frame_token.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extension: [`ggp_stream_descriptor_surface`](crate::instance::InstanceExtensions::ggp_stream_descriptor_surface)
|
|
",
|
|
raw: b"VK_GGP_frame_token",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [ggp_stream_descriptor_surface],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
google_decorate_string => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GOOGLE_decorate_string.html)
|
|
",
|
|
raw: b"VK_GOOGLE_decorate_string",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
google_display_timing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GOOGLE_display_timing.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
",
|
|
raw: b"VK_GOOGLE_display_timing",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
google_hlsl_functionality1 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GOOGLE_hlsl_functionality1.html)
|
|
",
|
|
raw: b"VK_GOOGLE_hlsl_functionality1",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
google_user_type => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GOOGLE_user_type.html)
|
|
",
|
|
raw: b"VK_GOOGLE_user_type",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
huawei_invocation_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_HUAWEI_invocation_mask.html)
|
|
- Requires device extensions: [`khr_ray_tracing_pipeline`](crate::device::DeviceExtensions::khr_ray_tracing_pipeline), [`khr_synchronization2`](crate::device::DeviceExtensions::khr_synchronization2)
|
|
",
|
|
raw: b"VK_HUAWEI_invocation_mask",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_ray_tracing_pipeline, khr_synchronization2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
huawei_subpass_shading => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_HUAWEI_subpass_shading.html)
|
|
- Requires device extensions: [`khr_create_renderpass2`](crate::device::DeviceExtensions::khr_create_renderpass2), [`khr_synchronization2`](crate::device::DeviceExtensions::khr_synchronization2)
|
|
",
|
|
raw: b"VK_HUAWEI_subpass_shading",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_create_renderpass2, khr_synchronization2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
img_filter_cubic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_IMG_filter_cubic.html)
|
|
",
|
|
raw: b"VK_IMG_filter_cubic",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
img_format_pvrtc => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_IMG_format_pvrtc.html)
|
|
",
|
|
raw: b"VK_IMG_format_pvrtc",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
intel_performance_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_INTEL_performance_query.html)
|
|
",
|
|
raw: b"VK_INTEL_performance_query",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
intel_shader_integer_functions2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_INTEL_shader_integer_functions2.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_INTEL_shader_integer_functions2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nvx_binary_import => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NVX_binary_import.html)
|
|
",
|
|
raw: b"VK_NVX_binary_import",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nvx_image_view_handle => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NVX_image_view_handle.html)
|
|
",
|
|
raw: b"VK_NVX_image_view_handle",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nvx_multiview_per_view_attributes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NVX_multiview_per_view_attributes.html)
|
|
- Requires device extension: [`khr_multiview`](crate::device::DeviceExtensions::khr_multiview)
|
|
",
|
|
raw: b"VK_NVX_multiview_per_view_attributes",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_multiview],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_acquire_winrt_display => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_acquire_winrt_display.html)
|
|
- Requires instance extension: [`ext_direct_mode_display`](crate::instance::InstanceExtensions::ext_direct_mode_display)
|
|
",
|
|
raw: b"VK_NV_acquire_winrt_display",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [ext_direct_mode_display],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_clip_space_w_scaling => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_clip_space_w_scaling.html)
|
|
",
|
|
raw: b"VK_NV_clip_space_w_scaling",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_compute_shader_derivatives => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_compute_shader_derivatives.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_compute_shader_derivatives",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_cooperative_matrix => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_cooperative_matrix.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_cooperative_matrix",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_corner_sampled_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_corner_sampled_image.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_corner_sampled_image",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_coverage_reduction_mode => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_coverage_reduction_mode.html)
|
|
- Requires device extension: [`nv_framebuffer_mixed_samples`](crate::device::DeviceExtensions::nv_framebuffer_mixed_samples)
|
|
",
|
|
raw: b"VK_NV_coverage_reduction_mode",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [nv_framebuffer_mixed_samples],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_dedicated_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_dedicated_allocation.html)
|
|
- Deprecated by [`khr_dedicated_allocation`](crate::device::DeviceExtensions::khr_dedicated_allocation)
|
|
",
|
|
raw: b"VK_NV_dedicated_allocation",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_dedicated_allocation_image_aliasing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_dedicated_allocation_image_aliasing.html)
|
|
- Requires device extension: [`khr_dedicated_allocation`](crate::device::DeviceExtensions::khr_dedicated_allocation)
|
|
",
|
|
raw: b"VK_NV_dedicated_allocation_image_aliasing",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_dedicated_allocation],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_device_diagnostic_checkpoints => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_device_diagnostic_checkpoints.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_device_diagnostic_checkpoints",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_device_diagnostics_config => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_device_diagnostics_config.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_device_diagnostics_config",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_device_generated_commands => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_device_generated_commands.html)
|
|
- Requires Vulkan 1.1
|
|
",
|
|
raw: b"VK_NV_device_generated_commands",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_external_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_external_memory.html)
|
|
- Requires instance extension: [`nv_external_memory_capabilities`](crate::instance::InstanceExtensions::nv_external_memory_capabilities)
|
|
- Deprecated by [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_NV_external_memory",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [nv_external_memory_capabilities],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_external_memory_rdma => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_external_memory_rdma.html)
|
|
- Requires device extension: [`khr_external_memory`](crate::device::DeviceExtensions::khr_external_memory)
|
|
",
|
|
raw: b"VK_NV_external_memory_rdma",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_external_memory_win32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_external_memory_win32.html)
|
|
- Requires device extension: [`nv_external_memory`](crate::device::DeviceExtensions::nv_external_memory)
|
|
- Deprecated by [`khr_external_memory_win32`](crate::device::DeviceExtensions::khr_external_memory_win32)
|
|
",
|
|
raw: b"VK_NV_external_memory_win32",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [nv_external_memory],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_fill_rectangle => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_fill_rectangle.html)
|
|
",
|
|
raw: b"VK_NV_fill_rectangle",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_fragment_coverage_to_color => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_fragment_coverage_to_color.html)
|
|
",
|
|
raw: b"VK_NV_fragment_coverage_to_color",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_fragment_shader_barycentric => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_fragment_shader_barycentric.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_fragment_shader_barycentric",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_fragment_shading_rate_enums => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_fragment_shading_rate_enums.html)
|
|
- Requires device extension: [`khr_fragment_shading_rate`](crate::device::DeviceExtensions::khr_fragment_shading_rate)
|
|
",
|
|
raw: b"VK_NV_fragment_shading_rate_enums",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_fragment_shading_rate],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_framebuffer_mixed_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_framebuffer_mixed_samples.html)
|
|
",
|
|
raw: b"VK_NV_framebuffer_mixed_samples",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_geometry_shader_passthrough => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_geometry_shader_passthrough.html)
|
|
",
|
|
raw: b"VK_NV_geometry_shader_passthrough",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_glsl_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_glsl_shader.html)
|
|
- Deprecated without a replacement
|
|
",
|
|
raw: b"VK_NV_glsl_shader",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_inherited_viewport_scissor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_inherited_viewport_scissor.html)
|
|
",
|
|
raw: b"VK_NV_inherited_viewport_scissor",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_mesh_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_mesh_shader.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_mesh_shader",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_ray_tracing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_ray_tracing.html)
|
|
- Requires device extension: [`khr_get_memory_requirements2`](crate::device::DeviceExtensions::khr_get_memory_requirements2)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_ray_tracing",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_get_memory_requirements2],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_ray_tracing_motion_blur => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_ray_tracing_motion_blur.html)
|
|
- Requires device extension: [`khr_ray_tracing_pipeline`](crate::device::DeviceExtensions::khr_ray_tracing_pipeline)
|
|
",
|
|
raw: b"VK_NV_ray_tracing_motion_blur",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_ray_tracing_pipeline],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_representative_fragment_test => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_representative_fragment_test.html)
|
|
",
|
|
raw: b"VK_NV_representative_fragment_test",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_sample_mask_override_coverage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_sample_mask_override_coverage.html)
|
|
",
|
|
raw: b"VK_NV_sample_mask_override_coverage",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_scissor_exclusive => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_scissor_exclusive.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_scissor_exclusive",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_shader_image_footprint => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_shader_image_footprint.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_shader_image_footprint",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_shader_sm_builtins => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_shader_sm_builtins.html)
|
|
- Requires Vulkan 1.1
|
|
",
|
|
raw: b"VK_NV_shader_sm_builtins",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_shader_subgroup_partitioned => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_shader_subgroup_partitioned.html)
|
|
- Requires Vulkan 1.1
|
|
",
|
|
raw: b"VK_NV_shader_subgroup_partitioned",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_shading_rate_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_shading_rate_image.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
",
|
|
raw: b"VK_NV_shading_rate_image",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_viewport_array2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_viewport_array2.html)
|
|
",
|
|
raw: b"VK_NV_viewport_array2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_viewport_swizzle => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_viewport_swizzle.html)
|
|
",
|
|
raw: b"VK_NV_viewport_swizzle",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
nv_win32_keyed_mutex => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_win32_keyed_mutex.html)
|
|
- Requires device extension: [`nv_external_memory_win32`](crate::device::DeviceExtensions::nv_external_memory_win32)
|
|
- Promoted to [`khr_win32_keyed_mutex`](crate::device::DeviceExtensions::khr_win32_keyed_mutex)
|
|
",
|
|
raw: b"VK_NV_win32_keyed_mutex",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [nv_external_memory_win32],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
qcom_render_pass_shader_resolve => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_QCOM_render_pass_shader_resolve.html)
|
|
",
|
|
raw: b"VK_QCOM_render_pass_shader_resolve",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
qcom_render_pass_store_ops => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_QCOM_render_pass_store_ops.html)
|
|
",
|
|
raw: b"VK_QCOM_render_pass_store_ops",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
qcom_render_pass_transform => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_QCOM_render_pass_transform.html)
|
|
- Requires device extension: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_QCOM_render_pass_transform",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain],
|
|
requires_instance_extensions: [khr_surface],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
qcom_rotated_copy_commands => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_QCOM_rotated_copy_commands.html)
|
|
- Requires device extensions: [`khr_swapchain`](crate::device::DeviceExtensions::khr_swapchain), [`khr_copy_commands2`](crate::device::DeviceExtensions::khr_copy_commands2)
|
|
",
|
|
raw: b"VK_QCOM_rotated_copy_commands",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_swapchain, khr_copy_commands2],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
valve_mutable_descriptor_type => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_VALVE_mutable_descriptor_type.html)
|
|
- Requires device extension: [`khr_maintenance3`](crate::device::DeviceExtensions::khr_maintenance3)
|
|
",
|
|
raw: b"VK_VALVE_mutable_descriptor_type",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_device_extensions: [khr_maintenance3],
|
|
requires_instance_extensions: [],
|
|
required_if_supported: false,
|
|
conflicts_device_extensions: [],
|
|
},
|
|
}
|
|
|
|
crate::instance::extensions::instance_extensions! {
|
|
khr_android_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_android_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_android_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_device_group_creation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_device_group_creation.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_device_group_creation",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
khr_display => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_display.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_display",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_external_fence_capabilities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_fence_capabilities.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_fence_capabilities",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
},
|
|
khr_external_memory_capabilities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_memory_capabilities.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_memory_capabilities",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
},
|
|
khr_external_semaphore_capabilities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_semaphore_capabilities.html)
|
|
- Requires instance extension: [`khr_get_physical_device_properties2`](crate::instance::InstanceExtensions::khr_get_physical_device_properties2)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_external_semaphore_capabilities",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_get_physical_device_properties2],
|
|
},
|
|
khr_get_display_properties2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_get_display_properties2.html)
|
|
- Requires instance extension: [`khr_display`](crate::instance::InstanceExtensions::khr_display)
|
|
",
|
|
raw: b"VK_KHR_get_display_properties2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_display],
|
|
},
|
|
khr_get_physical_device_properties2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_get_physical_device_properties2.html)
|
|
- Promoted to Vulkan 1.1
|
|
",
|
|
raw: b"VK_KHR_get_physical_device_properties2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
khr_get_surface_capabilities2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_get_surface_capabilities2.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_get_surface_capabilities2",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_surface.html)
|
|
",
|
|
raw: b"VK_KHR_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
khr_surface_protected_capabilities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_surface_protected_capabilities.html)
|
|
- Requires Vulkan 1.1
|
|
- Requires instance extension: [`khr_get_surface_capabilities2`](crate::instance::InstanceExtensions::khr_get_surface_capabilities2)
|
|
",
|
|
raw: b"VK_KHR_surface_protected_capabilities",
|
|
requires_core: crate::Version::V1_1,
|
|
requires_instance_extensions: [khr_get_surface_capabilities2],
|
|
},
|
|
khr_wayland_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_wayland_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_wayland_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_win32_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_win32_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_win32_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_xcb_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_xcb_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_xcb_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
khr_xlib_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_xlib_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_KHR_xlib_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ext_acquire_drm_display => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_acquire_drm_display.html)
|
|
- Requires instance extension: [`ext_direct_mode_display`](crate::instance::InstanceExtensions::ext_direct_mode_display)
|
|
",
|
|
raw: b"VK_EXT_acquire_drm_display",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [ext_direct_mode_display],
|
|
},
|
|
ext_acquire_xlib_display => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_acquire_xlib_display.html)
|
|
- Requires instance extension: [`ext_direct_mode_display`](crate::instance::InstanceExtensions::ext_direct_mode_display)
|
|
",
|
|
raw: b"VK_EXT_acquire_xlib_display",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [ext_direct_mode_display],
|
|
},
|
|
ext_debug_report => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_debug_report.html)
|
|
- Deprecated by [`ext_debug_utils`](crate::instance::InstanceExtensions::ext_debug_utils)
|
|
",
|
|
raw: b"VK_EXT_debug_report",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
ext_debug_utils => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_debug_utils.html)
|
|
",
|
|
raw: b"VK_EXT_debug_utils",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
ext_direct_mode_display => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_direct_mode_display.html)
|
|
- Requires instance extension: [`khr_display`](crate::instance::InstanceExtensions::khr_display)
|
|
",
|
|
raw: b"VK_EXT_direct_mode_display",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_display],
|
|
},
|
|
ext_directfb_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_directfb_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_EXT_directfb_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ext_display_surface_counter => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_display_surface_counter.html)
|
|
- Requires instance extension: [`khr_display`](crate::instance::InstanceExtensions::khr_display)
|
|
",
|
|
raw: b"VK_EXT_display_surface_counter",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_display],
|
|
},
|
|
ext_headless_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_headless_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_EXT_headless_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ext_metal_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_metal_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_EXT_metal_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ext_swapchain_colorspace => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_swapchain_colorspace.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_EXT_swapchain_colorspace",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ext_validation_features => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_validation_features.html)
|
|
",
|
|
raw: b"VK_EXT_validation_features",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
ext_validation_flags => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_validation_flags.html)
|
|
- Deprecated by [`ext_validation_features`](crate::instance::InstanceExtensions::ext_validation_features)
|
|
",
|
|
raw: b"VK_EXT_validation_flags",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
fuchsia_imagepipe_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_FUCHSIA_imagepipe_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_FUCHSIA_imagepipe_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
ggp_stream_descriptor_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_GGP_stream_descriptor_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_GGP_stream_descriptor_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
mvk_ios_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_MVK_ios_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
- Deprecated by [`ext_metal_surface`](crate::instance::InstanceExtensions::ext_metal_surface)
|
|
",
|
|
raw: b"VK_MVK_ios_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
mvk_macos_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_MVK_macos_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
- Deprecated by [`ext_metal_surface`](crate::instance::InstanceExtensions::ext_metal_surface)
|
|
",
|
|
raw: b"VK_MVK_macos_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
nn_vi_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NN_vi_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_NN_vi_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
nv_external_memory_capabilities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_NV_external_memory_capabilities.html)
|
|
- Deprecated by [`khr_external_memory_capabilities`](crate::instance::InstanceExtensions::khr_external_memory_capabilities)
|
|
",
|
|
raw: b"VK_NV_external_memory_capabilities",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [],
|
|
},
|
|
qnx_screen_surface => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_QNX_screen_surface.html)
|
|
- Requires instance extension: [`khr_surface`](crate::instance::InstanceExtensions::khr_surface)
|
|
",
|
|
raw: b"VK_QNX_screen_surface",
|
|
requires_core: crate::Version::V1_0,
|
|
requires_instance_extensions: [khr_surface],
|
|
},
|
|
}
|
|
|
|
crate::fns::fns!(EntryFunctions, {
|
|
v1_0 => EntryFnV1_0,
|
|
v1_1 => EntryFnV1_1,
|
|
v1_2 => EntryFnV1_2,
|
|
});
|
|
|
|
crate::fns::fns!(InstanceFunctions, {
|
|
v1_0 => InstanceFnV1_0,
|
|
v1_1 => InstanceFnV1_1,
|
|
v1_2 => InstanceFnV1_2,
|
|
khr_android_surface => KhrAndroidSurfaceFn,
|
|
khr_device_group_creation => KhrDeviceGroupCreationFn,
|
|
khr_display => KhrDisplayFn,
|
|
khr_external_fence_capabilities => KhrExternalFenceCapabilitiesFn,
|
|
khr_external_memory_capabilities => KhrExternalMemoryCapabilitiesFn,
|
|
khr_external_semaphore_capabilities => KhrExternalSemaphoreCapabilitiesFn,
|
|
khr_get_display_properties2 => KhrGetDisplayProperties2Fn,
|
|
khr_get_physical_device_properties2 => KhrGetPhysicalDeviceProperties2Fn,
|
|
khr_get_surface_capabilities2 => KhrGetSurfaceCapabilities2Fn,
|
|
khr_surface => KhrSurfaceFn,
|
|
khr_wayland_surface => KhrWaylandSurfaceFn,
|
|
khr_win32_surface => KhrWin32SurfaceFn,
|
|
khr_xcb_surface => KhrXcbSurfaceFn,
|
|
khr_xlib_surface => KhrXlibSurfaceFn,
|
|
ext_acquire_drm_display => ExtAcquireDrmDisplayFn,
|
|
ext_acquire_xlib_display => ExtAcquireXlibDisplayFn,
|
|
ext_debug_report => ExtDebugReportFn,
|
|
ext_debug_utils => ExtDebugUtilsFn,
|
|
ext_direct_mode_display => ExtDirectModeDisplayFn,
|
|
ext_directfb_surface => ExtDirectfbSurfaceFn,
|
|
ext_display_surface_counter => ExtDisplaySurfaceCounterFn,
|
|
ext_headless_surface => ExtHeadlessSurfaceFn,
|
|
ext_metal_surface => ExtMetalSurfaceFn,
|
|
fuchsia_imagepipe_surface => FuchsiaImagepipeSurfaceFn,
|
|
ggp_stream_descriptor_surface => GgpStreamDescriptorSurfaceFn,
|
|
mvk_ios_surface => MvkIosSurfaceFn,
|
|
mvk_macos_surface => MvkMacosSurfaceFn,
|
|
nn_vi_surface => NnViSurfaceFn,
|
|
nv_external_memory_capabilities => NvExternalMemoryCapabilitiesFn,
|
|
qnx_screen_surface => QnxScreenSurfaceFn,
|
|
});
|
|
|
|
crate::fns::fns!(DeviceFunctions, {
|
|
v1_0 => DeviceFnV1_0,
|
|
v1_1 => DeviceFnV1_1,
|
|
v1_2 => DeviceFnV1_2,
|
|
khr_acceleration_structure => KhrAccelerationStructureFn,
|
|
khr_bind_memory2 => KhrBindMemory2Fn,
|
|
khr_buffer_device_address => KhrBufferDeviceAddressFn,
|
|
khr_copy_commands2 => KhrCopyCommands2Fn,
|
|
khr_create_renderpass2 => KhrCreateRenderpass2Fn,
|
|
khr_deferred_host_operations => KhrDeferredHostOperationsFn,
|
|
khr_descriptor_update_template => KhrDescriptorUpdateTemplateFn,
|
|
khr_device_group => KhrDeviceGroupFn,
|
|
khr_display_swapchain => KhrDisplaySwapchainFn,
|
|
khr_draw_indirect_count => KhrDrawIndirectCountFn,
|
|
khr_external_fence_fd => KhrExternalFenceFdFn,
|
|
khr_external_fence_win32 => KhrExternalFenceWin32Fn,
|
|
khr_external_memory_fd => KhrExternalMemoryFdFn,
|
|
khr_external_memory_win32 => KhrExternalMemoryWin32Fn,
|
|
khr_external_semaphore_fd => KhrExternalSemaphoreFdFn,
|
|
khr_external_semaphore_win32 => KhrExternalSemaphoreWin32Fn,
|
|
khr_fragment_shading_rate => KhrFragmentShadingRateFn,
|
|
khr_get_memory_requirements2 => KhrGetMemoryRequirements2Fn,
|
|
khr_maintenance1 => KhrMaintenance1Fn,
|
|
khr_maintenance3 => KhrMaintenance3Fn,
|
|
khr_performance_query => KhrPerformanceQueryFn,
|
|
khr_pipeline_executable_properties => KhrPipelineExecutablePropertiesFn,
|
|
khr_present_wait => KhrPresentWaitFn,
|
|
khr_push_descriptor => KhrPushDescriptorFn,
|
|
khr_ray_tracing_pipeline => KhrRayTracingPipelineFn,
|
|
khr_sampler_ycbcr_conversion => KhrSamplerYcbcrConversionFn,
|
|
khr_shared_presentable_image => KhrSharedPresentableImageFn,
|
|
khr_swapchain => KhrSwapchainFn,
|
|
khr_synchronization2 => KhrSynchronization2Fn,
|
|
khr_timeline_semaphore => KhrTimelineSemaphoreFn,
|
|
khr_video_decode_queue => KhrVideoDecodeQueueFn,
|
|
khr_video_encode_queue => KhrVideoEncodeQueueFn,
|
|
khr_video_queue => KhrVideoQueueFn,
|
|
ext_buffer_device_address => ExtBufferDeviceAddressFn,
|
|
ext_calibrated_timestamps => ExtCalibratedTimestampsFn,
|
|
ext_color_write_enable => ExtColorWriteEnableFn,
|
|
ext_conditional_rendering => ExtConditionalRenderingFn,
|
|
ext_debug_marker => ExtDebugMarkerFn,
|
|
ext_discard_rectangles => ExtDiscardRectanglesFn,
|
|
ext_display_control => ExtDisplayControlFn,
|
|
ext_extended_dynamic_state => ExtExtendedDynamicStateFn,
|
|
ext_extended_dynamic_state2 => ExtExtendedDynamicState2Fn,
|
|
ext_external_memory_host => ExtExternalMemoryHostFn,
|
|
ext_full_screen_exclusive => ExtFullScreenExclusiveFn,
|
|
ext_hdr_metadata => ExtHdrMetadataFn,
|
|
ext_host_query_reset => ExtHostQueryResetFn,
|
|
ext_image_drm_format_modifier => ExtImageDrmFormatModifierFn,
|
|
ext_line_rasterization => ExtLineRasterizationFn,
|
|
ext_multi_draw => ExtMultiDrawFn,
|
|
ext_private_data => ExtPrivateDataFn,
|
|
ext_sample_locations => ExtSampleLocationsFn,
|
|
ext_tooling_info => ExtToolingInfoFn,
|
|
ext_transform_feedback => ExtTransformFeedbackFn,
|
|
ext_validation_cache => ExtValidationCacheFn,
|
|
ext_vertex_input_dynamic_state => ExtVertexInputDynamicStateFn,
|
|
amd_buffer_marker => AmdBufferMarkerFn,
|
|
amd_display_native_hdr => AmdDisplayNativeHdrFn,
|
|
amd_draw_indirect_count => AmdDrawIndirectCountFn,
|
|
amd_shader_info => AmdShaderInfoFn,
|
|
android_external_memory_android_hardware_buffer => AndroidExternalMemoryAndroidHardwareBufferFn,
|
|
fuchsia_external_memory => FuchsiaExternalMemoryFn,
|
|
fuchsia_external_semaphore => FuchsiaExternalSemaphoreFn,
|
|
google_display_timing => GoogleDisplayTimingFn,
|
|
huawei_invocation_mask => HuaweiInvocationMaskFn,
|
|
huawei_subpass_shading => HuaweiSubpassShadingFn,
|
|
intel_performance_query => IntelPerformanceQueryFn,
|
|
nvx_binary_import => NvxBinaryImportFn,
|
|
nvx_image_view_handle => NvxImageViewHandleFn,
|
|
nv_acquire_winrt_display => NvAcquireWinrtDisplayFn,
|
|
nv_clip_space_w_scaling => NvClipSpaceWScalingFn,
|
|
nv_cooperative_matrix => NvCooperativeMatrixFn,
|
|
nv_coverage_reduction_mode => NvCoverageReductionModeFn,
|
|
nv_device_diagnostic_checkpoints => NvDeviceDiagnosticCheckpointsFn,
|
|
nv_device_generated_commands => NvDeviceGeneratedCommandsFn,
|
|
nv_external_memory_rdma => NvExternalMemoryRdmaFn,
|
|
nv_external_memory_win32 => NvExternalMemoryWin32Fn,
|
|
nv_fragment_shading_rate_enums => NvFragmentShadingRateEnumsFn,
|
|
nv_mesh_shader => NvMeshShaderFn,
|
|
nv_ray_tracing => NvRayTracingFn,
|
|
nv_scissor_exclusive => NvScissorExclusiveFn,
|
|
nv_shading_rate_image => NvShadingRateImageFn,
|
|
});
|
|
|
|
crate::device::features::features! {
|
|
acceleration_structure => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructureFeaturesKHR.html#features-accelerationStructure)
|
|
",
|
|
ffi_name: acceleration_structure,
|
|
ffi_members: [features_acceleration_structure_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
acceleration_structure_capture_replay => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructureFeaturesKHR.html#features-accelerationStructureCaptureReplay)
|
|
",
|
|
ffi_name: acceleration_structure_capture_replay,
|
|
ffi_members: [features_acceleration_structure_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
acceleration_structure_host_commands => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructureFeaturesKHR.html#features-accelerationStructureHostCommands)
|
|
",
|
|
ffi_name: acceleration_structure_host_commands,
|
|
ffi_members: [features_acceleration_structure_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
acceleration_structure_indirect_build => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructureFeaturesKHR.html#features-accelerationStructureIndirectBuild)
|
|
",
|
|
ffi_name: acceleration_structure_indirect_build,
|
|
ffi_members: [features_acceleration_structure_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
advanced_blend_coherent_operations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.html#features-advancedBlendCoherentOperations)
|
|
",
|
|
ffi_name: advanced_blend_coherent_operations,
|
|
ffi_members: [features_blend_operation_advanced_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
alpha_to_one => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-alphaToOne)
|
|
",
|
|
ffi_name: alpha_to_one,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
attachment_fragment_shading_rate => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateFeaturesKHR.html#features-attachmentFragmentShadingRate)
|
|
- Conflicts with features: [`shading_rate_image`](crate::device::Features::shading_rate_image), [`fragment_density_map`](crate::device::Features::fragment_density_map)
|
|
",
|
|
ffi_name: attachment_fragment_shading_rate,
|
|
ffi_members: [features_fragment_shading_rate_khr],
|
|
requires_features: [],
|
|
conflicts_features: [shading_rate_image, fragment_density_map],
|
|
required_by_extensions: [],
|
|
},
|
|
bresenham_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-bresenhamLines)
|
|
",
|
|
ffi_name: bresenham_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
buffer_device_address => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-bufferDeviceAddress)
|
|
",
|
|
ffi_name: buffer_device_address,
|
|
ffi_members: [features_vulkan12, features_buffer_device_address, features_buffer_device_address_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
buffer_device_address_capture_replay => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-bufferDeviceAddressCaptureReplay)
|
|
",
|
|
ffi_name: buffer_device_address_capture_replay,
|
|
ffi_members: [features_vulkan12, features_buffer_device_address, features_buffer_device_address_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
buffer_device_address_multi_device => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-bufferDeviceAddressMultiDevice)
|
|
",
|
|
ffi_name: buffer_device_address_multi_device,
|
|
ffi_members: [features_vulkan12, features_buffer_device_address, features_buffer_device_address_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
color_write_enable => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceColorWriteEnableFeaturesEXT.html#features-colorWriteEnable)
|
|
",
|
|
ffi_name: color_write_enable,
|
|
ffi_members: [features_color_write_enable_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
compute_derivative_group_linear => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceComputeShaderDerivativesFeaturesNV.html#features-computeDerivativeGroupLinear)
|
|
",
|
|
ffi_name: compute_derivative_group_linear,
|
|
ffi_members: [features_compute_shader_derivatives_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
compute_derivative_group_quads => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceComputeShaderDerivativesFeaturesNV.html#features-computeDerivativeGroupQuads)
|
|
",
|
|
ffi_name: compute_derivative_group_quads,
|
|
ffi_members: [features_compute_shader_derivatives_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
compute_full_subgroups => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlFeaturesEXT.html#features-computeFullSubgroups)
|
|
",
|
|
ffi_name: compute_full_subgroups,
|
|
ffi_members: [features_subgroup_size_control_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
conditional_rendering => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConditionalRenderingFeaturesEXT.html#features-conditionalRendering)
|
|
",
|
|
ffi_name: conditional_rendering,
|
|
ffi_members: [features_conditional_rendering_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
constant_alpha_color_blend_factors => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-constantAlphaColorBlendFactors)
|
|
",
|
|
ffi_name: constant_alpha_color_blend_factors,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
cooperative_matrix => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCooperativeMatrixFeaturesNV.html#features-cooperativeMatrix)
|
|
",
|
|
ffi_name: cooperative_matrix,
|
|
ffi_members: [features_cooperative_matrix_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
cooperative_matrix_robust_buffer_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCooperativeMatrixFeaturesNV.html#features-cooperativeMatrixRobustBufferAccess)
|
|
",
|
|
ffi_name: cooperative_matrix_robust_buffer_access,
|
|
ffi_members: [features_cooperative_matrix_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
corner_sampled_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCornerSampledImageFeaturesNV.html#features-cornerSampledImage)
|
|
",
|
|
ffi_name: corner_sampled_image,
|
|
ffi_members: [features_corner_sampled_image_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
coverage_reduction_mode => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCoverageReductionModeFeaturesNV.html#features-coverageReductionMode)
|
|
",
|
|
ffi_name: coverage_reduction_mode,
|
|
ffi_members: [features_coverage_reduction_mode_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
custom_border_color_without_format => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCustomBorderColorFeaturesEXT.html#features-customBorderColorWithoutFormat)
|
|
",
|
|
ffi_name: custom_border_color_without_format,
|
|
ffi_members: [features_custom_border_color_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
custom_border_colors => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCustomBorderColorFeaturesEXT.html#features-customBorderColors)
|
|
",
|
|
ffi_name: custom_border_colors,
|
|
ffi_members: [features_custom_border_color_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
decode_mode_shared_exponent => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceASTCDecodeFeaturesEXT.html#features-decodeModeSharedExponent)
|
|
",
|
|
ffi_name: decode_mode_shared_exponent,
|
|
ffi_members: [features_astc_decode_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
dedicated_allocation_image_aliasing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.html#features-dedicatedAllocationImageAliasing)
|
|
",
|
|
ffi_name: dedicated_allocation_image_aliasing,
|
|
ffi_members: [features_dedicated_allocation_image_aliasing_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
depth_bias_clamp => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-depthBiasClamp)
|
|
",
|
|
ffi_name: depth_bias_clamp,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
depth_bounds => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-depthBounds)
|
|
",
|
|
ffi_name: depth_bounds,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
depth_clamp => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-depthClamp)
|
|
",
|
|
ffi_name: depth_clamp,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
depth_clip_enable => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDepthClipEnableFeaturesEXT.html#features-depthClipEnable)
|
|
",
|
|
ffi_name: depth_clip_enable,
|
|
ffi_members: [features_depth_clip_enable_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_acceleration_structure_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructureFeaturesKHR.html#features-descriptorBindingAccelerationStructureUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_acceleration_structure_update_after_bind,
|
|
ffi_members: [features_acceleration_structure_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_inline_uniform_block_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockFeaturesEXT.html#features-descriptorBindingInlineUniformBlockUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_inline_uniform_block_update_after_bind,
|
|
ffi_members: [features_inline_uniform_block_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_partially_bound => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingPartiallyBound)
|
|
",
|
|
ffi_name: descriptor_binding_partially_bound,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_sampled_image_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingSampledImageUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_sampled_image_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_storage_buffer_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingStorageBufferUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_storage_buffer_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_storage_image_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingStorageImageUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_storage_image_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_storage_texel_buffer_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingStorageTexelBufferUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_storage_texel_buffer_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_uniform_buffer_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingUniformBufferUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_uniform_buffer_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_uniform_texel_buffer_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingUniformTexelBufferUpdateAfterBind)
|
|
",
|
|
ffi_name: descriptor_binding_uniform_texel_buffer_update_after_bind,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_update_unused_while_pending => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingUpdateUnusedWhilePending)
|
|
",
|
|
ffi_name: descriptor_binding_update_unused_while_pending,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_binding_variable_descriptor_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorBindingVariableDescriptorCount)
|
|
",
|
|
ffi_name: descriptor_binding_variable_descriptor_count,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
descriptor_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-descriptorIndexing)
|
|
- Required by device extension: [`ext_descriptor_indexing`](crate::device::DeviceExtensions::ext_descriptor_indexing)
|
|
",
|
|
ffi_name: descriptor_indexing,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [ext_descriptor_indexing],
|
|
},
|
|
device_coherent_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCoherentMemoryFeaturesAMD.html#features-deviceCoherentMemory)
|
|
",
|
|
ffi_name: device_coherent_memory,
|
|
ffi_members: [features_coherent_memory_amd],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
device_generated_commands => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.html#features-deviceGeneratedCommands)
|
|
",
|
|
ffi_name: device_generated_commands,
|
|
ffi_members: [features_device_generated_commands_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
device_memory_report => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.html#features-deviceMemoryReport)
|
|
",
|
|
ffi_name: device_memory_report,
|
|
ffi_members: [features_device_memory_report_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
diagnostics_config => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDiagnosticsConfigFeaturesNV.html#features-diagnosticsConfig)
|
|
",
|
|
ffi_name: diagnostics_config,
|
|
ffi_members: [features_diagnostics_config_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
draw_indirect_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-drawIndirectCount)
|
|
- Required by device extension: [`khr_draw_indirect_count`](crate::device::DeviceExtensions::khr_draw_indirect_count)
|
|
",
|
|
ffi_name: draw_indirect_count,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [khr_draw_indirect_count],
|
|
},
|
|
draw_indirect_first_instance => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-drawIndirectFirstInstance)
|
|
",
|
|
ffi_name: draw_indirect_first_instance,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
dual_src_blend => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-dualSrcBlend)
|
|
",
|
|
ffi_name: dual_src_blend,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
events => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-events)
|
|
",
|
|
ffi_name: events,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
exclusive_scissor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExclusiveScissorFeaturesNV.html#features-exclusiveScissor)
|
|
",
|
|
ffi_name: exclusive_scissor,
|
|
ffi_members: [features_exclusive_scissor_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
extended_dynamic_state => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.html#features-extendedDynamicState)
|
|
",
|
|
ffi_name: extended_dynamic_state,
|
|
ffi_members: [features_extended_dynamic_state_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
extended_dynamic_state2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.html#features-extendedDynamicState2)
|
|
",
|
|
ffi_name: extended_dynamic_state2,
|
|
ffi_members: [features_extended_dynamic_state2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
extended_dynamic_state2_logic_op => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.html#features-extendedDynamicState2LogicOp)
|
|
",
|
|
ffi_name: extended_dynamic_state2_logic_op,
|
|
ffi_members: [features_extended_dynamic_state2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
extended_dynamic_state2_patch_control_points => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.html#features-extendedDynamicState2PatchControlPoints)
|
|
",
|
|
ffi_name: extended_dynamic_state2_patch_control_points,
|
|
ffi_members: [features_extended_dynamic_state2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
external_memory_rdma => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.html#features-externalMemoryRDMA)
|
|
",
|
|
ffi_name: external_memory_rdma,
|
|
ffi_members: [features_external_memory_rdma_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fill_mode_non_solid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-fillModeNonSolid)
|
|
",
|
|
ffi_name: fill_mode_non_solid,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
format_a4b4g4r4 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevice4444FormatsFeaturesEXT.html#features-formatA4B4G4R4)
|
|
",
|
|
ffi_name: format_a4b4g4r4,
|
|
ffi_members: [features_4444formats_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
format_a4r4g4b4 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevice4444FormatsFeaturesEXT.html#features-formatA4R4G4B4)
|
|
",
|
|
ffi_name: format_a4r4g4b4,
|
|
ffi_members: [features_4444formats_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_density_map => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapFeaturesEXT.html#features-fragmentDensityMap)
|
|
- Conflicts with features: [`pipeline_fragment_shading_rate`](crate::device::Features::pipeline_fragment_shading_rate), [`primitive_fragment_shading_rate`](crate::device::Features::primitive_fragment_shading_rate), [`attachment_fragment_shading_rate`](crate::device::Features::attachment_fragment_shading_rate)
|
|
",
|
|
ffi_name: fragment_density_map,
|
|
ffi_members: [features_fragment_density_map_ext],
|
|
requires_features: [],
|
|
conflicts_features: [pipeline_fragment_shading_rate, primitive_fragment_shading_rate, attachment_fragment_shading_rate],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_density_map_deferred => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.html#features-fragmentDensityMapDeferred)
|
|
",
|
|
ffi_name: fragment_density_map_deferred,
|
|
ffi_members: [features_fragment_density_map2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_density_map_dynamic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapFeaturesEXT.html#features-fragmentDensityMapDynamic)
|
|
",
|
|
ffi_name: fragment_density_map_dynamic,
|
|
ffi_members: [features_fragment_density_map_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_density_map_non_subsampled_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapFeaturesEXT.html#features-fragmentDensityMapNonSubsampledImages)
|
|
",
|
|
ffi_name: fragment_density_map_non_subsampled_images,
|
|
ffi_members: [features_fragment_density_map_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_shader_barycentric => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV.html#features-fragmentShaderBarycentric)
|
|
",
|
|
ffi_name: fragment_shader_barycentric,
|
|
ffi_members: [features_fragment_shader_barycentric_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_shader_pixel_interlock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.html#features-fragmentShaderPixelInterlock)
|
|
",
|
|
ffi_name: fragment_shader_pixel_interlock,
|
|
ffi_members: [features_fragment_shader_interlock_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_shader_sample_interlock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.html#features-fragmentShaderSampleInterlock)
|
|
",
|
|
ffi_name: fragment_shader_sample_interlock,
|
|
ffi_members: [features_fragment_shader_interlock_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_shader_shading_rate_interlock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.html#features-fragmentShaderShadingRateInterlock)
|
|
",
|
|
ffi_name: fragment_shader_shading_rate_interlock,
|
|
ffi_members: [features_fragment_shader_interlock_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_shading_rate_enums => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.html#features-fragmentShadingRateEnums)
|
|
",
|
|
ffi_name: fragment_shading_rate_enums,
|
|
ffi_members: [features_fragment_shading_rate_enums_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
fragment_stores_and_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-fragmentStoresAndAtomics)
|
|
",
|
|
ffi_name: fragment_stores_and_atomics,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
full_draw_index_uint32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-fullDrawIndexUint32)
|
|
",
|
|
ffi_name: full_draw_index_uint32,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
geometry_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-geometryShader)
|
|
",
|
|
ffi_name: geometry_shader,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
geometry_streams => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackFeaturesEXT.html#features-geometryStreams)
|
|
",
|
|
ffi_name: geometry_streams,
|
|
ffi_members: [features_transform_feedback_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
global_priority_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT.html#features-globalPriorityQuery)
|
|
",
|
|
ffi_name: global_priority_query,
|
|
ffi_members: [features_global_priority_query_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
host_query_reset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-hostQueryReset)
|
|
",
|
|
ffi_name: host_query_reset,
|
|
ffi_members: [features_vulkan12, features_host_query_reset],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
image_cube_array => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-imageCubeArray)
|
|
",
|
|
ffi_name: image_cube_array,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
image_footprint => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderImageFootprintFeaturesNV.html#features-imageFootprint)
|
|
",
|
|
ffi_name: image_footprint,
|
|
ffi_members: [features_shader_image_footprint_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
image_view2_d_on3_d_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-imageView2DOn3DImage)
|
|
",
|
|
ffi_name: image_view2_d_on3_d_image,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
image_view_format_reinterpretation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-imageViewFormatReinterpretation)
|
|
",
|
|
ffi_name: image_view_format_reinterpretation,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
image_view_format_swizzle => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-imageViewFormatSwizzle)
|
|
",
|
|
ffi_name: image_view_format_swizzle,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
imageless_framebuffer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-imagelessFramebuffer)
|
|
",
|
|
ffi_name: imageless_framebuffer,
|
|
ffi_members: [features_vulkan12, features_imageless_framebuffer],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
independent_blend => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-independentBlend)
|
|
",
|
|
ffi_name: independent_blend,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
index_type_uint8 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceIndexTypeUint8FeaturesEXT.html#features-indexTypeUint8)
|
|
",
|
|
ffi_name: index_type_uint8,
|
|
ffi_members: [features_index_type_uint8_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
inherited_conditional_rendering => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConditionalRenderingFeaturesEXT.html#features-inheritedConditionalRendering)
|
|
",
|
|
ffi_name: inherited_conditional_rendering,
|
|
ffi_members: [features_conditional_rendering_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
inherited_queries => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-inheritedQueries)
|
|
",
|
|
ffi_name: inherited_queries,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
inherited_viewport_scissor2_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInheritedViewportScissorFeaturesNV.html#features-inheritedViewportScissor2D)
|
|
",
|
|
ffi_name: inherited_viewport_scissor2_d,
|
|
ffi_members: [features_inherited_viewport_scissor_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
inline_uniform_block => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockFeaturesEXT.html#features-inlineUniformBlock)
|
|
",
|
|
ffi_name: inline_uniform_block,
|
|
ffi_members: [features_inline_uniform_block_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
invocation_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.html#features-invocationMask)
|
|
",
|
|
ffi_name: invocation_mask,
|
|
ffi_members: [features_invocation_mask_huawei],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
large_points => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-largePoints)
|
|
",
|
|
ffi_name: large_points,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
logic_op => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-logicOp)
|
|
",
|
|
ffi_name: logic_op,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
memory_priority => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMemoryPriorityFeaturesEXT.html#features-memoryPriority)
|
|
",
|
|
ffi_name: memory_priority,
|
|
ffi_members: [features_memory_priority_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
mesh_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderFeaturesNV.html#features-meshShader)
|
|
",
|
|
ffi_name: mesh_shader,
|
|
ffi_members: [features_mesh_shader_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multi_draw => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMultiDrawFeaturesEXT.html#features-multiDraw)
|
|
",
|
|
ffi_name: multi_draw,
|
|
ffi_members: [features_multi_draw_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multi_draw_indirect => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-multiDrawIndirect)
|
|
",
|
|
ffi_name: multi_draw_indirect,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multi_viewport => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-multiViewport)
|
|
",
|
|
ffi_name: multi_viewport,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multisample_array_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-multisampleArrayImage)
|
|
",
|
|
ffi_name: multisample_array_image,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multiview => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-multiview)
|
|
",
|
|
ffi_name: multiview,
|
|
ffi_members: [features_vulkan11, features_multiview],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multiview_geometry_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-multiviewGeometryShader)
|
|
",
|
|
ffi_name: multiview_geometry_shader,
|
|
ffi_members: [features_vulkan11, features_multiview],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
multiview_tessellation_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-multiviewTessellationShader)
|
|
",
|
|
ffi_name: multiview_tessellation_shader,
|
|
ffi_members: [features_vulkan11, features_multiview],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
mutable_comparison_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-mutableComparisonSamplers)
|
|
",
|
|
ffi_name: mutable_comparison_samplers,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
mutable_descriptor_type => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE.html#features-mutableDescriptorType)
|
|
",
|
|
ffi_name: mutable_descriptor_type,
|
|
ffi_members: [features_mutable_descriptor_type_valve],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
no_invocation_fragment_shading_rates => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.html#features-noInvocationFragmentShadingRates)
|
|
",
|
|
ffi_name: no_invocation_fragment_shading_rates,
|
|
ffi_members: [features_fragment_shading_rate_enums_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
null_descriptor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRobustness2FeaturesEXT.html#features-nullDescriptor)
|
|
",
|
|
ffi_name: null_descriptor,
|
|
ffi_members: [features_robustness2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
occlusion_query_precise => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-occlusionQueryPrecise)
|
|
",
|
|
ffi_name: occlusion_query_precise,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
performance_counter_multiple_query_pools => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePerformanceQueryFeaturesKHR.html#features-performanceCounterMultipleQueryPools)
|
|
",
|
|
ffi_name: performance_counter_multiple_query_pools,
|
|
ffi_members: [features_performance_query_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
performance_counter_query_pools => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePerformanceQueryFeaturesKHR.html#features-performanceCounterQueryPools)
|
|
",
|
|
ffi_name: performance_counter_query_pools,
|
|
ffi_members: [features_performance_query_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
pipeline_creation_cache_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT.html#features-pipelineCreationCacheControl)
|
|
",
|
|
ffi_name: pipeline_creation_cache_control,
|
|
ffi_members: [features_pipeline_creation_cache_control_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
pipeline_executable_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.html#features-pipelineExecutableInfo)
|
|
",
|
|
ffi_name: pipeline_executable_info,
|
|
ffi_members: [features_pipeline_executable_properties_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
pipeline_fragment_shading_rate => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateFeaturesKHR.html#features-pipelineFragmentShadingRate)
|
|
- Conflicts with features: [`shading_rate_image`](crate::device::Features::shading_rate_image), [`fragment_density_map`](crate::device::Features::fragment_density_map)
|
|
",
|
|
ffi_name: pipeline_fragment_shading_rate,
|
|
ffi_members: [features_fragment_shading_rate_khr],
|
|
requires_features: [],
|
|
conflicts_features: [shading_rate_image, fragment_density_map],
|
|
required_by_extensions: [],
|
|
},
|
|
pipeline_statistics_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-pipelineStatisticsQuery)
|
|
",
|
|
ffi_name: pipeline_statistics_query,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
point_polygons => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-pointPolygons)
|
|
",
|
|
ffi_name: point_polygons,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
present_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePresentIdFeaturesKHR.html#features-presentId)
|
|
",
|
|
ffi_name: present_id,
|
|
ffi_members: [features_present_id_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
present_wait => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePresentWaitFeaturesKHR.html#features-presentWait)
|
|
",
|
|
ffi_name: present_wait,
|
|
ffi_members: [features_present_wait_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
primitive_fragment_shading_rate => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateFeaturesKHR.html#features-primitiveFragmentShadingRate)
|
|
- Conflicts with features: [`shading_rate_image`](crate::device::Features::shading_rate_image), [`fragment_density_map`](crate::device::Features::fragment_density_map)
|
|
",
|
|
ffi_name: primitive_fragment_shading_rate,
|
|
ffi_members: [features_fragment_shading_rate_khr],
|
|
requires_features: [],
|
|
conflicts_features: [shading_rate_image, fragment_density_map],
|
|
required_by_extensions: [],
|
|
},
|
|
private_data => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePrivateDataFeaturesEXT.html#features-privateData)
|
|
",
|
|
ffi_name: private_data,
|
|
ffi_members: [features_private_data_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
protected_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-protectedMemory)
|
|
",
|
|
ffi_name: protected_memory,
|
|
ffi_members: [features_vulkan11, features_protected_memory],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
provoking_vertex_last => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProvokingVertexFeaturesEXT.html#features-provokingVertexLast)
|
|
",
|
|
ffi_name: provoking_vertex_last,
|
|
ffi_members: [features_provoking_vertex_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_query => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayQueryFeaturesKHR.html#features-rayQuery)
|
|
",
|
|
ffi_name: ray_query,
|
|
ffi_members: [features_ray_query_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_motion_blur => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.html#features-rayTracingMotionBlur)
|
|
",
|
|
ffi_name: ray_tracing_motion_blur,
|
|
ffi_members: [features_ray_tracing_motion_blur_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_motion_blur_pipeline_trace_rays_indirect => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.html#features-rayTracingMotionBlurPipelineTraceRaysIndirect)
|
|
",
|
|
ffi_name: ray_tracing_motion_blur_pipeline_trace_rays_indirect,
|
|
ffi_members: [features_ray_tracing_motion_blur_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_pipeline => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelineFeaturesKHR.html#features-rayTracingPipeline)
|
|
",
|
|
ffi_name: ray_tracing_pipeline,
|
|
ffi_members: [features_ray_tracing_pipeline_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_pipeline_shader_group_handle_capture_replay => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelineFeaturesKHR.html#features-rayTracingPipelineShaderGroupHandleCaptureReplay)
|
|
",
|
|
ffi_name: ray_tracing_pipeline_shader_group_handle_capture_replay,
|
|
ffi_members: [features_ray_tracing_pipeline_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_pipeline_shader_group_handle_capture_replay_mixed => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelineFeaturesKHR.html#features-rayTracingPipelineShaderGroupHandleCaptureReplayMixed)
|
|
",
|
|
ffi_name: ray_tracing_pipeline_shader_group_handle_capture_replay_mixed,
|
|
ffi_members: [features_ray_tracing_pipeline_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_tracing_pipeline_trace_rays_indirect => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelineFeaturesKHR.html#features-rayTracingPipelineTraceRaysIndirect)
|
|
",
|
|
ffi_name: ray_tracing_pipeline_trace_rays_indirect,
|
|
ffi_members: [features_ray_tracing_pipeline_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ray_traversal_primitive_culling => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelineFeaturesKHR.html#features-rayTraversalPrimitiveCulling)
|
|
",
|
|
ffi_name: ray_traversal_primitive_culling,
|
|
ffi_members: [features_ray_tracing_pipeline_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
rectangular_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-rectangularLines)
|
|
",
|
|
ffi_name: rectangular_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
representative_fragment_test => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.html#features-representativeFragmentTest)
|
|
",
|
|
ffi_name: representative_fragment_test,
|
|
ffi_members: [features_representative_fragment_test_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
robust_buffer_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-robustBufferAccess)
|
|
",
|
|
ffi_name: robust_buffer_access,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
robust_buffer_access2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRobustness2FeaturesEXT.html#features-robustBufferAccess2)
|
|
",
|
|
ffi_name: robust_buffer_access2,
|
|
ffi_members: [features_robustness2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
robust_image_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceImageRobustnessFeaturesEXT.html#features-robustImageAccess)
|
|
",
|
|
ffi_name: robust_image_access,
|
|
ffi_members: [features_image_robustness_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
robust_image_access2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRobustness2FeaturesEXT.html#features-robustImageAccess2)
|
|
",
|
|
ffi_name: robust_image_access2,
|
|
ffi_members: [features_robustness2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
runtime_descriptor_array => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-runtimeDescriptorArray)
|
|
",
|
|
ffi_name: runtime_descriptor_array,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sample_rate_shading => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sampleRateShading)
|
|
",
|
|
ffi_name: sample_rate_shading,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sampler_anisotropy => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-samplerAnisotropy)
|
|
",
|
|
ffi_name: sampler_anisotropy,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sampler_filter_minmax => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-samplerFilterMinmax)
|
|
- Required by device extension: [`ext_sampler_filter_minmax`](crate::device::DeviceExtensions::ext_sampler_filter_minmax)
|
|
",
|
|
ffi_name: sampler_filter_minmax,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [ext_sampler_filter_minmax],
|
|
},
|
|
sampler_mip_lod_bias => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-samplerMipLodBias)
|
|
",
|
|
ffi_name: sampler_mip_lod_bias,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sampler_mirror_clamp_to_edge => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-samplerMirrorClampToEdge)
|
|
- Required by device extension: [`khr_sampler_mirror_clamp_to_edge`](crate::device::DeviceExtensions::khr_sampler_mirror_clamp_to_edge)
|
|
",
|
|
ffi_name: sampler_mirror_clamp_to_edge,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [khr_sampler_mirror_clamp_to_edge],
|
|
},
|
|
sampler_ycbcr_conversion => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-samplerYcbcrConversion)
|
|
",
|
|
ffi_name: sampler_ycbcr_conversion,
|
|
ffi_members: [features_vulkan11, features_sampler_ycbcr_conversion],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
scalar_block_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-scalarBlockLayout)
|
|
",
|
|
ffi_name: scalar_block_layout,
|
|
ffi_members: [features_vulkan12, features_scalar_block_layout],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
separate_depth_stencil_layouts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-separateDepthStencilLayouts)
|
|
",
|
|
ffi_name: separate_depth_stencil_layouts,
|
|
ffi_members: [features_vulkan12, features_separate_depth_stencil_layouts],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
separate_stencil_mask_ref => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-separateStencilMaskRef)
|
|
",
|
|
ffi_name: separate_stencil_mask_ref,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float16_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderBufferFloat16AtomicAdd)
|
|
",
|
|
ffi_name: shader_buffer_float16_atomic_add,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float16_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderBufferFloat16AtomicMinMax)
|
|
",
|
|
ffi_name: shader_buffer_float16_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float16_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderBufferFloat16Atomics)
|
|
",
|
|
ffi_name: shader_buffer_float16_atomics,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float32_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderBufferFloat32AtomicAdd)
|
|
",
|
|
ffi_name: shader_buffer_float32_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float32_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderBufferFloat32AtomicMinMax)
|
|
",
|
|
ffi_name: shader_buffer_float32_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float32_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderBufferFloat32Atomics)
|
|
",
|
|
ffi_name: shader_buffer_float32_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float64_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderBufferFloat64AtomicAdd)
|
|
",
|
|
ffi_name: shader_buffer_float64_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float64_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderBufferFloat64AtomicMinMax)
|
|
",
|
|
ffi_name: shader_buffer_float64_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_float64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderBufferFloat64Atomics)
|
|
",
|
|
ffi_name: shader_buffer_float64_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_buffer_int64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderBufferInt64Atomics)
|
|
",
|
|
ffi_name: shader_buffer_int64_atomics,
|
|
ffi_members: [features_vulkan12, features_shader_atomic_int64],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_clip_distance => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderClipDistance)
|
|
",
|
|
ffi_name: shader_clip_distance,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_cull_distance => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderCullDistance)
|
|
",
|
|
ffi_name: shader_cull_distance,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_demote_to_helper_invocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT.html#features-shaderDemoteToHelperInvocation)
|
|
",
|
|
ffi_name: shader_demote_to_helper_invocation,
|
|
ffi_members: [features_shader_demote_to_helper_invocation_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_device_clock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderClockFeaturesKHR.html#features-shaderDeviceClock)
|
|
",
|
|
ffi_name: shader_device_clock,
|
|
ffi_members: [features_shader_clock_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_draw_parameters => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-shaderDrawParameters)
|
|
- Required by device extension: [`khr_shader_draw_parameters`](crate::device::DeviceExtensions::khr_shader_draw_parameters)
|
|
",
|
|
ffi_name: shader_draw_parameters,
|
|
ffi_members: [features_vulkan11, features_shader_draw_parameters],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [khr_shader_draw_parameters],
|
|
},
|
|
shader_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderFloat16)
|
|
",
|
|
ffi_name: shader_float16,
|
|
ffi_members: [features_vulkan12, features_shader_float16_int8],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderFloat64)
|
|
",
|
|
ffi_name: shader_float64,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_image_float32_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderImageFloat32AtomicAdd)
|
|
",
|
|
ffi_name: shader_image_float32_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_image_float32_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderImageFloat32AtomicMinMax)
|
|
",
|
|
ffi_name: shader_image_float32_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_image_float32_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderImageFloat32Atomics)
|
|
",
|
|
ffi_name: shader_image_float32_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_image_gather_extended => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderImageGatherExtended)
|
|
",
|
|
ffi_name: shader_image_gather_extended,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_image_int64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.html#features-shaderImageInt64Atomics)
|
|
",
|
|
ffi_name: shader_image_int64_atomics,
|
|
ffi_members: [features_shader_image_atomic_int64_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_input_attachment_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderInputAttachmentArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_input_attachment_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_input_attachment_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderInputAttachmentArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_input_attachment_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_int16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderInt16)
|
|
",
|
|
ffi_name: shader_int16,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_int64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderInt64)
|
|
",
|
|
ffi_name: shader_int64,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_int8 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderInt8)
|
|
",
|
|
ffi_name: shader_int8,
|
|
ffi_members: [features_vulkan12, features_shader_float16_int8],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_integer_functions2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.html#features-shaderIntegerFunctions2)
|
|
",
|
|
ffi_name: shader_integer_functions2,
|
|
ffi_members: [features_shader_integer_functions2_intel],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_output_layer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderOutputLayer)
|
|
- Required by device extension: [`ext_shader_viewport_index_layer`](crate::device::DeviceExtensions::ext_shader_viewport_index_layer)
|
|
",
|
|
ffi_name: shader_output_layer,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [ext_shader_viewport_index_layer],
|
|
},
|
|
shader_output_viewport_index => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderOutputViewportIndex)
|
|
- Required by device extension: [`ext_shader_viewport_index_layer`](crate::device::DeviceExtensions::ext_shader_viewport_index_layer)
|
|
",
|
|
ffi_name: shader_output_viewport_index,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [ext_shader_viewport_index_layer],
|
|
},
|
|
shader_resource_min_lod => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderResourceMinLod)
|
|
",
|
|
ffi_name: shader_resource_min_lod,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_resource_residency => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderResourceResidency)
|
|
",
|
|
ffi_name: shader_resource_residency,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_sample_rate_interpolation_functions => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-shaderSampleRateInterpolationFunctions)
|
|
",
|
|
ffi_name: shader_sample_rate_interpolation_functions,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_sampled_image_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderSampledImageArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_sampled_image_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_sampled_image_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderSampledImageArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_sampled_image_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float16_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderSharedFloat16AtomicAdd)
|
|
",
|
|
ffi_name: shader_shared_float16_atomic_add,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float16_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderSharedFloat16AtomicMinMax)
|
|
",
|
|
ffi_name: shader_shared_float16_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float16_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderSharedFloat16Atomics)
|
|
",
|
|
ffi_name: shader_shared_float16_atomics,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float32_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderSharedFloat32AtomicAdd)
|
|
",
|
|
ffi_name: shader_shared_float32_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float32_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderSharedFloat32AtomicMinMax)
|
|
",
|
|
ffi_name: shader_shared_float32_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float32_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderSharedFloat32Atomics)
|
|
",
|
|
ffi_name: shader_shared_float32_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float64_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderSharedFloat64AtomicAdd)
|
|
",
|
|
ffi_name: shader_shared_float64_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float64_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-shaderSharedFloat64AtomicMinMax)
|
|
",
|
|
ffi_name: shader_shared_float64_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_float64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-shaderSharedFloat64Atomics)
|
|
",
|
|
ffi_name: shader_shared_float64_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_shared_int64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderSharedInt64Atomics)
|
|
",
|
|
ffi_name: shader_shared_int64_atomics,
|
|
ffi_members: [features_vulkan12, features_shader_atomic_int64],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_sm_builtins => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.html#features-shaderSMBuiltins)
|
|
",
|
|
ffi_name: shader_sm_builtins,
|
|
ffi_members: [features_shader_sm_builtins_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_buffer_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageBufferArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_storage_buffer_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_buffer_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderStorageBufferArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_storage_buffer_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageImageArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_storage_image_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderStorageImageArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_storage_image_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_extended_formats => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageImageExtendedFormats)
|
|
",
|
|
ffi_name: shader_storage_image_extended_formats,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_multisample => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageImageMultisample)
|
|
",
|
|
ffi_name: shader_storage_image_multisample,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_read_without_format => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageImageReadWithoutFormat)
|
|
",
|
|
ffi_name: shader_storage_image_read_without_format,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_image_write_without_format => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderStorageImageWriteWithoutFormat)
|
|
",
|
|
ffi_name: shader_storage_image_write_without_format,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_texel_buffer_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderStorageTexelBufferArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_storage_texel_buffer_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_storage_texel_buffer_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderStorageTexelBufferArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_storage_texel_buffer_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_subgroup_clock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderClockFeaturesKHR.html#features-shaderSubgroupClock)
|
|
",
|
|
ffi_name: shader_subgroup_clock,
|
|
ffi_members: [features_shader_clock_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_subgroup_extended_types => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderSubgroupExtendedTypes)
|
|
",
|
|
ffi_name: shader_subgroup_extended_types,
|
|
ffi_members: [features_vulkan12, features_shader_subgroup_extended_types],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_subgroup_uniform_control_flow => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.html#features-shaderSubgroupUniformControlFlow)
|
|
",
|
|
ffi_name: shader_subgroup_uniform_control_flow,
|
|
ffi_members: [features_shader_subgroup_uniform_control_flow_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_terminate_invocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR.html#features-shaderTerminateInvocation)
|
|
",
|
|
ffi_name: shader_terminate_invocation,
|
|
ffi_members: [features_shader_terminate_invocation_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_tessellation_and_geometry_point_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderTessellationAndGeometryPointSize)
|
|
",
|
|
ffi_name: shader_tessellation_and_geometry_point_size,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_uniform_buffer_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-shaderUniformBufferArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_uniform_buffer_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_uniform_buffer_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderUniformBufferArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_uniform_buffer_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_uniform_texel_buffer_array_dynamic_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderUniformTexelBufferArrayDynamicIndexing)
|
|
",
|
|
ffi_name: shader_uniform_texel_buffer_array_dynamic_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_uniform_texel_buffer_array_non_uniform_indexing => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-shaderUniformTexelBufferArrayNonUniformIndexing)
|
|
",
|
|
ffi_name: shader_uniform_texel_buffer_array_non_uniform_indexing,
|
|
ffi_members: [features_vulkan12, features_descriptor_indexing],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shader_zero_initialize_workgroup_memory => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR.html#features-shaderZeroInitializeWorkgroupMemory)
|
|
",
|
|
ffi_name: shader_zero_initialize_workgroup_memory,
|
|
ffi_members: [features_zero_initialize_workgroup_memory_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shading_rate_coarse_sample_order => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShadingRateImageFeaturesNV.html#features-shadingRateCoarseSampleOrder)
|
|
",
|
|
ffi_name: shading_rate_coarse_sample_order,
|
|
ffi_members: [features_shading_rate_image_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
shading_rate_image => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShadingRateImageFeaturesNV.html#features-shadingRateImage)
|
|
- Conflicts with features: [`pipeline_fragment_shading_rate`](crate::device::Features::pipeline_fragment_shading_rate), [`primitive_fragment_shading_rate`](crate::device::Features::primitive_fragment_shading_rate), [`attachment_fragment_shading_rate`](crate::device::Features::attachment_fragment_shading_rate)
|
|
",
|
|
ffi_name: shading_rate_image,
|
|
ffi_members: [features_shading_rate_image_nv],
|
|
requires_features: [],
|
|
conflicts_features: [pipeline_fragment_shading_rate, primitive_fragment_shading_rate, attachment_fragment_shading_rate],
|
|
required_by_extensions: [],
|
|
},
|
|
smooth_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-smoothLines)
|
|
",
|
|
ffi_name: smooth_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_binding => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseBinding)
|
|
",
|
|
ffi_name: sparse_binding,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_image_float32_atomic_add => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-sparseImageFloat32AtomicAdd)
|
|
- Requires feature: [`shader_image_float32_atomic_add`](crate::device::Features::shader_image_float32_atomic_add)
|
|
",
|
|
ffi_name: sparse_image_float32_atomic_add,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [shader_image_float32_atomic_add],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_image_float32_atomic_min_max => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html#features-sparseImageFloat32AtomicMinMax)
|
|
",
|
|
ffi_name: sparse_image_float32_atomic_min_max,
|
|
ffi_members: [features_shader_atomic_float2_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_image_float32_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html#features-sparseImageFloat32Atomics)
|
|
- Requires feature: [`shader_image_float32_atomics`](crate::device::Features::shader_image_float32_atomics)
|
|
",
|
|
ffi_name: sparse_image_float32_atomics,
|
|
ffi_members: [features_shader_atomic_float_ext],
|
|
requires_features: [shader_image_float32_atomics],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_image_int64_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.html#features-sparseImageInt64Atomics)
|
|
- Requires feature: [`shader_image_int64_atomics`](crate::device::Features::shader_image_int64_atomics)
|
|
",
|
|
ffi_name: sparse_image_int64_atomics,
|
|
ffi_members: [features_shader_image_atomic_int64_ext],
|
|
requires_features: [shader_image_int64_atomics],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency16_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidency16Samples)
|
|
",
|
|
ffi_name: sparse_residency16_samples,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency2_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidency2Samples)
|
|
",
|
|
ffi_name: sparse_residency2_samples,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency4_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidency4Samples)
|
|
",
|
|
ffi_name: sparse_residency4_samples,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency8_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidency8Samples)
|
|
",
|
|
ffi_name: sparse_residency8_samples,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency_aliased => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidencyAliased)
|
|
",
|
|
ffi_name: sparse_residency_aliased,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency_buffer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidencyBuffer)
|
|
",
|
|
ffi_name: sparse_residency_buffer,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency_image2_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidencyImage2D)
|
|
",
|
|
ffi_name: sparse_residency_image2_d,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
sparse_residency_image3_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-sparseResidencyImage3D)
|
|
",
|
|
ffi_name: sparse_residency_image3_d,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
stippled_bresenham_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-stippledBresenhamLines)
|
|
",
|
|
ffi_name: stippled_bresenham_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
stippled_rectangular_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-stippledRectangularLines)
|
|
",
|
|
ffi_name: stippled_rectangular_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
stippled_smooth_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html#features-stippledSmoothLines)
|
|
",
|
|
ffi_name: stippled_smooth_lines,
|
|
ffi_members: [features_line_rasterization_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
storage_buffer16_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-storageBuffer16BitAccess)
|
|
",
|
|
ffi_name: storage_buffer16_bit_access,
|
|
ffi_members: [features_vulkan11, features_16bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
storage_buffer8_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-storageBuffer8BitAccess)
|
|
",
|
|
ffi_name: storage_buffer8_bit_access,
|
|
ffi_members: [features_vulkan12, features_8bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
storage_input_output16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-storageInputOutput16)
|
|
",
|
|
ffi_name: storage_input_output16,
|
|
ffi_members: [features_vulkan11, features_16bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
storage_push_constant16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-storagePushConstant16)
|
|
",
|
|
ffi_name: storage_push_constant16,
|
|
ffi_members: [features_vulkan11, features_16bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
storage_push_constant8 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-storagePushConstant8)
|
|
",
|
|
ffi_name: storage_push_constant8,
|
|
ffi_members: [features_vulkan12, features_8bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
subgroup_broadcast_dynamic_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-subgroupBroadcastDynamicId)
|
|
",
|
|
ffi_name: subgroup_broadcast_dynamic_id,
|
|
ffi_members: [features_vulkan12],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
subgroup_size_control => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlFeaturesEXT.html#features-subgroupSizeControl)
|
|
",
|
|
ffi_name: subgroup_size_control,
|
|
ffi_members: [features_subgroup_size_control_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
subpass_shading => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.html#features-subpassShading)
|
|
",
|
|
ffi_name: subpass_shading,
|
|
ffi_members: [features_subpass_shading_huawei],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
supersample_fragment_shading_rates => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.html#features-supersampleFragmentShadingRates)
|
|
",
|
|
ffi_name: supersample_fragment_shading_rates,
|
|
ffi_members: [features_fragment_shading_rate_enums_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
synchronization2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSynchronization2FeaturesKHR.html#features-synchronization2)
|
|
",
|
|
ffi_name: synchronization2,
|
|
ffi_members: [features_synchronization2_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
task_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderFeaturesNV.html#features-taskShader)
|
|
",
|
|
ffi_name: task_shader,
|
|
ffi_members: [features_mesh_shader_nv],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
tessellation_isolines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-tessellationIsolines)
|
|
",
|
|
ffi_name: tessellation_isolines,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
tessellation_point_mode => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-tessellationPointMode)
|
|
",
|
|
ffi_name: tessellation_point_mode,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
tessellation_shader => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-tessellationShader)
|
|
",
|
|
ffi_name: tessellation_shader,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
texel_buffer_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.html#features-texelBufferAlignment)
|
|
",
|
|
ffi_name: texel_buffer_alignment,
|
|
ffi_members: [features_texel_buffer_alignment_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
texture_compression_astc_hdr => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT.html#features-textureCompressionASTC_HDR)
|
|
",
|
|
ffi_name: texture_compression_astc_hdr,
|
|
ffi_members: [features_texture_compression_astchdr_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
texture_compression_astc_ldr => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-textureCompressionASTC_LDR)
|
|
",
|
|
ffi_name: texture_compression_astc_ldr,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
texture_compression_bc => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-textureCompressionBC)
|
|
",
|
|
ffi_name: texture_compression_bc,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
texture_compression_etc2 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-textureCompressionETC2)
|
|
",
|
|
ffi_name: texture_compression_etc2,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
timeline_semaphore => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-timelineSemaphore)
|
|
",
|
|
ffi_name: timeline_semaphore,
|
|
ffi_members: [features_vulkan12, features_timeline_semaphore],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
transform_feedback => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackFeaturesEXT.html#features-transformFeedback)
|
|
",
|
|
ffi_name: transform_feedback,
|
|
ffi_members: [features_transform_feedback_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
transform_feedback_preserves_provoking_vertex => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProvokingVertexFeaturesEXT.html#features-transformFeedbackPreservesProvokingVertex)
|
|
",
|
|
ffi_name: transform_feedback_preserves_provoking_vertex,
|
|
ffi_members: [features_provoking_vertex_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
triangle_fans => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-triangleFans)
|
|
",
|
|
ffi_name: triangle_fans,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
uniform_and_storage_buffer16_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-uniformAndStorageBuffer16BitAccess)
|
|
",
|
|
ffi_name: uniform_and_storage_buffer16_bit_access,
|
|
ffi_members: [features_vulkan11, features_16bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
uniform_and_storage_buffer8_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-uniformAndStorageBuffer8BitAccess)
|
|
",
|
|
ffi_name: uniform_and_storage_buffer8_bit_access,
|
|
ffi_members: [features_vulkan12, features_8bit_storage],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
uniform_buffer_standard_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-uniformBufferStandardLayout)
|
|
",
|
|
ffi_name: uniform_buffer_standard_layout,
|
|
ffi_members: [features_vulkan12, features_uniform_buffer_standard_layout],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
variable_multisample_rate => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-variableMultisampleRate)
|
|
",
|
|
ffi_name: variable_multisample_rate,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
variable_pointers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-variablePointers)
|
|
",
|
|
ffi_name: variable_pointers,
|
|
ffi_members: [features_vulkan11, features_variable_pointers],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
variable_pointers_storage_buffer => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Features.html#features-variablePointersStorageBuffer)
|
|
",
|
|
ffi_name: variable_pointers_storage_buffer,
|
|
ffi_members: [features_vulkan11, features_variable_pointers],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vertex_attribute_access_beyond_stride => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetFeaturesKHR.html#features-vertexAttributeAccessBeyondStride)
|
|
",
|
|
ffi_name: vertex_attribute_access_beyond_stride,
|
|
ffi_members: [features_portability_subset_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vertex_attribute_instance_rate_divisor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT.html#features-vertexAttributeInstanceRateDivisor)
|
|
",
|
|
ffi_name: vertex_attribute_instance_rate_divisor,
|
|
ffi_members: [features_vertex_attribute_divisor_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vertex_attribute_instance_rate_zero_divisor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT.html#features-vertexAttributeInstanceRateZeroDivisor)
|
|
",
|
|
ffi_name: vertex_attribute_instance_rate_zero_divisor,
|
|
ffi_members: [features_vertex_attribute_divisor_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vertex_input_dynamic_state => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.html#features-vertexInputDynamicState)
|
|
",
|
|
ffi_name: vertex_input_dynamic_state,
|
|
ffi_members: [features_vertex_input_dynamic_state_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vertex_pipeline_stores_and_atomics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-vertexPipelineStoresAndAtomics)
|
|
",
|
|
ffi_name: vertex_pipeline_stores_and_atomics,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vulkan_memory_model => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-vulkanMemoryModel)
|
|
",
|
|
ffi_name: vulkan_memory_model,
|
|
ffi_members: [features_vulkan12, features_vulkan_memory_model],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vulkan_memory_model_availability_visibility_chains => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-vulkanMemoryModelAvailabilityVisibilityChains)
|
|
",
|
|
ffi_name: vulkan_memory_model_availability_visibility_chains,
|
|
ffi_members: [features_vulkan12, features_vulkan_memory_model],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
vulkan_memory_model_device_scope => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Features.html#features-vulkanMemoryModelDeviceScope)
|
|
",
|
|
ffi_name: vulkan_memory_model_device_scope,
|
|
ffi_members: [features_vulkan12, features_vulkan_memory_model],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
wide_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFeatures.html#features-wideLines)
|
|
",
|
|
ffi_name: wide_lines,
|
|
ffi_members: [features_vulkan10.features],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
workgroup_memory_explicit_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.html#features-workgroupMemoryExplicitLayout)
|
|
",
|
|
ffi_name: workgroup_memory_explicit_layout,
|
|
ffi_members: [features_workgroup_memory_explicit_layout_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
workgroup_memory_explicit_layout16_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.html#features-workgroupMemoryExplicitLayout16BitAccess)
|
|
",
|
|
ffi_name: workgroup_memory_explicit_layout16_bit_access,
|
|
ffi_members: [features_workgroup_memory_explicit_layout_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
workgroup_memory_explicit_layout8_bit_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.html#features-workgroupMemoryExplicitLayout8BitAccess)
|
|
",
|
|
ffi_name: workgroup_memory_explicit_layout8_bit_access,
|
|
ffi_members: [features_workgroup_memory_explicit_layout_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
workgroup_memory_explicit_layout_scalar_block_layout => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.html#features-workgroupMemoryExplicitLayoutScalarBlockLayout)
|
|
",
|
|
ffi_name: workgroup_memory_explicit_layout_scalar_block_layout,
|
|
ffi_members: [features_workgroup_memory_explicit_layout_khr],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ycbcr2plane444_formats => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.html#features-ycbcr2plane444Formats)
|
|
",
|
|
ffi_name: ycbcr2plane444_formats,
|
|
ffi_members: [features_ycbcr2_plane444_formats_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
ycbcr_image_arrays => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.html#features-ycbcrImageArrays)
|
|
",
|
|
ffi_name: ycbcr_image_arrays,
|
|
ffi_members: [features_ycbcr_image_arrays_ext],
|
|
requires_features: [],
|
|
conflicts_features: [],
|
|
required_by_extensions: [],
|
|
},
|
|
}
|
|
|
|
crate::device::features::features_ffi! {
|
|
api_version,
|
|
device_extensions,
|
|
instance_extensions,
|
|
features_vulkan11 => {
|
|
ty: PhysicalDeviceVulkan11Features,
|
|
provided_by: [api_version >= crate::Version::V1_2],
|
|
conflicts: [],
|
|
},
|
|
features_vulkan12 => {
|
|
ty: PhysicalDeviceVulkan12Features,
|
|
provided_by: [api_version >= crate::Version::V1_2],
|
|
conflicts: [],
|
|
},
|
|
features_16bit_storage => {
|
|
ty: PhysicalDevice16BitStorageFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_16bit_storage],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_multiview => {
|
|
ty: PhysicalDeviceMultiviewFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_multiview],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_protected_memory => {
|
|
ty: PhysicalDeviceProtectedMemoryFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_sampler_ycbcr_conversion => {
|
|
ty: PhysicalDeviceSamplerYcbcrConversionFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_sampler_ycbcr_conversion],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_shader_draw_parameters => {
|
|
ty: PhysicalDeviceShaderDrawParametersFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_variable_pointers => {
|
|
ty: PhysicalDeviceVariablePointersFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_variable_pointers],
|
|
conflicts: [features_vulkan11],
|
|
},
|
|
features_8bit_storage => {
|
|
ty: PhysicalDevice8BitStorageFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_8bit_storage],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_buffer_device_address => {
|
|
ty: PhysicalDeviceBufferDeviceAddressFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_buffer_device_address],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_descriptor_indexing => {
|
|
ty: PhysicalDeviceDescriptorIndexingFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.ext_descriptor_indexing],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_host_query_reset => {
|
|
ty: PhysicalDeviceHostQueryResetFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.ext_host_query_reset],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_imageless_framebuffer => {
|
|
ty: PhysicalDeviceImagelessFramebufferFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_imageless_framebuffer],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_scalar_block_layout => {
|
|
ty: PhysicalDeviceScalarBlockLayoutFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.ext_scalar_block_layout],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_separate_depth_stencil_layouts => {
|
|
ty: PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_separate_depth_stencil_layouts],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_shader_atomic_int64 => {
|
|
ty: PhysicalDeviceShaderAtomicInt64Features,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_shader_atomic_int64],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_shader_float16_int8 => {
|
|
ty: PhysicalDeviceShaderFloat16Int8Features,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_shader_float16_int8],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_shader_subgroup_extended_types => {
|
|
ty: PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_shader_subgroup_extended_types],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_timeline_semaphore => {
|
|
ty: PhysicalDeviceTimelineSemaphoreFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_timeline_semaphore],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_uniform_buffer_standard_layout => {
|
|
ty: PhysicalDeviceUniformBufferStandardLayoutFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_uniform_buffer_standard_layout],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_vulkan_memory_model => {
|
|
ty: PhysicalDeviceVulkanMemoryModelFeatures,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_vulkan_memory_model],
|
|
conflicts: [features_vulkan12],
|
|
},
|
|
features_acceleration_structure_khr => {
|
|
ty: PhysicalDeviceAccelerationStructureFeaturesKHR,
|
|
provided_by: [device_extensions.khr_acceleration_structure],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_shading_rate_khr => {
|
|
ty: PhysicalDeviceFragmentShadingRateFeaturesKHR,
|
|
provided_by: [device_extensions.khr_fragment_shading_rate],
|
|
conflicts: [],
|
|
},
|
|
features_performance_query_khr => {
|
|
ty: PhysicalDevicePerformanceQueryFeaturesKHR,
|
|
provided_by: [device_extensions.khr_performance_query],
|
|
conflicts: [],
|
|
},
|
|
features_pipeline_executable_properties_khr => {
|
|
ty: PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
|
|
provided_by: [device_extensions.khr_pipeline_executable_properties],
|
|
conflicts: [],
|
|
},
|
|
features_portability_subset_khr => {
|
|
ty: PhysicalDevicePortabilitySubsetFeaturesKHR,
|
|
provided_by: [device_extensions.khr_portability_subset],
|
|
conflicts: [],
|
|
},
|
|
features_present_id_khr => {
|
|
ty: PhysicalDevicePresentIdFeaturesKHR,
|
|
provided_by: [device_extensions.khr_present_id],
|
|
conflicts: [],
|
|
},
|
|
features_present_wait_khr => {
|
|
ty: PhysicalDevicePresentWaitFeaturesKHR,
|
|
provided_by: [device_extensions.khr_present_wait],
|
|
conflicts: [],
|
|
},
|
|
features_ray_query_khr => {
|
|
ty: PhysicalDeviceRayQueryFeaturesKHR,
|
|
provided_by: [device_extensions.khr_ray_query],
|
|
conflicts: [],
|
|
},
|
|
features_ray_tracing_pipeline_khr => {
|
|
ty: PhysicalDeviceRayTracingPipelineFeaturesKHR,
|
|
provided_by: [device_extensions.khr_ray_tracing_pipeline],
|
|
conflicts: [],
|
|
},
|
|
features_shader_clock_khr => {
|
|
ty: PhysicalDeviceShaderClockFeaturesKHR,
|
|
provided_by: [device_extensions.khr_shader_clock],
|
|
conflicts: [],
|
|
},
|
|
features_shader_subgroup_uniform_control_flow_khr => {
|
|
ty: PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR,
|
|
provided_by: [device_extensions.khr_shader_subgroup_uniform_control_flow],
|
|
conflicts: [],
|
|
},
|
|
features_shader_terminate_invocation_khr => {
|
|
ty: PhysicalDeviceShaderTerminateInvocationFeaturesKHR,
|
|
provided_by: [device_extensions.khr_shader_terminate_invocation],
|
|
conflicts: [],
|
|
},
|
|
features_synchronization2_khr => {
|
|
ty: PhysicalDeviceSynchronization2FeaturesKHR,
|
|
provided_by: [device_extensions.khr_synchronization2],
|
|
conflicts: [],
|
|
},
|
|
features_workgroup_memory_explicit_layout_khr => {
|
|
ty: PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR,
|
|
provided_by: [device_extensions.khr_workgroup_memory_explicit_layout],
|
|
conflicts: [],
|
|
},
|
|
features_zero_initialize_workgroup_memory_khr => {
|
|
ty: PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR,
|
|
provided_by: [device_extensions.khr_zero_initialize_workgroup_memory],
|
|
conflicts: [],
|
|
},
|
|
features_4444formats_ext => {
|
|
ty: PhysicalDevice4444FormatsFeaturesEXT,
|
|
provided_by: [device_extensions.ext_4444_formats],
|
|
conflicts: [],
|
|
},
|
|
features_astc_decode_ext => {
|
|
ty: PhysicalDeviceASTCDecodeFeaturesEXT,
|
|
provided_by: [device_extensions.ext_astc_decode_mode],
|
|
conflicts: [],
|
|
},
|
|
features_blend_operation_advanced_ext => {
|
|
ty: PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
|
|
provided_by: [device_extensions.ext_blend_operation_advanced],
|
|
conflicts: [],
|
|
},
|
|
features_buffer_device_address_ext => {
|
|
ty: PhysicalDeviceBufferDeviceAddressFeaturesEXT,
|
|
provided_by: [device_extensions.ext_buffer_device_address],
|
|
conflicts: [features_vulkan12, features_buffer_device_address],
|
|
},
|
|
features_color_write_enable_ext => {
|
|
ty: PhysicalDeviceColorWriteEnableFeaturesEXT,
|
|
provided_by: [device_extensions.ext_color_write_enable],
|
|
conflicts: [],
|
|
},
|
|
features_conditional_rendering_ext => {
|
|
ty: PhysicalDeviceConditionalRenderingFeaturesEXT,
|
|
provided_by: [device_extensions.ext_conditional_rendering],
|
|
conflicts: [],
|
|
},
|
|
features_custom_border_color_ext => {
|
|
ty: PhysicalDeviceCustomBorderColorFeaturesEXT,
|
|
provided_by: [device_extensions.ext_custom_border_color],
|
|
conflicts: [],
|
|
},
|
|
features_depth_clip_enable_ext => {
|
|
ty: PhysicalDeviceDepthClipEnableFeaturesEXT,
|
|
provided_by: [device_extensions.ext_depth_clip_enable],
|
|
conflicts: [],
|
|
},
|
|
features_device_memory_report_ext => {
|
|
ty: PhysicalDeviceDeviceMemoryReportFeaturesEXT,
|
|
provided_by: [device_extensions.ext_device_memory_report],
|
|
conflicts: [],
|
|
},
|
|
features_extended_dynamic_state2_ext => {
|
|
ty: PhysicalDeviceExtendedDynamicState2FeaturesEXT,
|
|
provided_by: [device_extensions.ext_extended_dynamic_state2],
|
|
conflicts: [],
|
|
},
|
|
features_extended_dynamic_state_ext => {
|
|
ty: PhysicalDeviceExtendedDynamicStateFeaturesEXT,
|
|
provided_by: [device_extensions.ext_extended_dynamic_state],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_density_map2_ext => {
|
|
ty: PhysicalDeviceFragmentDensityMap2FeaturesEXT,
|
|
provided_by: [device_extensions.ext_fragment_density_map2],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_density_map_ext => {
|
|
ty: PhysicalDeviceFragmentDensityMapFeaturesEXT,
|
|
provided_by: [device_extensions.ext_fragment_density_map],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_shader_interlock_ext => {
|
|
ty: PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
|
|
provided_by: [device_extensions.ext_fragment_shader_interlock],
|
|
conflicts: [],
|
|
},
|
|
features_global_priority_query_ext => {
|
|
ty: PhysicalDeviceGlobalPriorityQueryFeaturesEXT,
|
|
provided_by: [device_extensions.ext_global_priority_query],
|
|
conflicts: [],
|
|
},
|
|
features_image_robustness_ext => {
|
|
ty: PhysicalDeviceImageRobustnessFeaturesEXT,
|
|
provided_by: [device_extensions.ext_image_robustness],
|
|
conflicts: [],
|
|
},
|
|
features_index_type_uint8_ext => {
|
|
ty: PhysicalDeviceIndexTypeUint8FeaturesEXT,
|
|
provided_by: [device_extensions.ext_index_type_uint8],
|
|
conflicts: [],
|
|
},
|
|
features_inline_uniform_block_ext => {
|
|
ty: PhysicalDeviceInlineUniformBlockFeaturesEXT,
|
|
provided_by: [device_extensions.ext_inline_uniform_block],
|
|
conflicts: [],
|
|
},
|
|
features_line_rasterization_ext => {
|
|
ty: PhysicalDeviceLineRasterizationFeaturesEXT,
|
|
provided_by: [device_extensions.ext_line_rasterization],
|
|
conflicts: [],
|
|
},
|
|
features_memory_priority_ext => {
|
|
ty: PhysicalDeviceMemoryPriorityFeaturesEXT,
|
|
provided_by: [device_extensions.ext_memory_priority],
|
|
conflicts: [],
|
|
},
|
|
features_multi_draw_ext => {
|
|
ty: PhysicalDeviceMultiDrawFeaturesEXT,
|
|
provided_by: [device_extensions.ext_multi_draw],
|
|
conflicts: [],
|
|
},
|
|
features_pipeline_creation_cache_control_ext => {
|
|
ty: PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
|
|
provided_by: [device_extensions.ext_pipeline_creation_cache_control],
|
|
conflicts: [],
|
|
},
|
|
features_private_data_ext => {
|
|
ty: PhysicalDevicePrivateDataFeaturesEXT,
|
|
provided_by: [device_extensions.ext_private_data],
|
|
conflicts: [],
|
|
},
|
|
features_provoking_vertex_ext => {
|
|
ty: PhysicalDeviceProvokingVertexFeaturesEXT,
|
|
provided_by: [device_extensions.ext_provoking_vertex],
|
|
conflicts: [],
|
|
},
|
|
features_robustness2_ext => {
|
|
ty: PhysicalDeviceRobustness2FeaturesEXT,
|
|
provided_by: [device_extensions.ext_robustness2],
|
|
conflicts: [],
|
|
},
|
|
features_shader_atomic_float2_ext => {
|
|
ty: PhysicalDeviceShaderAtomicFloat2FeaturesEXT,
|
|
provided_by: [device_extensions.ext_shader_atomic_float2],
|
|
conflicts: [],
|
|
},
|
|
features_shader_atomic_float_ext => {
|
|
ty: PhysicalDeviceShaderAtomicFloatFeaturesEXT,
|
|
provided_by: [device_extensions.ext_shader_atomic_float],
|
|
conflicts: [],
|
|
},
|
|
features_shader_demote_to_helper_invocation_ext => {
|
|
ty: PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
|
|
provided_by: [device_extensions.ext_shader_demote_to_helper_invocation],
|
|
conflicts: [],
|
|
},
|
|
features_shader_image_atomic_int64_ext => {
|
|
ty: PhysicalDeviceShaderImageAtomicInt64FeaturesEXT,
|
|
provided_by: [device_extensions.ext_shader_image_atomic_int64],
|
|
conflicts: [],
|
|
},
|
|
features_subgroup_size_control_ext => {
|
|
ty: PhysicalDeviceSubgroupSizeControlFeaturesEXT,
|
|
provided_by: [device_extensions.ext_subgroup_size_control],
|
|
conflicts: [],
|
|
},
|
|
features_texel_buffer_alignment_ext => {
|
|
ty: PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
|
|
provided_by: [device_extensions.ext_texel_buffer_alignment],
|
|
conflicts: [],
|
|
},
|
|
features_texture_compression_astchdr_ext => {
|
|
ty: PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
|
|
provided_by: [device_extensions.ext_texture_compression_astc_hdr],
|
|
conflicts: [],
|
|
},
|
|
features_transform_feedback_ext => {
|
|
ty: PhysicalDeviceTransformFeedbackFeaturesEXT,
|
|
provided_by: [device_extensions.ext_transform_feedback],
|
|
conflicts: [],
|
|
},
|
|
features_vertex_attribute_divisor_ext => {
|
|
ty: PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
|
|
provided_by: [device_extensions.ext_vertex_attribute_divisor],
|
|
conflicts: [],
|
|
},
|
|
features_vertex_input_dynamic_state_ext => {
|
|
ty: PhysicalDeviceVertexInputDynamicStateFeaturesEXT,
|
|
provided_by: [device_extensions.ext_vertex_input_dynamic_state],
|
|
conflicts: [],
|
|
},
|
|
features_ycbcr2_plane444_formats_ext => {
|
|
ty: PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT,
|
|
provided_by: [device_extensions.ext_ycbcr_2plane_444_formats],
|
|
conflicts: [],
|
|
},
|
|
features_ycbcr_image_arrays_ext => {
|
|
ty: PhysicalDeviceYcbcrImageArraysFeaturesEXT,
|
|
provided_by: [device_extensions.ext_ycbcr_image_arrays],
|
|
conflicts: [],
|
|
},
|
|
features_coherent_memory_amd => {
|
|
ty: PhysicalDeviceCoherentMemoryFeaturesAMD,
|
|
provided_by: [device_extensions.amd_device_coherent_memory],
|
|
conflicts: [],
|
|
},
|
|
features_compute_shader_derivatives_nv => {
|
|
ty: PhysicalDeviceComputeShaderDerivativesFeaturesNV,
|
|
provided_by: [device_extensions.nv_compute_shader_derivatives],
|
|
conflicts: [],
|
|
},
|
|
features_cooperative_matrix_nv => {
|
|
ty: PhysicalDeviceCooperativeMatrixFeaturesNV,
|
|
provided_by: [device_extensions.nv_cooperative_matrix],
|
|
conflicts: [],
|
|
},
|
|
features_corner_sampled_image_nv => {
|
|
ty: PhysicalDeviceCornerSampledImageFeaturesNV,
|
|
provided_by: [device_extensions.nv_corner_sampled_image],
|
|
conflicts: [],
|
|
},
|
|
features_coverage_reduction_mode_nv => {
|
|
ty: PhysicalDeviceCoverageReductionModeFeaturesNV,
|
|
provided_by: [device_extensions.nv_coverage_reduction_mode],
|
|
conflicts: [],
|
|
},
|
|
features_dedicated_allocation_image_aliasing_nv => {
|
|
ty: PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
|
|
provided_by: [device_extensions.nv_dedicated_allocation_image_aliasing],
|
|
conflicts: [],
|
|
},
|
|
features_device_generated_commands_nv => {
|
|
ty: PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
|
|
provided_by: [device_extensions.nv_device_generated_commands],
|
|
conflicts: [],
|
|
},
|
|
features_diagnostics_config_nv => {
|
|
ty: PhysicalDeviceDiagnosticsConfigFeaturesNV,
|
|
provided_by: [device_extensions.nv_device_diagnostics_config],
|
|
conflicts: [],
|
|
},
|
|
features_exclusive_scissor_nv => {
|
|
ty: PhysicalDeviceExclusiveScissorFeaturesNV,
|
|
provided_by: [device_extensions.nv_scissor_exclusive],
|
|
conflicts: [],
|
|
},
|
|
features_external_memory_rdma_nv => {
|
|
ty: PhysicalDeviceExternalMemoryRDMAFeaturesNV,
|
|
provided_by: [device_extensions.nv_external_memory_rdma],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_shader_barycentric_nv => {
|
|
ty: PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
|
|
provided_by: [device_extensions.nv_fragment_shader_barycentric],
|
|
conflicts: [],
|
|
},
|
|
features_fragment_shading_rate_enums_nv => {
|
|
ty: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV,
|
|
provided_by: [device_extensions.nv_fragment_shading_rate_enums],
|
|
conflicts: [],
|
|
},
|
|
features_inherited_viewport_scissor_nv => {
|
|
ty: PhysicalDeviceInheritedViewportScissorFeaturesNV,
|
|
provided_by: [device_extensions.nv_inherited_viewport_scissor],
|
|
conflicts: [],
|
|
},
|
|
features_invocation_mask_huawei => {
|
|
ty: PhysicalDeviceInvocationMaskFeaturesHUAWEI,
|
|
provided_by: [device_extensions.huawei_invocation_mask],
|
|
conflicts: [],
|
|
},
|
|
features_mesh_shader_nv => {
|
|
ty: PhysicalDeviceMeshShaderFeaturesNV,
|
|
provided_by: [device_extensions.nv_mesh_shader],
|
|
conflicts: [],
|
|
},
|
|
features_mutable_descriptor_type_valve => {
|
|
ty: PhysicalDeviceMutableDescriptorTypeFeaturesVALVE,
|
|
provided_by: [device_extensions.valve_mutable_descriptor_type],
|
|
conflicts: [],
|
|
},
|
|
features_ray_tracing_motion_blur_nv => {
|
|
ty: PhysicalDeviceRayTracingMotionBlurFeaturesNV,
|
|
provided_by: [device_extensions.nv_ray_tracing_motion_blur],
|
|
conflicts: [],
|
|
},
|
|
features_representative_fragment_test_nv => {
|
|
ty: PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
|
|
provided_by: [device_extensions.nv_representative_fragment_test],
|
|
conflicts: [],
|
|
},
|
|
features_shader_image_footprint_nv => {
|
|
ty: PhysicalDeviceShaderImageFootprintFeaturesNV,
|
|
provided_by: [device_extensions.nv_shader_image_footprint],
|
|
conflicts: [],
|
|
},
|
|
features_shader_integer_functions2_intel => {
|
|
ty: PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
|
|
provided_by: [device_extensions.intel_shader_integer_functions2],
|
|
conflicts: [],
|
|
},
|
|
features_shader_sm_builtins_nv => {
|
|
ty: PhysicalDeviceShaderSMBuiltinsFeaturesNV,
|
|
provided_by: [device_extensions.nv_shader_sm_builtins],
|
|
conflicts: [],
|
|
},
|
|
features_shading_rate_image_nv => {
|
|
ty: PhysicalDeviceShadingRateImageFeaturesNV,
|
|
provided_by: [device_extensions.nv_shading_rate_image],
|
|
conflicts: [],
|
|
},
|
|
features_subpass_shading_huawei => {
|
|
ty: PhysicalDeviceSubpassShadingFeaturesHUAWEI,
|
|
provided_by: [device_extensions.huawei_subpass_shading],
|
|
conflicts: [],
|
|
},
|
|
}
|
|
|
|
crate::device::properties::properties! {
|
|
active_compute_unit_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCoreProperties2AMD.html#limits-activeComputeUnitCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: active_compute_unit_count,
|
|
ffi_members: [properties_shader_core2_amd],
|
|
required: false,
|
|
},
|
|
advanced_blend_all_operations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendAllOperations)
|
|
",
|
|
ty: bool,
|
|
ffi_name: advanced_blend_all_operations,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
advanced_blend_correlated_overlap => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendCorrelatedOverlap)
|
|
",
|
|
ty: bool,
|
|
ffi_name: advanced_blend_correlated_overlap,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
advanced_blend_independent_blend => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendIndependentBlend)
|
|
",
|
|
ty: bool,
|
|
ffi_name: advanced_blend_independent_blend,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
advanced_blend_max_color_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendMaxColorAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: advanced_blend_max_color_attachments,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
advanced_blend_non_premultiplied_dst_color => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendNonPremultipliedDstColor)
|
|
",
|
|
ty: bool,
|
|
ffi_name: advanced_blend_non_premultiplied_dst_color,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
advanced_blend_non_premultiplied_src_color => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html#limits-advancedBlendNonPremultipliedSrcColor)
|
|
",
|
|
ty: bool,
|
|
ffi_name: advanced_blend_non_premultiplied_src_color,
|
|
ffi_members: [properties_blend_operation_advanced_ext],
|
|
required: false,
|
|
},
|
|
allow_command_buffer_query_copies => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePerformanceQueryPropertiesKHR.html#limits-allowCommandBufferQueryCopies)
|
|
",
|
|
ty: bool,
|
|
ffi_name: allow_command_buffer_query_copies,
|
|
ffi_members: [properties_performance_query_khr],
|
|
required: false,
|
|
},
|
|
api_version => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-apiVersion)
|
|
",
|
|
ty: crate::Version,
|
|
ffi_name: api_version,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
buffer_image_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-bufferImageGranularity)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: buffer_image_granularity,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
compute_units_per_shader_array => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-computeUnitsPerShaderArray)
|
|
",
|
|
ty: u32,
|
|
ffi_name: compute_units_per_shader_array,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
conformance_version => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-conformanceVersion)
|
|
",
|
|
ty: crate::device::physical::ConformanceVersion,
|
|
ffi_name: conformance_version,
|
|
ffi_members: [properties_vulkan12, properties_driver],
|
|
required: false,
|
|
},
|
|
conservative_point_and_line_rasterization => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-conservativePointAndLineRasterization)
|
|
",
|
|
ty: bool,
|
|
ffi_name: conservative_point_and_line_rasterization,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
conservative_rasterization_post_depth_coverage => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-conservativeRasterizationPostDepthCoverage)
|
|
",
|
|
ty: bool,
|
|
ffi_name: conservative_rasterization_post_depth_coverage,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
cooperative_matrix_supported_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCooperativeMatrixPropertiesNV.html#limits-cooperativeMatrixSupportedStages)
|
|
",
|
|
ty: crate::pipeline::shader::ShaderStages,
|
|
ffi_name: cooperative_matrix_supported_stages,
|
|
ffi_members: [properties_cooperative_matrix_nv],
|
|
required: false,
|
|
},
|
|
degenerate_lines_rasterized => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-degenerateLinesRasterized)
|
|
",
|
|
ty: bool,
|
|
ffi_name: degenerate_lines_rasterized,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
degenerate_triangles_rasterized => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-degenerateTrianglesRasterized)
|
|
",
|
|
ty: bool,
|
|
ffi_name: degenerate_triangles_rasterized,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
denorm_behavior_independence => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-denormBehaviorIndependence)
|
|
",
|
|
ty: crate::device::physical::ShaderFloatControlsIndependence,
|
|
ffi_name: denorm_behavior_independence,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
device_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-deviceID)
|
|
",
|
|
ty: u32,
|
|
ffi_name: device_id,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
device_luid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-deviceLUID)
|
|
",
|
|
ty: [u8; 8],
|
|
ffi_name: device_luid,
|
|
ffi_members: [properties_vulkan11, properties_id],
|
|
required: false,
|
|
},
|
|
device_luid_valid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-deviceLUIDValid)
|
|
",
|
|
ty: bool,
|
|
ffi_name: device_luid_valid,
|
|
ffi_members: [properties_vulkan11, properties_id],
|
|
required: false,
|
|
},
|
|
device_name => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-deviceName)
|
|
",
|
|
ty: String,
|
|
ffi_name: device_name,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
device_node_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-deviceNodeMask)
|
|
",
|
|
ty: u32,
|
|
ffi_name: device_node_mask,
|
|
ffi_members: [properties_vulkan11, properties_id],
|
|
required: false,
|
|
},
|
|
device_type => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-deviceType)
|
|
",
|
|
ty: crate::device::physical::PhysicalDeviceType,
|
|
ffi_name: device_type,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
device_uuid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-deviceUUID)
|
|
",
|
|
ty: [u8; 16],
|
|
ffi_name: device_uuid,
|
|
ffi_members: [properties_vulkan11, properties_id],
|
|
required: false,
|
|
},
|
|
discrete_queue_priorities => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-discreteQueuePriorities)
|
|
",
|
|
ty: u32,
|
|
ffi_name: discrete_queue_priorities,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
driver_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-driverID)
|
|
",
|
|
ty: crate::device::physical::DriverId,
|
|
ffi_name: driver_id,
|
|
ffi_members: [properties_vulkan12, properties_driver],
|
|
required: false,
|
|
},
|
|
driver_info => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-driverInfo)
|
|
",
|
|
ty: String,
|
|
ffi_name: driver_info,
|
|
ffi_members: [properties_vulkan12, properties_driver],
|
|
required: false,
|
|
},
|
|
driver_name => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-driverName)
|
|
",
|
|
ty: String,
|
|
ffi_name: driver_name,
|
|
ffi_members: [properties_vulkan12, properties_driver],
|
|
required: false,
|
|
},
|
|
driver_uuid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-driverUUID)
|
|
",
|
|
ty: [u8; 16],
|
|
ffi_name: driver_uuid,
|
|
ffi_members: [properties_vulkan11, properties_id],
|
|
required: false,
|
|
},
|
|
driver_version => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-driverVersion)
|
|
",
|
|
ty: u32,
|
|
ffi_name: driver_version,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
extra_primitive_overestimation_size_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-extraPrimitiveOverestimationSizeGranularity)
|
|
",
|
|
ty: f32,
|
|
ffi_name: extra_primitive_overestimation_size_granularity,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
filter_minmax_image_component_mapping => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-filterMinmaxImageComponentMapping)
|
|
",
|
|
ty: bool,
|
|
ffi_name: filter_minmax_image_component_mapping,
|
|
ffi_members: [properties_vulkan12, properties_sampler_filter_minmax],
|
|
required: false,
|
|
},
|
|
filter_minmax_single_component_formats => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-filterMinmaxSingleComponentFormats)
|
|
",
|
|
ty: bool,
|
|
ffi_name: filter_minmax_single_component_formats,
|
|
ffi_members: [properties_vulkan12, properties_sampler_filter_minmax],
|
|
required: false,
|
|
},
|
|
fragment_density_invocations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapPropertiesEXT.html#limits-fragmentDensityInvocations)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_density_invocations,
|
|
ffi_members: [properties_fragment_density_map_ext],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_non_trivial_combiner_ops => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateNonTrivialCombinerOps)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_non_trivial_combiner_ops,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_strict_multiply_combiner => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateStrictMultiplyCombiner)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_strict_multiply_combiner,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_conservative_rasterization => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithConservativeRasterization)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_conservative_rasterization,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_custom_sample_locations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithCustomSampleLocations)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_custom_sample_locations,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_fragment_shader_interlock => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithFragmentShaderInterlock)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_fragment_shader_interlock,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_sample_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithSampleMask)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_sample_mask,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_shader_depth_stencil_writes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithShaderDepthStencilWrites)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_shader_depth_stencil_writes,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
fragment_shading_rate_with_shader_sample_mask => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-fragmentShadingRateWithShaderSampleMask)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fragment_shading_rate_with_shader_sample_mask,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
framebuffer_color_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-framebufferColorSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: framebuffer_color_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
framebuffer_depth_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-framebufferDepthSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: framebuffer_depth_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
framebuffer_integer_color_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-framebufferIntegerColorSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: framebuffer_integer_color_sample_counts,
|
|
ffi_members: [properties_vulkan12],
|
|
required: false,
|
|
},
|
|
framebuffer_no_attachments_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-framebufferNoAttachmentsSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: framebuffer_no_attachments_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
framebuffer_stencil_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-framebufferStencilSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: framebuffer_stencil_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
fully_covered_fragment_shader_input_variable => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-fullyCoveredFragmentShaderInputVariable)
|
|
",
|
|
ty: bool,
|
|
ffi_name: fully_covered_fragment_shader_input_variable,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
has_primary => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-hasPrimary)
|
|
",
|
|
ty: bool,
|
|
ffi_name: has_primary,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
has_render => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-hasRender)
|
|
",
|
|
ty: bool,
|
|
ffi_name: has_render,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
independent_resolve => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-independentResolve)
|
|
",
|
|
ty: bool,
|
|
ffi_name: independent_resolve,
|
|
ffi_members: [properties_vulkan12, properties_depth_stencil_resolve],
|
|
required: false,
|
|
},
|
|
independent_resolve_none => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-independentResolveNone)
|
|
",
|
|
ty: bool,
|
|
ffi_name: independent_resolve_none,
|
|
ffi_members: [properties_vulkan12, properties_depth_stencil_resolve],
|
|
required: false,
|
|
},
|
|
layered_shading_rate_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-layeredShadingRateAttachments)
|
|
",
|
|
ty: bool,
|
|
ffi_name: layered_shading_rate_attachments,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
line_sub_pixel_precision_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLineRasterizationPropertiesEXT.html#limits-lineSubPixelPrecisionBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: line_sub_pixel_precision_bits,
|
|
ffi_members: [properties_line_rasterization_ext],
|
|
required: false,
|
|
},
|
|
line_width_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-lineWidthGranularity)
|
|
",
|
|
ty: f32,
|
|
ffi_name: line_width_granularity,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
line_width_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-lineWidthRange)
|
|
",
|
|
ty: [f32; 2],
|
|
ffi_name: line_width_range,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_bound_descriptor_sets => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxBoundDescriptorSets)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_bound_descriptor_sets,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_clip_distances => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxClipDistances)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_clip_distances,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_color_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxColorAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_color_attachments,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_combined_clip_and_cull_distances => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxCombinedClipAndCullDistances)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_combined_clip_and_cull_distances,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_compute_shared_memory_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxComputeSharedMemorySize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_compute_shared_memory_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_compute_work_group_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxComputeWorkGroupCount)
|
|
",
|
|
ty: [u32; 3],
|
|
ffi_name: max_compute_work_group_count,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_compute_work_group_invocations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxComputeWorkGroupInvocations)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_compute_work_group_invocations,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_compute_work_group_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxComputeWorkGroupSize)
|
|
",
|
|
ty: [u32; 3],
|
|
ffi_name: max_compute_work_group_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_compute_workgroup_subgroups => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.html#limits-maxComputeWorkgroupSubgroups)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_compute_workgroup_subgroups,
|
|
ffi_members: [properties_subgroup_size_control_ext],
|
|
required: false,
|
|
},
|
|
max_cull_distances => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxCullDistances)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_cull_distances,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_custom_border_color_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceCustomBorderColorPropertiesEXT.html#limits-maxCustomBorderColorSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_custom_border_color_samplers,
|
|
ffi_members: [properties_custom_border_color_ext],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_acceleration_structures => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxDescriptorSetAccelerationStructures)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_acceleration_structures,
|
|
ffi_members: [properties_acceleration_structure_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_inline_uniform_blocks => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html#limits-maxDescriptorSetInlineUniformBlocks)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_inline_uniform_blocks,
|
|
ffi_members: [properties_inline_uniform_block_ext],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_input_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetInputAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_input_attachments,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_sampled_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetSampledImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_sampled_images,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_samplers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_storage_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetStorageBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_storage_buffers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_storage_buffers_dynamic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetStorageBuffersDynamic)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_storage_buffers_dynamic,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_storage_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetStorageImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_storage_images,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_subsampled_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.html#limits-maxDescriptorSetSubsampledSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_subsampled_samplers,
|
|
ffi_members: [properties_fragment_density_map2_ext],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_uniform_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetUniformBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_uniform_buffers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_uniform_buffers_dynamic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDescriptorSetUniformBuffersDynamic)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_uniform_buffers_dynamic,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_descriptor_set_update_after_bind_acceleration_structures => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxDescriptorSetUpdateAfterBindAccelerationStructures)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_acceleration_structures,
|
|
ffi_members: [properties_acceleration_structure_khr],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_inline_uniform_blocks => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html#limits-maxDescriptorSetUpdateAfterBindInlineUniformBlocks)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_inline_uniform_blocks,
|
|
ffi_members: [properties_inline_uniform_block_ext],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_input_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindInputAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_input_attachments,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_sampled_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindSampledImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_sampled_images,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_samplers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_storage_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindStorageBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_storage_buffers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_storage_buffers_dynamic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindStorageBuffersDynamic)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_storage_buffers_dynamic,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_storage_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindStorageImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_storage_images,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_uniform_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindUniformBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_uniform_buffers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_descriptor_set_update_after_bind_uniform_buffers_dynamic => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxDescriptorSetUpdateAfterBindUniformBuffersDynamic)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_descriptor_set_update_after_bind_uniform_buffers_dynamic,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_discard_rectangles => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDiscardRectanglePropertiesEXT.html#limits-maxDiscardRectangles)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_discard_rectangles,
|
|
ffi_members: [properties_discard_rectangle_ext],
|
|
required: false,
|
|
},
|
|
max_draw_indexed_index_value => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDrawIndexedIndexValue)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_draw_indexed_index_value,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_draw_indirect_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxDrawIndirectCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_draw_indirect_count,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_draw_mesh_tasks_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxDrawMeshTasksCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_draw_mesh_tasks_count,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_extra_primitive_overestimation_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-maxExtraPrimitiveOverestimationSize)
|
|
",
|
|
ty: f32,
|
|
ffi_name: max_extra_primitive_overestimation_size,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
max_fragment_combined_output_resources => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFragmentCombinedOutputResources)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_combined_output_resources,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_fragment_density_texel_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapPropertiesEXT.html#limits-maxFragmentDensityTexelSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: max_fragment_density_texel_size,
|
|
ffi_members: [properties_fragment_density_map_ext],
|
|
required: false,
|
|
},
|
|
max_fragment_dual_src_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFragmentDualSrcAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_dual_src_attachments,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_fragment_input_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFragmentInputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_input_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_fragment_output_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFragmentOutputAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_output_attachments,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_fragment_shading_rate_attachment_texel_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentShadingRateAttachmentTexelSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: max_fragment_shading_rate_attachment_texel_size,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_fragment_shading_rate_attachment_texel_size_aspect_ratio => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentShadingRateAttachmentTexelSizeAspectRatio)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_shading_rate_attachment_texel_size_aspect_ratio,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_fragment_shading_rate_coverage_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentShadingRateCoverageSamples)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_shading_rate_coverage_samples,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_fragment_shading_rate_invocation_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.html#limits-maxFragmentShadingRateInvocationCount)
|
|
",
|
|
ty: crate::image::SampleCount,
|
|
ffi_name: max_fragment_shading_rate_invocation_count,
|
|
ffi_members: [properties_fragment_shading_rate_enums_nv],
|
|
required: false,
|
|
},
|
|
max_fragment_shading_rate_rasterization_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentShadingRateRasterizationSamples)
|
|
",
|
|
ty: crate::image::SampleCount,
|
|
ffi_name: max_fragment_shading_rate_rasterization_samples,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_fragment_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: max_fragment_size,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_fragment_size_aspect_ratio => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-maxFragmentSizeAspectRatio)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_fragment_size_aspect_ratio,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
max_framebuffer_height => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFramebufferHeight)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_framebuffer_height,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_framebuffer_layers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFramebufferLayers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_framebuffer_layers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_framebuffer_width => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxFramebufferWidth)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_framebuffer_width,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_geometry_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxGeometryCount)
|
|
",
|
|
ty: u64,
|
|
ffi_name: max_geometry_count,
|
|
ffi_members: [properties_acceleration_structure_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_geometry_input_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxGeometryInputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_geometry_input_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_geometry_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxGeometryOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_geometry_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_geometry_output_vertices => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxGeometryOutputVertices)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_geometry_output_vertices,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_geometry_shader_invocations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxGeometryShaderInvocations)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_geometry_shader_invocations,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_geometry_total_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxGeometryTotalOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_geometry_total_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_graphics_shader_group_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxGraphicsShaderGroupCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_graphics_shader_group_count,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_image_array_layers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxImageArrayLayers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_image_array_layers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_image_dimension1_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxImageDimension1D)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_image_dimension1_d,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_image_dimension2_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxImageDimension2D)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_image_dimension2_d,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_image_dimension3_d => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxImageDimension3D)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_image_dimension3_d,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_image_dimension_cube => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxImageDimensionCube)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_image_dimension_cube,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_indirect_commands_stream_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxIndirectCommandsStreamCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_indirect_commands_stream_count,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_indirect_commands_stream_stride => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxIndirectCommandsStreamStride)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_indirect_commands_stream_stride,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_indirect_commands_token_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxIndirectCommandsTokenCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_indirect_commands_token_count,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_indirect_commands_token_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxIndirectCommandsTokenOffset)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_indirect_commands_token_offset,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_indirect_sequence_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-maxIndirectSequenceCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_indirect_sequence_count,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
max_inline_uniform_block_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html#limits-maxInlineUniformBlockSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_inline_uniform_block_size,
|
|
ffi_members: [properties_inline_uniform_block_ext],
|
|
required: false,
|
|
},
|
|
max_instance_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxInstanceCount)
|
|
",
|
|
ty: u64,
|
|
ffi_name: max_instance_count,
|
|
ffi_members: [properties_acceleration_structure_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_interpolation_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxInterpolationOffset)
|
|
",
|
|
ty: f32,
|
|
ffi_name: max_interpolation_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_memory_allocation_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxMemoryAllocationCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_memory_allocation_count,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_memory_allocation_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-maxMemoryAllocationSize)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: max_memory_allocation_size,
|
|
ffi_members: [properties_vulkan11, properties_maintenance3],
|
|
required: false,
|
|
},
|
|
max_mesh_multiview_view_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshMultiviewViewCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_mesh_multiview_view_count,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_mesh_output_primitives => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshOutputPrimitives)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_mesh_output_primitives,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_mesh_output_vertices => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshOutputVertices)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_mesh_output_vertices,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_mesh_total_memory_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshTotalMemorySize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_mesh_total_memory_size,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_mesh_work_group_invocations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshWorkGroupInvocations)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_mesh_work_group_invocations,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_mesh_work_group_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxMeshWorkGroupSize)
|
|
",
|
|
ty: [u32; 3],
|
|
ffi_name: max_mesh_work_group_size,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_multi_draw_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMultiDrawPropertiesEXT.html#limits-maxMultiDrawCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_multi_draw_count,
|
|
ffi_members: [properties_multi_draw_ext],
|
|
required: false,
|
|
},
|
|
max_multiview_instance_index => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-maxMultiviewInstanceIndex)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_multiview_instance_index,
|
|
ffi_members: [properties_vulkan11, properties_multiview],
|
|
required: false,
|
|
},
|
|
max_multiview_view_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-maxMultiviewViewCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_multiview_view_count,
|
|
ffi_members: [properties_vulkan11, properties_multiview],
|
|
required: false,
|
|
},
|
|
max_per_set_descriptors => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-maxPerSetDescriptors)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_set_descriptors,
|
|
ffi_members: [properties_vulkan11, properties_maintenance3],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_acceleration_structures => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxPerStageDescriptorAccelerationStructures)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_acceleration_structures,
|
|
ffi_members: [properties_acceleration_structure_khr],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_inline_uniform_blocks => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html#limits-maxPerStageDescriptorInlineUniformBlocks)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_inline_uniform_blocks,
|
|
ffi_members: [properties_inline_uniform_block_ext],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_input_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorInputAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_input_attachments,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_sampled_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorSampledImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_sampled_images,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_samplers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_storage_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorStorageBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_storage_buffers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_storage_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorStorageImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_storage_images,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_uniform_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageDescriptorUniformBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_uniform_buffers,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_acceleration_structures => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxPerStageDescriptorUpdateAfterBindAccelerationStructures)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_acceleration_structures,
|
|
ffi_members: [properties_acceleration_structure_khr],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_inline_uniform_blocks => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html#limits-maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_inline_uniform_blocks,
|
|
ffi_members: [properties_inline_uniform_block_ext],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_input_attachments => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindInputAttachments)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_input_attachments,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_sampled_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindSampledImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_sampled_images,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_samplers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindSamplers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_samplers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_storage_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindStorageBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_storage_buffers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_storage_images => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindStorageImages)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_storage_images,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_descriptor_update_after_bind_uniform_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageDescriptorUpdateAfterBindUniformBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_descriptor_update_after_bind_uniform_buffers,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_per_stage_resources => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPerStageResources)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_resources,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_per_stage_update_after_bind_resources => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxPerStageUpdateAfterBindResources)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_per_stage_update_after_bind_resources,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_primitive_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-maxPrimitiveCount)
|
|
",
|
|
ty: u64,
|
|
ffi_name: max_primitive_count,
|
|
ffi_members: [properties_acceleration_structure_khr],
|
|
required: false,
|
|
},
|
|
max_push_constants_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxPushConstantsSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_push_constants_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_push_descriptors => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePushDescriptorPropertiesKHR.html#limits-maxPushDescriptors)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_push_descriptors,
|
|
ffi_members: [properties_push_descriptor_khr],
|
|
required: false,
|
|
},
|
|
max_ray_dispatch_invocation_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-maxRayDispatchInvocationCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_ray_dispatch_invocation_count,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr],
|
|
required: false,
|
|
},
|
|
max_ray_hit_attribute_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-maxRayHitAttributeSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_ray_hit_attribute_size,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr],
|
|
required: false,
|
|
},
|
|
max_ray_recursion_depth => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-maxRayRecursionDepth)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_ray_recursion_depth,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr],
|
|
required: false,
|
|
},
|
|
max_recursion_depth => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPropertiesNV.html#limits-maxRecursionDepth)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_recursion_depth,
|
|
ffi_members: [properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_sample_location_grid_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html#limits-maxSampleLocationGridSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: max_sample_location_grid_size,
|
|
ffi_members: [properties_sample_locations_ext],
|
|
required: false,
|
|
},
|
|
max_sample_mask_words => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxSampleMaskWords)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_sample_mask_words,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_sampler_allocation_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxSamplerAllocationCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_sampler_allocation_count,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_sampler_anisotropy => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxSamplerAnisotropy)
|
|
",
|
|
ty: f32,
|
|
ffi_name: max_sampler_anisotropy,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_sampler_lod_bias => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxSamplerLodBias)
|
|
",
|
|
ty: f32,
|
|
ffi_name: max_sampler_lod_bias,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_sgpr_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-maxSgprAllocation)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_sgpr_allocation,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
max_shader_group_stride => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-maxShaderGroupStride)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_shader_group_stride,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_storage_buffer_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxStorageBufferRange)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_storage_buffer_range,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_subgroup_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.html#limits-maxSubgroupSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_subgroup_size,
|
|
ffi_members: [properties_subgroup_size_control_ext],
|
|
required: false,
|
|
},
|
|
max_subpass_shading_workgroup_size_aspect_ratio => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.html#limits-maxSubpassShadingWorkgroupSizeAspectRatio)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_subpass_shading_workgroup_size_aspect_ratio,
|
|
ffi_members: [properties_subpass_shading_huawei],
|
|
required: false,
|
|
},
|
|
max_subsampled_array_layers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.html#limits-maxSubsampledArrayLayers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_subsampled_array_layers,
|
|
ffi_members: [properties_fragment_density_map2_ext],
|
|
required: false,
|
|
},
|
|
max_task_output_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxTaskOutputCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_task_output_count,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_task_total_memory_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxTaskTotalMemorySize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_task_total_memory_size,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_task_work_group_invocations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxTaskWorkGroupInvocations)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_task_work_group_invocations,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_task_work_group_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-maxTaskWorkGroupSize)
|
|
",
|
|
ty: [u32; 3],
|
|
ffi_name: max_task_work_group_size,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
max_tessellation_control_per_patch_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationControlPerPatchOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_control_per_patch_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_control_per_vertex_input_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationControlPerVertexInputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_control_per_vertex_input_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_control_per_vertex_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationControlPerVertexOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_control_per_vertex_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_control_total_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationControlTotalOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_control_total_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_evaluation_input_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationEvaluationInputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_evaluation_input_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_evaluation_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationEvaluationOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_evaluation_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_generation_level => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationGenerationLevel)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_generation_level,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_tessellation_patch_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTessellationPatchSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_tessellation_patch_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_texel_buffer_elements => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTexelBufferElements)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_texel_buffer_elements,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_texel_gather_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTexelGatherOffset)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_texel_gather_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_texel_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxTexelOffset)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_texel_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_timeline_semaphore_value_difference => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxTimelineSemaphoreValueDifference)
|
|
",
|
|
ty: u64,
|
|
ffi_name: max_timeline_semaphore_value_difference,
|
|
ffi_members: [properties_vulkan12, properties_timeline_semaphore],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_buffer_data_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackBufferDataSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_transform_feedback_buffer_data_size,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_buffer_data_stride => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackBufferDataStride)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_transform_feedback_buffer_data_stride,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_buffer_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackBufferSize)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: max_transform_feedback_buffer_size,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_buffers => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackBuffers)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_transform_feedback_buffers,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_stream_data_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackStreamDataSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_transform_feedback_stream_data_size,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_transform_feedback_streams => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-maxTransformFeedbackStreams)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_transform_feedback_streams,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
max_triangle_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPropertiesNV.html#limits-maxTriangleCount)
|
|
",
|
|
ty: u64,
|
|
ffi_name: max_triangle_count,
|
|
ffi_members: [properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
max_uniform_buffer_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxUniformBufferRange)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_uniform_buffer_range,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_update_after_bind_descriptors_in_all_pools => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-maxUpdateAfterBindDescriptorsInAllPools)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_update_after_bind_descriptors_in_all_pools,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
max_vertex_attrib_divisor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.html#limits-maxVertexAttribDivisor)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_attrib_divisor,
|
|
ffi_members: [properties_vertex_attribute_divisor_ext],
|
|
required: false,
|
|
},
|
|
max_vertex_input_attribute_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxVertexInputAttributeOffset)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_input_attribute_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_vertex_input_attributes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxVertexInputAttributes)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_input_attributes,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_vertex_input_binding_stride => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxVertexInputBindingStride)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_input_binding_stride,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_vertex_input_bindings => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxVertexInputBindings)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_input_bindings,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_vertex_output_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxVertexOutputComponents)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vertex_output_components,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_vgpr_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-maxVgprAllocation)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_vgpr_allocation,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
max_viewport_dimensions => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxViewportDimensions)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: max_viewport_dimensions,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
max_viewports => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-maxViewports)
|
|
",
|
|
ty: u32,
|
|
ffi_name: max_viewports,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
mesh_output_per_primitive_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-meshOutputPerPrimitiveGranularity)
|
|
",
|
|
ty: u32,
|
|
ffi_name: mesh_output_per_primitive_granularity,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
mesh_output_per_vertex_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html#limits-meshOutputPerVertexGranularity)
|
|
",
|
|
ty: u32,
|
|
ffi_name: mesh_output_per_vertex_granularity,
|
|
ffi_members: [properties_mesh_shader_nv],
|
|
required: false,
|
|
},
|
|
min_acceleration_structure_scratch_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceAccelerationStructurePropertiesKHR.html#limits-minAccelerationStructureScratchOffsetAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_acceleration_structure_scratch_offset_alignment,
|
|
ffi_members: [properties_acceleration_structure_khr],
|
|
required: false,
|
|
},
|
|
min_fragment_density_texel_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMapPropertiesEXT.html#limits-minFragmentDensityTexelSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: min_fragment_density_texel_size,
|
|
ffi_members: [properties_fragment_density_map_ext],
|
|
required: false,
|
|
},
|
|
min_fragment_shading_rate_attachment_texel_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-minFragmentShadingRateAttachmentTexelSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: min_fragment_shading_rate_attachment_texel_size,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
min_imported_host_pointer_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceExternalMemoryHostPropertiesEXT.html#limits-minImportedHostPointerAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: min_imported_host_pointer_alignment,
|
|
ffi_members: [properties_external_memory_host_ext],
|
|
required: false,
|
|
},
|
|
min_indirect_commands_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-minIndirectCommandsBufferOffsetAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_indirect_commands_buffer_offset_alignment,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
min_interpolation_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minInterpolationOffset)
|
|
",
|
|
ty: f32,
|
|
ffi_name: min_interpolation_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_memory_map_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minMemoryMapAlignment)
|
|
",
|
|
ty: usize,
|
|
ffi_name: min_memory_map_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_sequences_count_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-minSequencesCountBufferOffsetAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_sequences_count_buffer_offset_alignment,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
min_sequences_index_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html#limits-minSequencesIndexBufferOffsetAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_sequences_index_buffer_offset_alignment,
|
|
ffi_members: [properties_device_generated_commands_nv],
|
|
required: false,
|
|
},
|
|
min_sgpr_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-minSgprAllocation)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_sgpr_allocation,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
min_storage_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minStorageBufferOffsetAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: min_storage_buffer_offset_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_subgroup_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.html#limits-minSubgroupSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_subgroup_size,
|
|
ffi_members: [properties_subgroup_size_control_ext],
|
|
required: false,
|
|
},
|
|
min_texel_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minTexelBufferOffsetAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: min_texel_buffer_offset_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_texel_gather_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minTexelGatherOffset)
|
|
",
|
|
ty: i32,
|
|
ffi_name: min_texel_gather_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_texel_offset => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minTexelOffset)
|
|
",
|
|
ty: i32,
|
|
ffi_name: min_texel_offset,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_uniform_buffer_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-minUniformBufferOffsetAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: min_uniform_buffer_offset_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
min_vertex_input_binding_stride_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePortabilitySubsetPropertiesKHR.html#limits-minVertexInputBindingStrideAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_vertex_input_binding_stride_alignment,
|
|
ffi_members: [properties_portability_subset_khr],
|
|
required: false,
|
|
},
|
|
min_vgpr_allocation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-minVgprAllocation)
|
|
",
|
|
ty: u32,
|
|
ffi_name: min_vgpr_allocation,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
mipmap_precision_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-mipmapPrecisionBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: mipmap_precision_bits,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
non_coherent_atom_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-nonCoherentAtomSize)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: non_coherent_atom_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
optimal_buffer_copy_offset_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-optimalBufferCopyOffsetAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: optimal_buffer_copy_offset_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
optimal_buffer_copy_row_pitch_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-optimalBufferCopyRowPitchAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: optimal_buffer_copy_row_pitch_alignment,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
pci_bus => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html#limits-pciBus)
|
|
",
|
|
ty: u32,
|
|
ffi_name: pci_bus,
|
|
ffi_members: [properties_pci_bus_info_ext],
|
|
required: false,
|
|
},
|
|
pci_device => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html#limits-pciDevice)
|
|
",
|
|
ty: u32,
|
|
ffi_name: pci_device,
|
|
ffi_members: [properties_pci_bus_info_ext],
|
|
required: false,
|
|
},
|
|
pci_domain => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html#limits-pciDomain)
|
|
",
|
|
ty: u32,
|
|
ffi_name: pci_domain,
|
|
ffi_members: [properties_pci_bus_info_ext],
|
|
required: false,
|
|
},
|
|
pci_function => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html#limits-pciFunction)
|
|
",
|
|
ty: u32,
|
|
ffi_name: pci_function,
|
|
ffi_members: [properties_pci_bus_info_ext],
|
|
required: false,
|
|
},
|
|
per_view_position_all_components => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.html#limits-perViewPositionAllComponents)
|
|
",
|
|
ty: bool,
|
|
ffi_name: per_view_position_all_components,
|
|
ffi_members: [properties_multiview_per_view_attributes_nvx],
|
|
required: false,
|
|
},
|
|
pipeline_cache_uuid => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-pipelineCacheUUID)
|
|
",
|
|
ty: [u8; 16],
|
|
ffi_name: pipeline_cache_uuid,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
point_clipping_behavior => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-pointClippingBehavior)
|
|
",
|
|
ty: crate::device::physical::PointClippingBehavior,
|
|
ffi_name: point_clipping_behavior,
|
|
ffi_members: [properties_vulkan11, properties_point_clipping],
|
|
required: false,
|
|
},
|
|
point_size_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-pointSizeGranularity)
|
|
",
|
|
ty: f32,
|
|
ffi_name: point_size_granularity,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
point_size_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-pointSizeRange)
|
|
",
|
|
ty: [f32; 2],
|
|
ffi_name: point_size_range,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
primary_major => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-primaryMajor)
|
|
",
|
|
ty: i64,
|
|
ffi_name: primary_major,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
primary_minor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-primaryMinor)
|
|
",
|
|
ty: i64,
|
|
ffi_name: primary_minor,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
primitive_fragment_shading_rate_with_multiple_viewports => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentShadingRatePropertiesKHR.html#limits-primitiveFragmentShadingRateWithMultipleViewports)
|
|
",
|
|
ty: bool,
|
|
ffi_name: primitive_fragment_shading_rate_with_multiple_viewports,
|
|
ffi_members: [properties_fragment_shading_rate_khr],
|
|
required: false,
|
|
},
|
|
primitive_overestimation_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-primitiveOverestimationSize)
|
|
",
|
|
ty: f32,
|
|
ffi_name: primitive_overestimation_size,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
primitive_underestimation => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html#limits-primitiveUnderestimation)
|
|
",
|
|
ty: bool,
|
|
ffi_name: primitive_underestimation,
|
|
ffi_members: [properties_conservative_rasterization_ext],
|
|
required: false,
|
|
},
|
|
protected_no_fault => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-protectedNoFault)
|
|
",
|
|
ty: bool,
|
|
ffi_name: protected_no_fault,
|
|
ffi_members: [properties_vulkan11, properties_protected_memory],
|
|
required: false,
|
|
},
|
|
provoking_vertex_mode_per_pipeline => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProvokingVertexPropertiesEXT.html#limits-provokingVertexModePerPipeline)
|
|
",
|
|
ty: bool,
|
|
ffi_name: provoking_vertex_mode_per_pipeline,
|
|
ffi_members: [properties_provoking_vertex_ext],
|
|
required: false,
|
|
},
|
|
quad_divergent_implicit_lod => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-quadDivergentImplicitLod)
|
|
",
|
|
ty: bool,
|
|
ffi_name: quad_divergent_implicit_lod,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
quad_operations_in_all_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupProperties.html#limits-quadOperationsInAllStages)
|
|
",
|
|
ty: bool,
|
|
ffi_name: quad_operations_in_all_stages,
|
|
ffi_members: [properties_subgroup],
|
|
required: false,
|
|
},
|
|
render_major => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-renderMajor)
|
|
",
|
|
ty: i64,
|
|
ffi_name: render_major,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
render_minor => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceDrmPropertiesEXT.html#limits-renderMinor)
|
|
",
|
|
ty: i64,
|
|
ffi_name: render_minor,
|
|
ffi_members: [properties_drm_ext],
|
|
required: false,
|
|
},
|
|
required_subgroup_size_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.html#limits-requiredSubgroupSizeStages)
|
|
",
|
|
ty: crate::pipeline::shader::ShaderStages,
|
|
ffi_name: required_subgroup_size_stages,
|
|
ffi_members: [properties_subgroup_size_control_ext],
|
|
required: false,
|
|
},
|
|
residency_aligned_mip_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSparseProperties.html#limits-residencyAlignedMipSize)
|
|
",
|
|
ty: bool,
|
|
ffi_name: residency_aligned_mip_size,
|
|
ffi_members: [properties_vulkan10.properties.sparse_properties],
|
|
required: true,
|
|
},
|
|
residency_non_resident_strict => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSparseProperties.html#limits-residencyNonResidentStrict)
|
|
",
|
|
ty: bool,
|
|
ffi_name: residency_non_resident_strict,
|
|
ffi_members: [properties_vulkan10.properties.sparse_properties],
|
|
required: true,
|
|
},
|
|
residency_standard2_d_block_shape => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSparseProperties.html#limits-residencyStandard2DBlockShape)
|
|
",
|
|
ty: bool,
|
|
ffi_name: residency_standard2_d_block_shape,
|
|
ffi_members: [properties_vulkan10.properties.sparse_properties],
|
|
required: true,
|
|
},
|
|
residency_standard2_d_multisample_block_shape => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSparseProperties.html#limits-residencyStandard2DMultisampleBlockShape)
|
|
",
|
|
ty: bool,
|
|
ffi_name: residency_standard2_d_multisample_block_shape,
|
|
ffi_members: [properties_vulkan10.properties.sparse_properties],
|
|
required: true,
|
|
},
|
|
residency_standard3_d_block_shape => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSparseProperties.html#limits-residencyStandard3DBlockShape)
|
|
",
|
|
ty: bool,
|
|
ffi_name: residency_standard3_d_block_shape,
|
|
ffi_members: [properties_vulkan10.properties.sparse_properties],
|
|
required: true,
|
|
},
|
|
robust_buffer_access_update_after_bind => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-robustBufferAccessUpdateAfterBind)
|
|
",
|
|
ty: bool,
|
|
ffi_name: robust_buffer_access_update_after_bind,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
robust_storage_buffer_access_size_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRobustness2PropertiesEXT.html#limits-robustStorageBufferAccessSizeAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: robust_storage_buffer_access_size_alignment,
|
|
ffi_members: [properties_robustness2_ext],
|
|
required: false,
|
|
},
|
|
robust_uniform_buffer_access_size_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRobustness2PropertiesEXT.html#limits-robustUniformBufferAccessSizeAlignment)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: robust_uniform_buffer_access_size_alignment,
|
|
ffi_members: [properties_robustness2_ext],
|
|
required: false,
|
|
},
|
|
rounding_mode_independence => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-roundingModeIndependence)
|
|
",
|
|
ty: crate::device::physical::ShaderFloatControlsIndependence,
|
|
ffi_name: rounding_mode_independence,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
sample_location_coordinate_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html#limits-sampleLocationCoordinateRange)
|
|
",
|
|
ty: [f32; 2],
|
|
ffi_name: sample_location_coordinate_range,
|
|
ffi_members: [properties_sample_locations_ext],
|
|
required: false,
|
|
},
|
|
sample_location_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html#limits-sampleLocationSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: sample_location_sample_counts,
|
|
ffi_members: [properties_sample_locations_ext],
|
|
required: false,
|
|
},
|
|
sample_location_sub_pixel_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html#limits-sampleLocationSubPixelBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sample_location_sub_pixel_bits,
|
|
ffi_members: [properties_sample_locations_ext],
|
|
required: false,
|
|
},
|
|
sampled_image_color_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-sampledImageColorSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: sampled_image_color_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sampled_image_depth_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-sampledImageDepthSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: sampled_image_depth_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sampled_image_integer_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-sampledImageIntegerSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: sampled_image_integer_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sampled_image_stencil_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-sampledImageStencilSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: sampled_image_stencil_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sgpr_allocation_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-sgprAllocationGranularity)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sgpr_allocation_granularity,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
sgprs_per_simd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-sgprsPerSimd)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sgprs_per_simd,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
shader_arrays_per_engine_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-shaderArraysPerEngineCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_arrays_per_engine_count,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
shader_core_features => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCoreProperties2AMD.html#limits-shaderCoreFeatures)
|
|
",
|
|
ty: crate::device::physical::ShaderCoreProperties,
|
|
ffi_name: shader_core_features,
|
|
ffi_members: [properties_shader_core2_amd],
|
|
required: false,
|
|
},
|
|
shader_denorm_flush_to_zero_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormFlushToZeroFloat16)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_flush_to_zero_float16,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_denorm_flush_to_zero_float32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormFlushToZeroFloat32)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_flush_to_zero_float32,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_denorm_flush_to_zero_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormFlushToZeroFloat64)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_flush_to_zero_float64,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_denorm_preserve_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormPreserveFloat16)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_preserve_float16,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_denorm_preserve_float32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormPreserveFloat32)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_preserve_float32,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_denorm_preserve_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderDenormPreserveFloat64)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_denorm_preserve_float64,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_engine_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-shaderEngineCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_engine_count,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
shader_group_base_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-shaderGroupBaseAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_group_base_alignment,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
shader_group_handle_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-shaderGroupHandleAlignment)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_group_handle_alignment,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr],
|
|
required: false,
|
|
},
|
|
shader_group_handle_capture_replay_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-shaderGroupHandleCaptureReplaySize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_group_handle_capture_replay_size,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr],
|
|
required: false,
|
|
},
|
|
shader_group_handle_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceRayTracingPipelinePropertiesKHR.html#limits-shaderGroupHandleSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_group_handle_size,
|
|
ffi_members: [properties_ray_tracing_pipeline_khr, properties_ray_tracing_nv],
|
|
required: false,
|
|
},
|
|
shader_input_attachment_array_non_uniform_indexing_native => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderInputAttachmentArrayNonUniformIndexingNative)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_input_attachment_array_non_uniform_indexing_native,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rte_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTEFloat16)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rte_float16,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rte_float32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTEFloat32)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rte_float32,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rte_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTEFloat64)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rte_float64,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rtz_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTZFloat16)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rtz_float16,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rtz_float32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTZFloat32)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rtz_float32,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_rounding_mode_rtz_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderRoundingModeRTZFloat64)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_rounding_mode_rtz_float64,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_sampled_image_array_non_uniform_indexing_native => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderSampledImageArrayNonUniformIndexingNative)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_sampled_image_array_non_uniform_indexing_native,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
shader_signed_zero_inf_nan_preserve_float16 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderSignedZeroInfNanPreserveFloat16)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_signed_zero_inf_nan_preserve_float16,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_signed_zero_inf_nan_preserve_float32 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderSignedZeroInfNanPreserveFloat32)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_signed_zero_inf_nan_preserve_float32,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_signed_zero_inf_nan_preserve_float64 => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderSignedZeroInfNanPreserveFloat64)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_signed_zero_inf_nan_preserve_float64,
|
|
ffi_members: [properties_vulkan12, properties_float_controls],
|
|
required: false,
|
|
},
|
|
shader_sm_count => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.html#limits-shaderSMCount)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_sm_count,
|
|
ffi_members: [properties_shader_sm_builtins_nv],
|
|
required: false,
|
|
},
|
|
shader_storage_buffer_array_non_uniform_indexing_native => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderStorageBufferArrayNonUniformIndexingNative)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_storage_buffer_array_non_uniform_indexing_native,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
shader_storage_image_array_non_uniform_indexing_native => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderStorageImageArrayNonUniformIndexingNative)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_storage_image_array_non_uniform_indexing_native,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
shader_uniform_buffer_array_non_uniform_indexing_native => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-shaderUniformBufferArrayNonUniformIndexingNative)
|
|
",
|
|
ty: bool,
|
|
ffi_name: shader_uniform_buffer_array_non_uniform_indexing_native,
|
|
ffi_members: [properties_vulkan12, properties_descriptor_indexing],
|
|
required: false,
|
|
},
|
|
shader_warps_per_sm => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.html#limits-shaderWarpsPerSM)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shader_warps_per_sm,
|
|
ffi_members: [properties_shader_sm_builtins_nv],
|
|
required: false,
|
|
},
|
|
shading_rate_max_coarse_samples => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html#limits-shadingRateMaxCoarseSamples)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shading_rate_max_coarse_samples,
|
|
ffi_members: [properties_shading_rate_image_nv],
|
|
required: false,
|
|
},
|
|
shading_rate_palette_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html#limits-shadingRatePaletteSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: shading_rate_palette_size,
|
|
ffi_members: [properties_shading_rate_image_nv],
|
|
required: false,
|
|
},
|
|
shading_rate_texel_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html#limits-shadingRateTexelSize)
|
|
",
|
|
ty: [u32; 2],
|
|
ffi_name: shading_rate_texel_size,
|
|
ffi_members: [properties_shading_rate_image_nv],
|
|
required: false,
|
|
},
|
|
simd_per_compute_unit => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-simdPerComputeUnit)
|
|
",
|
|
ty: u32,
|
|
ffi_name: simd_per_compute_unit,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
sparse_address_space_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-sparseAddressSpaceSize)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: sparse_address_space_size,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
standard_sample_locations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-standardSampleLocations)
|
|
",
|
|
ty: bool,
|
|
ffi_name: standard_sample_locations,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
storage_image_sample_counts => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-storageImageSampleCounts)
|
|
",
|
|
ty: crate::image::SampleCounts,
|
|
ffi_name: storage_image_sample_counts,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
storage_texel_buffer_offset_alignment_bytes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT.html#limits-storageTexelBufferOffsetAlignmentBytes)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: storage_texel_buffer_offset_alignment_bytes,
|
|
ffi_members: [properties_texel_buffer_alignment_ext],
|
|
required: false,
|
|
},
|
|
storage_texel_buffer_offset_single_texel_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT.html#limits-storageTexelBufferOffsetSingleTexelAlignment)
|
|
",
|
|
ty: bool,
|
|
ffi_name: storage_texel_buffer_offset_single_texel_alignment,
|
|
ffi_members: [properties_texel_buffer_alignment_ext],
|
|
required: false,
|
|
},
|
|
strict_lines => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-strictLines)
|
|
",
|
|
ty: bool,
|
|
ffi_name: strict_lines,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sub_pixel_interpolation_offset_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-subPixelInterpolationOffsetBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sub_pixel_interpolation_offset_bits,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sub_pixel_precision_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-subPixelPrecisionBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sub_pixel_precision_bits,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
sub_texel_precision_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-subTexelPrecisionBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: sub_texel_precision_bits,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
subgroup_quad_operations_in_all_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-subgroupQuadOperationsInAllStages)
|
|
",
|
|
ty: bool,
|
|
ffi_name: subgroup_quad_operations_in_all_stages,
|
|
ffi_members: [properties_vulkan11],
|
|
required: false,
|
|
},
|
|
subgroup_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-subgroupSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: subgroup_size,
|
|
ffi_members: [properties_vulkan11, properties_subgroup],
|
|
required: false,
|
|
},
|
|
subgroup_supported_operations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-subgroupSupportedOperations)
|
|
",
|
|
ty: crate::device::physical::SubgroupFeatures,
|
|
ffi_name: subgroup_supported_operations,
|
|
ffi_members: [properties_vulkan11],
|
|
required: false,
|
|
},
|
|
subgroup_supported_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan11Properties.html#limits-subgroupSupportedStages)
|
|
",
|
|
ty: crate::pipeline::shader::ShaderStages,
|
|
ffi_name: subgroup_supported_stages,
|
|
ffi_members: [properties_vulkan11],
|
|
required: false,
|
|
},
|
|
subsampled_coarse_reconstruction_early_access => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.html#limits-subsampledCoarseReconstructionEarlyAccess)
|
|
",
|
|
ty: bool,
|
|
ffi_name: subsampled_coarse_reconstruction_early_access,
|
|
ffi_members: [properties_fragment_density_map2_ext],
|
|
required: false,
|
|
},
|
|
subsampled_loads => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.html#limits-subsampledLoads)
|
|
",
|
|
ty: bool,
|
|
ffi_name: subsampled_loads,
|
|
ffi_members: [properties_fragment_density_map2_ext],
|
|
required: false,
|
|
},
|
|
supported_depth_resolve_modes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-supportedDepthResolveModes)
|
|
",
|
|
ty: crate::render_pass::ResolveModes,
|
|
ffi_name: supported_depth_resolve_modes,
|
|
ffi_members: [properties_vulkan12, properties_depth_stencil_resolve],
|
|
required: false,
|
|
},
|
|
supported_operations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupProperties.html#limits-supportedOperations)
|
|
",
|
|
ty: crate::device::physical::SubgroupFeatures,
|
|
ffi_name: supported_operations,
|
|
ffi_members: [properties_subgroup],
|
|
required: false,
|
|
},
|
|
supported_stages => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSubgroupProperties.html#limits-supportedStages)
|
|
",
|
|
ty: crate::pipeline::shader::ShaderStages,
|
|
ffi_name: supported_stages,
|
|
ffi_members: [properties_subgroup],
|
|
required: false,
|
|
},
|
|
supported_stencil_resolve_modes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceVulkan12Properties.html#limits-supportedStencilResolveModes)
|
|
",
|
|
ty: crate::render_pass::ResolveModes,
|
|
ffi_name: supported_stencil_resolve_modes,
|
|
ffi_members: [properties_vulkan12, properties_depth_stencil_resolve],
|
|
required: false,
|
|
},
|
|
timestamp_compute_and_graphics => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-timestampComputeAndGraphics)
|
|
",
|
|
ty: bool,
|
|
ffi_name: timestamp_compute_and_graphics,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
timestamp_period => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-timestampPeriod)
|
|
",
|
|
ty: f32,
|
|
ffi_name: timestamp_period,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
transform_feedback_draw => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-transformFeedbackDraw)
|
|
",
|
|
ty: bool,
|
|
ffi_name: transform_feedback_draw,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
transform_feedback_preserves_triangle_fan_provoking_vertex => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProvokingVertexPropertiesEXT.html#limits-transformFeedbackPreservesTriangleFanProvokingVertex)
|
|
",
|
|
ty: bool,
|
|
ffi_name: transform_feedback_preserves_triangle_fan_provoking_vertex,
|
|
ffi_members: [properties_provoking_vertex_ext],
|
|
required: false,
|
|
},
|
|
transform_feedback_queries => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-transformFeedbackQueries)
|
|
",
|
|
ty: bool,
|
|
ffi_name: transform_feedback_queries,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
transform_feedback_rasterization_stream_select => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-transformFeedbackRasterizationStreamSelect)
|
|
",
|
|
ty: bool,
|
|
ffi_name: transform_feedback_rasterization_stream_select,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
transform_feedback_streams_lines_triangles => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html#limits-transformFeedbackStreamsLinesTriangles)
|
|
",
|
|
ty: bool,
|
|
ffi_name: transform_feedback_streams_lines_triangles,
|
|
ffi_members: [properties_transform_feedback_ext],
|
|
required: false,
|
|
},
|
|
uniform_texel_buffer_offset_alignment_bytes => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT.html#limits-uniformTexelBufferOffsetAlignmentBytes)
|
|
",
|
|
ty: crate::DeviceSize,
|
|
ffi_name: uniform_texel_buffer_offset_alignment_bytes,
|
|
ffi_members: [properties_texel_buffer_alignment_ext],
|
|
required: false,
|
|
},
|
|
uniform_texel_buffer_offset_single_texel_alignment => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT.html#limits-uniformTexelBufferOffsetSingleTexelAlignment)
|
|
",
|
|
ty: bool,
|
|
ffi_name: uniform_texel_buffer_offset_single_texel_alignment,
|
|
ffi_members: [properties_texel_buffer_alignment_ext],
|
|
required: false,
|
|
},
|
|
variable_sample_locations => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html#limits-variableSampleLocations)
|
|
",
|
|
ty: bool,
|
|
ffi_name: variable_sample_locations,
|
|
ffi_members: [properties_sample_locations_ext],
|
|
required: false,
|
|
},
|
|
vendor_id => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceProperties.html#limits-vendorID)
|
|
",
|
|
ty: u32,
|
|
ffi_name: vendor_id,
|
|
ffi_members: [properties_vulkan10.properties],
|
|
required: true,
|
|
},
|
|
vgpr_allocation_granularity => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-vgprAllocationGranularity)
|
|
",
|
|
ty: u32,
|
|
ffi_name: vgpr_allocation_granularity,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
vgprs_per_simd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-vgprsPerSimd)
|
|
",
|
|
ty: u32,
|
|
ffi_name: vgprs_per_simd,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
viewport_bounds_range => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-viewportBoundsRange)
|
|
",
|
|
ty: [f32; 2],
|
|
ffi_name: viewport_bounds_range,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
viewport_sub_pixel_bits => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceLimits.html#limits-viewportSubPixelBits)
|
|
",
|
|
ty: u32,
|
|
ffi_name: viewport_sub_pixel_bits,
|
|
ffi_members: [properties_vulkan10.properties.limits],
|
|
required: true,
|
|
},
|
|
wavefront_size => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-wavefrontSize)
|
|
",
|
|
ty: u32,
|
|
ffi_name: wavefront_size,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
wavefronts_per_simd => {
|
|
doc: "
|
|
- [Vulkan documentation](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPhysicalDeviceShaderCorePropertiesAMD.html#limits-wavefrontsPerSimd)
|
|
",
|
|
ty: u32,
|
|
ffi_name: wavefronts_per_simd,
|
|
ffi_members: [properties_shader_core_amd],
|
|
required: false,
|
|
},
|
|
}
|
|
|
|
crate::device::properties::properties_ffi! {
|
|
api_version,
|
|
device_extensions,
|
|
instance_extensions,
|
|
properties_vulkan11 => {
|
|
ty: PhysicalDeviceVulkan11Properties,
|
|
provided_by: [api_version >= crate::Version::V1_2],
|
|
conflicts: [],
|
|
},
|
|
properties_vulkan12 => {
|
|
ty: PhysicalDeviceVulkan12Properties,
|
|
provided_by: [api_version >= crate::Version::V1_2],
|
|
conflicts: [],
|
|
},
|
|
properties_id => {
|
|
ty: PhysicalDeviceIDProperties,
|
|
provided_by: [api_version >= crate::Version::V1_1, instance_extensions.khr_external_fence_capabilities, instance_extensions.khr_external_memory_capabilities, instance_extensions.khr_external_semaphore_capabilities],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_maintenance3 => {
|
|
ty: PhysicalDeviceMaintenance3Properties,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_maintenance3],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_multiview => {
|
|
ty: PhysicalDeviceMultiviewProperties,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_multiview],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_point_clipping => {
|
|
ty: PhysicalDevicePointClippingProperties,
|
|
provided_by: [api_version >= crate::Version::V1_1, device_extensions.khr_maintenance2],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_protected_memory => {
|
|
ty: PhysicalDeviceProtectedMemoryProperties,
|
|
provided_by: [api_version >= crate::Version::V1_1],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_subgroup => {
|
|
ty: PhysicalDeviceSubgroupProperties,
|
|
provided_by: [api_version >= crate::Version::V1_1],
|
|
conflicts: [properties_vulkan11],
|
|
},
|
|
properties_depth_stencil_resolve => {
|
|
ty: PhysicalDeviceDepthStencilResolveProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_depth_stencil_resolve],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_descriptor_indexing => {
|
|
ty: PhysicalDeviceDescriptorIndexingProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.ext_descriptor_indexing],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_driver => {
|
|
ty: PhysicalDeviceDriverProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_driver_properties],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_float_controls => {
|
|
ty: PhysicalDeviceFloatControlsProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_shader_float_controls],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_sampler_filter_minmax => {
|
|
ty: PhysicalDeviceSamplerFilterMinmaxProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.ext_sampler_filter_minmax],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_timeline_semaphore => {
|
|
ty: PhysicalDeviceTimelineSemaphoreProperties,
|
|
provided_by: [api_version >= crate::Version::V1_2, device_extensions.khr_timeline_semaphore],
|
|
conflicts: [properties_vulkan12],
|
|
},
|
|
properties_acceleration_structure_khr => {
|
|
ty: PhysicalDeviceAccelerationStructurePropertiesKHR,
|
|
provided_by: [device_extensions.khr_acceleration_structure],
|
|
conflicts: [],
|
|
},
|
|
properties_fragment_shading_rate_khr => {
|
|
ty: PhysicalDeviceFragmentShadingRatePropertiesKHR,
|
|
provided_by: [device_extensions.khr_fragment_shading_rate],
|
|
conflicts: [],
|
|
},
|
|
properties_performance_query_khr => {
|
|
ty: PhysicalDevicePerformanceQueryPropertiesKHR,
|
|
provided_by: [device_extensions.khr_performance_query],
|
|
conflicts: [],
|
|
},
|
|
properties_portability_subset_khr => {
|
|
ty: PhysicalDevicePortabilitySubsetPropertiesKHR,
|
|
provided_by: [device_extensions.khr_portability_subset],
|
|
conflicts: [],
|
|
},
|
|
properties_push_descriptor_khr => {
|
|
ty: PhysicalDevicePushDescriptorPropertiesKHR,
|
|
provided_by: [device_extensions.khr_push_descriptor],
|
|
conflicts: [],
|
|
},
|
|
properties_ray_tracing_pipeline_khr => {
|
|
ty: PhysicalDeviceRayTracingPipelinePropertiesKHR,
|
|
provided_by: [device_extensions.khr_ray_tracing_pipeline],
|
|
conflicts: [],
|
|
},
|
|
properties_blend_operation_advanced_ext => {
|
|
ty: PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
|
|
provided_by: [device_extensions.ext_blend_operation_advanced],
|
|
conflicts: [],
|
|
},
|
|
properties_conservative_rasterization_ext => {
|
|
ty: PhysicalDeviceConservativeRasterizationPropertiesEXT,
|
|
provided_by: [device_extensions.ext_conservative_rasterization],
|
|
conflicts: [],
|
|
},
|
|
properties_custom_border_color_ext => {
|
|
ty: PhysicalDeviceCustomBorderColorPropertiesEXT,
|
|
provided_by: [device_extensions.ext_custom_border_color],
|
|
conflicts: [],
|
|
},
|
|
properties_discard_rectangle_ext => {
|
|
ty: PhysicalDeviceDiscardRectanglePropertiesEXT,
|
|
provided_by: [device_extensions.ext_discard_rectangles],
|
|
conflicts: [],
|
|
},
|
|
properties_drm_ext => {
|
|
ty: PhysicalDeviceDrmPropertiesEXT,
|
|
provided_by: [device_extensions.ext_physical_device_drm],
|
|
conflicts: [],
|
|
},
|
|
properties_external_memory_host_ext => {
|
|
ty: PhysicalDeviceExternalMemoryHostPropertiesEXT,
|
|
provided_by: [device_extensions.ext_external_memory_host],
|
|
conflicts: [],
|
|
},
|
|
properties_fragment_density_map2_ext => {
|
|
ty: PhysicalDeviceFragmentDensityMap2PropertiesEXT,
|
|
provided_by: [device_extensions.ext_fragment_density_map2],
|
|
conflicts: [],
|
|
},
|
|
properties_fragment_density_map_ext => {
|
|
ty: PhysicalDeviceFragmentDensityMapPropertiesEXT,
|
|
provided_by: [device_extensions.ext_fragment_density_map],
|
|
conflicts: [],
|
|
},
|
|
properties_inline_uniform_block_ext => {
|
|
ty: PhysicalDeviceInlineUniformBlockPropertiesEXT,
|
|
provided_by: [device_extensions.ext_inline_uniform_block],
|
|
conflicts: [],
|
|
},
|
|
properties_line_rasterization_ext => {
|
|
ty: PhysicalDeviceLineRasterizationPropertiesEXT,
|
|
provided_by: [device_extensions.ext_line_rasterization],
|
|
conflicts: [],
|
|
},
|
|
properties_multi_draw_ext => {
|
|
ty: PhysicalDeviceMultiDrawPropertiesEXT,
|
|
provided_by: [device_extensions.ext_multi_draw],
|
|
conflicts: [],
|
|
},
|
|
properties_pci_bus_info_ext => {
|
|
ty: PhysicalDevicePCIBusInfoPropertiesEXT,
|
|
provided_by: [device_extensions.ext_pci_bus_info],
|
|
conflicts: [],
|
|
},
|
|
properties_provoking_vertex_ext => {
|
|
ty: PhysicalDeviceProvokingVertexPropertiesEXT,
|
|
provided_by: [device_extensions.ext_provoking_vertex],
|
|
conflicts: [],
|
|
},
|
|
properties_robustness2_ext => {
|
|
ty: PhysicalDeviceRobustness2PropertiesEXT,
|
|
provided_by: [device_extensions.ext_robustness2],
|
|
conflicts: [],
|
|
},
|
|
properties_sample_locations_ext => {
|
|
ty: PhysicalDeviceSampleLocationsPropertiesEXT,
|
|
provided_by: [device_extensions.ext_sample_locations],
|
|
conflicts: [],
|
|
},
|
|
properties_subgroup_size_control_ext => {
|
|
ty: PhysicalDeviceSubgroupSizeControlPropertiesEXT,
|
|
provided_by: [device_extensions.ext_subgroup_size_control],
|
|
conflicts: [],
|
|
},
|
|
properties_texel_buffer_alignment_ext => {
|
|
ty: PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
|
|
provided_by: [device_extensions.ext_texel_buffer_alignment],
|
|
conflicts: [],
|
|
},
|
|
properties_transform_feedback_ext => {
|
|
ty: PhysicalDeviceTransformFeedbackPropertiesEXT,
|
|
provided_by: [device_extensions.ext_transform_feedback],
|
|
conflicts: [],
|
|
},
|
|
properties_vertex_attribute_divisor_ext => {
|
|
ty: PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
|
|
provided_by: [device_extensions.ext_vertex_attribute_divisor],
|
|
conflicts: [],
|
|
},
|
|
properties_cooperative_matrix_nv => {
|
|
ty: PhysicalDeviceCooperativeMatrixPropertiesNV,
|
|
provided_by: [device_extensions.nv_cooperative_matrix],
|
|
conflicts: [],
|
|
},
|
|
properties_device_generated_commands_nv => {
|
|
ty: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
|
|
provided_by: [device_extensions.nv_device_generated_commands],
|
|
conflicts: [],
|
|
},
|
|
properties_fragment_shading_rate_enums_nv => {
|
|
ty: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV,
|
|
provided_by: [device_extensions.nv_fragment_shading_rate_enums],
|
|
conflicts: [],
|
|
},
|
|
properties_mesh_shader_nv => {
|
|
ty: PhysicalDeviceMeshShaderPropertiesNV,
|
|
provided_by: [device_extensions.nv_mesh_shader],
|
|
conflicts: [],
|
|
},
|
|
properties_multiview_per_view_attributes_nvx => {
|
|
ty: PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
|
|
provided_by: [device_extensions.nvx_multiview_per_view_attributes],
|
|
conflicts: [],
|
|
},
|
|
properties_ray_tracing_nv => {
|
|
ty: PhysicalDeviceRayTracingPropertiesNV,
|
|
provided_by: [device_extensions.nv_ray_tracing],
|
|
conflicts: [properties_ray_tracing_pipeline_khr, properties_acceleration_structure_khr],
|
|
},
|
|
properties_shader_core2_amd => {
|
|
ty: PhysicalDeviceShaderCoreProperties2AMD,
|
|
provided_by: [device_extensions.amd_shader_core_properties2],
|
|
conflicts: [],
|
|
},
|
|
properties_shader_core_amd => {
|
|
ty: PhysicalDeviceShaderCorePropertiesAMD,
|
|
provided_by: [device_extensions.amd_shader_core_properties],
|
|
conflicts: [],
|
|
},
|
|
properties_shader_sm_builtins_nv => {
|
|
ty: PhysicalDeviceShaderSMBuiltinsPropertiesNV,
|
|
provided_by: [device_extensions.nv_shader_sm_builtins],
|
|
conflicts: [],
|
|
},
|
|
properties_shading_rate_image_nv => {
|
|
ty: PhysicalDeviceShadingRateImagePropertiesNV,
|
|
provided_by: [device_extensions.nv_shading_rate_image],
|
|
conflicts: [],
|
|
},
|
|
properties_subpass_shading_huawei => {
|
|
ty: PhysicalDeviceSubpassShadingPropertiesHUAWEI,
|
|
provided_by: [device_extensions.huawei_subpass_shading],
|
|
conflicts: [],
|
|
},
|
|
}
|