1{ 2 "mandatory_features": 3 { 4 "VkPhysicalDeviceFeatures": 5 [ 6 { "features": ["shaderSampledImageArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 7 { "features": ["shaderStorageBufferArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] } 8 ], 9 "VkPhysicalDeviceVulkan11Features": 10 [ 11 { "features": ["multiview"], "requirements": ["ApiVersion(0, 1, 2, 0)"], "mandatory_variant": ["vulkan"]} 12 ], 13 "VkPhysicalDeviceVulkan12Features": 14 [ 15 { "features": ["subgroupBroadcastDynamicId"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 16 { "features": ["shaderSubgroupExtendedTypes"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 17 { "features": ["imagelessFramebuffer"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 18 { "features": ["uniformBufferStandardLayout"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 19 { "features": ["separateDepthStencilLayouts"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 20 { "features": ["hostQueryReset"], "requirements": ["ApiVersion(0, 1, 2, 0)"] }, 21 { "features": ["timelineSemaphore"], "requirements": ["ApiVersion(0, 1, 2, 0)"], "mandatory_variant": ["vulkan"] }, 22 { "features": ["shaderUniformTexelBufferArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 23 { "features": ["shaderStorageTexelBufferArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 24 { "features": ["shaderSampledImageArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 25 { "features": ["shaderStorageBufferArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 26 { "features": ["shaderUniformTexelBufferArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 27 { "features": ["descriptorBindingSampledImageUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 28 { "features": ["descriptorBindingStorageImageUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 29 { "features": ["descriptorBindingStorageBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 30 { "features": ["descriptorBindingUniformTexelBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 31 { "features": ["descriptorBindingStorageTexelBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 32 { "features": ["descriptorBindingUpdateUnusedWhilePending"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 33 { "features": ["descriptorBindingPartiallyBound"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 34 { "features": ["runtimeDescriptorArray"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceVulkan12Features.descriptorIndexing"] }, 35 { "features": ["shaderBufferInt64Atomics"], "requirements": ["ApiVersion(0, 1, 2, 0)", "physicalDeviceShaderAtomicInt64Features.shaderBufferInt64Atomics"] }, 36 { "features": ["drawIndirectCount"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_draw_indirect_count"] }, 37 { "features": ["samplerMirrorClampToEdge"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_sampler_mirror_clamp_to_edge"] }, 38 { "features": ["samplerFilterMinmax"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_EXT_sampler_filter_minmax"] }, 39 { "features": ["shaderOutputViewportIndex"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_EXT_shader_viewport_index_layer"] }, 40 { "features": ["shaderOutputLayer"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_EXT_shader_viewport_index_layer"] }, 41 { "features": ["shaderUniformTexelBufferArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 42 { "features": ["shaderStorageTexelBufferArrayDynamicIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 43 { "features": ["shaderSampledImageArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 44 { "features": ["shaderStorageBufferArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 45 { "features": ["shaderUniformTexelBufferArrayNonUniformIndexing"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 46 { "features": ["descriptorBindingSampledImageUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 47 { "features": ["descriptorBindingStorageImageUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 48 { "features": ["descriptorBindingStorageBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 49 { "features": ["descriptorBindingUniformTexelBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 50 { "features": ["descriptorBindingStorageTexelBufferUpdateAfterBind"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 51 { "features": ["descriptorBindingUpdateUnusedWhilePending"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 52 { "features": ["descriptorBindingPartiallyBound"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 53 { "features": ["runtimeDescriptorArray"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] }, 54 { "features": ["bufferDeviceAddress"], "requirements": ["ApiVersion(0, 1, 2, 0)", "VK_KHR_acceleration_structure"] } 55 ] 56 } 57}