186 lines
9.2 KiB
JSON
186 lines
9.2 KiB
JSON
{
|
|
"$schema": "https://schema.khronos.org/vulkan/profiles-0.8-latest.json#",
|
|
"capabilities": {
|
|
"VP_LEARN_how_to_vulkan_2026_block": {
|
|
"extensions": {
|
|
"VK_KHR_global_priority": 1,
|
|
"VK_KHR_get_surface_capabilities2": 1,
|
|
"VK_KHR_swapchain": 70
|
|
},
|
|
"features": {
|
|
"VkPhysicalDeviceFeatures": {
|
|
"robustBufferAccess": true,
|
|
"fullDrawIndexUint32": true,
|
|
"imageCubeArray": true,
|
|
"independentBlend": true,
|
|
"sampleRateShading": true,
|
|
"drawIndirectFirstInstance": true,
|
|
"depthClamp": true,
|
|
"depthBiasClamp": true,
|
|
"samplerAnisotropy": true,
|
|
"occlusionQueryPrecise": true,
|
|
"fragmentStoresAndAtomics": true,
|
|
"shaderStorageImageExtendedFormats": true,
|
|
"shaderUniformBufferArrayDynamicIndexing": true,
|
|
"shaderSampledImageArrayDynamicIndexing": true,
|
|
"shaderStorageBufferArrayDynamicIndexing": true,
|
|
"shaderStorageImageArrayDynamicIndexing": true
|
|
},
|
|
"VkPhysicalDeviceVulkan11Features": {
|
|
"multiview": true,
|
|
"samplerYcbcrConversion": true
|
|
},
|
|
"VkPhysicalDeviceVulkan12Features": {
|
|
"uniformBufferStandardLayout": true,
|
|
"subgroupBroadcastDynamicId": true,
|
|
"imagelessFramebuffer": true,
|
|
"separateDepthStencilLayouts": true,
|
|
"hostQueryReset": true,
|
|
"timelineSemaphore": true,
|
|
"shaderSubgroupExtendedTypes": true,
|
|
"samplerMirrorClampToEdge": true,
|
|
"descriptorIndexing": true,
|
|
"shaderUniformTexelBufferArrayDynamicIndexing": true,
|
|
"shaderStorageTexelBufferArrayDynamicIndexing": true,
|
|
"shaderUniformBufferArrayNonUniformIndexing": true,
|
|
"shaderSampledImageArrayNonUniformIndexing": true,
|
|
"shaderStorageBufferArrayNonUniformIndexing": true,
|
|
"shaderStorageImageArrayNonUniformIndexing": true,
|
|
"shaderUniformTexelBufferArrayNonUniformIndexing": true,
|
|
"shaderStorageTexelBufferArrayNonUniformIndexing": true,
|
|
"descriptorBindingSampledImageUpdateAfterBind": true,
|
|
"descriptorBindingStorageImageUpdateAfterBind": true,
|
|
"descriptorBindingStorageBufferUpdateAfterBind": true,
|
|
"descriptorBindingUniformTexelBufferUpdateAfterBind": true,
|
|
"descriptorBindingStorageTexelBufferUpdateAfterBind": true,
|
|
"descriptorBindingUpdateUnusedWhilePending": true,
|
|
"descriptorBindingPartiallyBound": true,
|
|
"descriptorBindingVariableDescriptorCount": true,
|
|
"runtimeDescriptorArray": true,
|
|
"scalarBlockLayout": true,
|
|
"vulkanMemoryModel": true,
|
|
"vulkanMemoryModelDeviceScope": true,
|
|
"bufferDeviceAddress": true
|
|
},
|
|
"VkPhysicalDeviceVulkan13Features": {
|
|
"robustImageAccess": true,
|
|
"shaderTerminateInvocation": true,
|
|
"shaderZeroInitializeWorkgroupMemory": true,
|
|
"synchronization2": true,
|
|
"shaderIntegerDotProduct": true,
|
|
"maintenance4": true,
|
|
"pipelineCreationCacheControl": true,
|
|
"subgroupSizeControl": true,
|
|
"computeFullSubgroups": true,
|
|
"shaderDemoteToHelperInvocation": true,
|
|
"inlineUniformBlock": true,
|
|
"dynamicRendering": true,
|
|
"descriptorBindingInlineUniformBlockUpdateAfterBind": true
|
|
}
|
|
},
|
|
"properties": {
|
|
"VkPhysicalDeviceProperties": {
|
|
"limits": {
|
|
"maxImageDimension1D": 8192,
|
|
"maxImageDimension2D": 8192,
|
|
"maxImageDimensionCube": 8192,
|
|
"maxImageArrayLayers": 2048,
|
|
"maxUniformBufferRange": 65536,
|
|
"bufferImageGranularity": 4096,
|
|
"maxPerStageDescriptorSamplers": 64,
|
|
"maxPerStageDescriptorUniformBuffers": 15,
|
|
"maxPerStageDescriptorStorageBuffers": 30,
|
|
"maxPerStageDescriptorSampledImages": 200,
|
|
"maxPerStageDescriptorStorageImages": 16,
|
|
"maxPerStageResources": 200,
|
|
"maxDescriptorSetSamplers": 576,
|
|
"maxDescriptorSetUniformBuffers": 90,
|
|
"maxDescriptorSetStorageBuffers": 96,
|
|
"maxDescriptorSetSampledImages": 1800,
|
|
"maxDescriptorSetStorageImages": 144,
|
|
"maxFragmentCombinedOutputResources": 16,
|
|
"maxComputeWorkGroupInvocations": 256,
|
|
"maxComputeWorkGroupSize": [
|
|
256,
|
|
256,
|
|
64
|
|
],
|
|
"subTexelPrecisionBits": 8,
|
|
"mipmapPrecisionBits": 6,
|
|
"maxSamplerLodBias": 14,
|
|
"standardSampleLocations": true,
|
|
"maxColorAttachments": 7
|
|
}
|
|
},
|
|
"VkPhysicalDeviceVulkan11Properties": {
|
|
"maxMultiviewViewCount": 6,
|
|
"maxMultiviewInstanceIndex": 134217727,
|
|
"subgroupSize": 4,
|
|
"subgroupSupportedStages": [
|
|
"VK_SHADER_STAGE_COMPUTE_BIT",
|
|
"VK_SHADER_STAGE_FRAGMENT_BIT"
|
|
],
|
|
"subgroupSupportedOperations": [
|
|
"VK_SUBGROUP_FEATURE_BASIC_BIT",
|
|
"VK_SUBGROUP_FEATURE_VOTE_BIT",
|
|
"VK_SUBGROUP_FEATURE_ARITHMETIC_BIT",
|
|
"VK_SUBGROUP_FEATURE_BALLOT_BIT",
|
|
"VK_SUBGROUP_FEATURE_SHUFFLE_BIT",
|
|
"VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT",
|
|
"VK_SUBGROUP_FEATURE_QUAD_BIT"
|
|
]
|
|
},
|
|
"VkPhysicalDeviceVulkan12Properties": {
|
|
"maxTimelineSemaphoreValueDifference": 2147483647,
|
|
"shaderSignedZeroInfNanPreserveFloat16": true,
|
|
"shaderSignedZeroInfNanPreserveFloat32": true,
|
|
"maxPerStageDescriptorUpdateAfterBindSamplers": 500000,
|
|
"maxPerStageDescriptorUpdateAfterBindUniformBuffers": 12,
|
|
"maxPerStageDescriptorUpdateAfterBindStorageBuffers": 500000,
|
|
"maxPerStageDescriptorUpdateAfterBindSampledImages": 500000,
|
|
"maxPerStageDescriptorUpdateAfterBindStorageImages": 500000,
|
|
"maxPerStageDescriptorUpdateAfterBindInputAttachments": 7,
|
|
"maxPerStageUpdateAfterBindResources": 500000,
|
|
"maxDescriptorSetUpdateAfterBindSamplers": 500000,
|
|
"maxDescriptorSetUpdateAfterBindUniformBuffers": 72,
|
|
"maxDescriptorSetUpdateAfterBindUniformBuffersDynamic": 8,
|
|
"maxDescriptorSetUpdateAfterBindStorageBuffers": 500000,
|
|
"maxDescriptorSetUpdateAfterBindStorageBuffersDynamic": 4,
|
|
"maxDescriptorSetUpdateAfterBindSampledImages": 500000,
|
|
"maxDescriptorSetUpdateAfterBindStorageImages": 500000,
|
|
"maxDescriptorSetUpdateAfterBindInputAttachments": 7
|
|
},
|
|
"VkPhysicalDeviceVulkan13Properties": {
|
|
"maxBufferSize": 1073741824,
|
|
"maxInlineUniformBlockSize": 256,
|
|
"maxPerStageDescriptorInlineUniformBlocks": 4,
|
|
"maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks": 4,
|
|
"maxDescriptorSetInlineUniformBlocks": 4,
|
|
"maxDescriptorSetUpdateAfterBindInlineUniformBlocks": 4,
|
|
"maxInlineUniformTotalSize": 256
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"profiles": {
|
|
"VP_LEARN_how_to_vulkan_2026": {
|
|
"version": 1,
|
|
"api-version": "1.3.204",
|
|
"label": "How To Vulkan 2026",
|
|
"description": "Generated profile doing an union between profiles: VP_KHR_roadmap_2022",
|
|
"capabilities": [
|
|
"VP_LEARN_how_to_vulkan_2026_block"
|
|
]
|
|
}
|
|
},
|
|
"contributors": {},
|
|
"history": [
|
|
{
|
|
"revision": 1,
|
|
"date": "2026-05-25",
|
|
"author": "LunarG Profiles Merge Script",
|
|
"comment": "Generated profiles file"
|
|
}
|
|
]
|
|
}
|