VkDeviceCreateInfo(3)
C Specification
TheVkDeviceCreateInfo structure is defined as:
// Provided by VK_VERSION_1_0typedef struct VkDeviceCreateInfo { VkStructureType sType; const void* pNext; VkDeviceCreateFlags flags; uint32_t queueCreateInfoCount; const VkDeviceQueueCreateInfo* pQueueCreateInfos; // enabledLayerCount is legacy and ignored uint32_t enabledLayerCount; // ppEnabledLayerNames is legacy and ignored const char* const* ppEnabledLayerNames; uint32_t enabledExtensionCount; const char* const* ppEnabledExtensionNames; const VkPhysicalDeviceFeatures* pEnabledFeatures;} VkDeviceCreateInfo;Members
sTypeis aVkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending thisstructure.flagsis reserved for future use.queueCreateInfoCountis the unsigned integer size of thepQueueCreateInfosarray.Refer to theQueue Creation sectionbelow for further details.pQueueCreateInfosis a pointer to an array ofVkDeviceQueueCreateInfo structures describing the queues that arerequested to be created along with the logical device.Refer to theQueue Creation sectionbelow for further details.enabledLayerCountis legacy and ignored.SeeDevice Layers: Superseded via instance layers.ppEnabledLayerNamesis legacy and ignored.SeeDevice Layers: Superseded via instance layers.enabledExtensionCountis the number of device extensions toenable.ppEnabledExtensionNamesis a pointer to an array ofenabledExtensionCountnull-terminated UTF-8 strings containing thenames of extensions to enable for the created device.See theExtensions section for further details.pEnabledFeaturesisNULLor a pointer to aVkPhysicalDeviceFeatures structure containing boolean indicatorsof all the features to be enabled.Refer to theFeatures section for further details.This field is legacy.SeePhysical Device Queries: Superseded via version 2.
Description
VUID-VkDeviceCreateInfo-queueFamilyIndex-02802
The combination of the values in thequeueFamilyIndexandflagsmembers of each element ofpQueueCreateInfosmust beunique withinpQueueCreateInfosVUID-VkDeviceCreateInfo-pQueueCreateInfos-06755
If multiple elements ofpQueueCreateInfosshare the samequeueFamilyIndex, the sum of theirqueueCountmembersmustbe less than or equal to thequeueCountmember of theVkQueueFamilyPropertiesstructure, as returned byvkGetPhysicalDeviceQueueFamilyPropertiesin thepQueueFamilyProperties[queueFamilyIndex]VUID-VkDeviceCreateInfo-pQueueCreateInfos-06654
If multiple elements ofpQueueCreateInfosshare the samequeueFamilyIndex, then all of such elementsmust have the sameglobal priority level, whichcan be specified explicitly by theincluding aVkDeviceQueueGlobalPriorityCreateInfo structure in thepNextchain, or by the implicit default valueVUID-VkDeviceCreateInfo-pNext-00373
If thepNextchain includes aVkPhysicalDeviceFeatures2structure, thenpEnabledFeaturesmust beNULLVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-01840
IfVkPhysicalDeviceProperties::apiVersionadvertises Vulkan1.1 or later,ppEnabledExtensionNamesmust not containVK_AMD_negative_viewport_heightVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-00374
ppEnabledExtensionNamesmust not contain bothVK_KHR_maintenance1andVK_AMD_negative_viewport_heightVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-03328
ppEnabledExtensionNamesmust not contain bothVK_KHR_buffer_device_addressandVK_EXT_buffer_device_addressVUID-VkDeviceCreateInfo-pNext-04748
If thepNextchain includes aVkPhysicalDeviceVulkan12Features structure andVkPhysicalDeviceVulkan12Features::bufferDeviceAddressisVK_TRUE,ppEnabledExtensionNamesmust not containVK_EXT_buffer_device_addressVUID-VkDeviceCreateInfo-pNext-02829
If thepNextchain includes aVkPhysicalDeviceVulkan11Features structure, then itmust notinclude aVkPhysicalDevice16BitStorageFeatures,VkPhysicalDeviceMultiviewFeatures,VkPhysicalDeviceVariablePointersFeatures,VkPhysicalDeviceProtectedMemoryFeatures,VkPhysicalDeviceSamplerYcbcrConversionFeatures, orVkPhysicalDeviceShaderDrawParametersFeatures structureVUID-VkDeviceCreateInfo-pNext-02830
If thepNextchain includes aVkPhysicalDeviceVulkan12Features structure, then itmust notinclude aVkPhysicalDevice8BitStorageFeatures,VkPhysicalDeviceShaderAtomicInt64Features,VkPhysicalDeviceShaderFloat16Int8Features,VkPhysicalDeviceDescriptorIndexingFeatures,VkPhysicalDeviceScalarBlockLayoutFeatures,VkPhysicalDeviceImagelessFramebufferFeatures,VkPhysicalDeviceUniformBufferStandardLayoutFeatures,VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures,VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures,VkPhysicalDeviceHostQueryResetFeatures,VkPhysicalDeviceTimelineSemaphoreFeatures,VkPhysicalDeviceBufferDeviceAddressFeatures, orVkPhysicalDeviceVulkanMemoryModelFeatures structureVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-04476
IfppEnabledExtensionNamescontains"VK_KHR_shader_draw_parameters"and thepNextchain includes aVkPhysicalDeviceVulkan11Features structure, thenVkPhysicalDeviceVulkan11Features::shaderDrawParametersmustbeVK_TRUEVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-02831
IfppEnabledExtensionNamescontains"VK_KHR_draw_indirect_count"and thepNextchain includes aVkPhysicalDeviceVulkan12Features structure, thenVkPhysicalDeviceVulkan12Features::drawIndirectCountmust beVK_TRUEVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-02832
IfppEnabledExtensionNamescontains"VK_KHR_sampler_mirror_clamp_to_edge"and thepNextchainincludes aVkPhysicalDeviceVulkan12Features structure, thenVkPhysicalDeviceVulkan12Features::samplerMirrorClampToEdgemust beVK_TRUEVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-02833
IfppEnabledExtensionNamescontains"VK_EXT_descriptor_indexing"and thepNextchain includes aVkPhysicalDeviceVulkan12Features structure, thenVkPhysicalDeviceVulkan12Features::descriptorIndexingmustbeVK_TRUEVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-02834
IfppEnabledExtensionNamescontains"VK_EXT_sampler_filter_minmax"and thepNextchain includes aVkPhysicalDeviceVulkan12Features structure, thenVkPhysicalDeviceVulkan12Features::samplerFilterMinmaxmustbeVK_TRUEVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-02835
IfppEnabledExtensionNamescontains"VK_EXT_shader_viewport_index_layer"and thepNextchainincludes aVkPhysicalDeviceVulkan12Features structure, thenVkPhysicalDeviceVulkan12Features::shaderOutputViewportIndexandVkPhysicalDeviceVulkan12Features::shaderOutputLayermust both beVK_TRUEVUID-VkDeviceCreateInfo-pNext-06532
If thepNextchain includes aVkPhysicalDeviceVulkan13Features structure, then itmust notinclude aVkPhysicalDeviceDynamicRenderingFeatures,VkPhysicalDeviceImageRobustnessFeatures,VkPhysicalDeviceInlineUniformBlockFeatures,VkPhysicalDeviceMaintenance4Features,VkPhysicalDevicePipelineCreationCacheControlFeatures,VkPhysicalDevicePrivateDataFeatures,VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures,VkPhysicalDeviceShaderIntegerDotProductFeatures,VkPhysicalDeviceShaderTerminateInvocationFeatures,VkPhysicalDeviceSubgroupSizeControlFeatures,VkPhysicalDeviceSynchronization2Features,VkPhysicalDeviceTextureCompressionASTCHDRFeatures, orVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures structureVUID-VkDeviceCreateInfo-pNext-10360
If thepNextchain includes aVkPhysicalDeviceVulkan14Features structure, then itmust notinclude aVkPhysicalDeviceGlobalPriorityQueryFeatures,VkPhysicalDeviceShaderSubgroupRotateFeatures,VkPhysicalDeviceShaderFloatControls2Features,VkPhysicalDeviceShaderExpectAssumeFeatures,VkPhysicalDeviceLineRasterizationFeatures,VkPhysicalDeviceVertexAttributeDivisorFeatures,VkPhysicalDeviceIndexTypeUint8Features,VkPhysicalDeviceDynamicRenderingLocalReadFeatures,VkPhysicalDeviceMaintenance5Features,VkPhysicalDeviceMaintenance6Features,VkPhysicalDevicePipelineProtectedAccessFeatures,VkPhysicalDevicePipelineRobustnessFeatures, orVkPhysicalDeviceHostImageCopyFeatures structureVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-10858
IfppEnabledExtensionNamescontains"VK_KHR_push_descriptor"andthepNextchain includes aVkPhysicalDeviceVulkan14Featuresstructure, thenVkPhysicalDeviceVulkan14Features::pushDescriptormust beVK_TRUEVUID-VkDeviceCreateInfo-pProperties-04451
If theVK_KHR_portability_subsetextension is included inpPropertiesofvkEnumerateDeviceExtensionProperties,ppEnabledExtensionNamesmust include"VK_KHR_portability_subset"VUID-VkDeviceCreateInfo-shadingRateImage-04478
If theshadingRateImagefeature isenabled, thepipelineFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-shadingRateImage-04479
If theshadingRateImagefeature isenabled, theprimitiveFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-shadingRateImage-04480
If theshadingRateImagefeature isenabled, theattachmentFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-fragmentDensityMap-04481
If thefragmentDensityMapfeatureis enabled, thepipelineFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-fragmentDensityMap-04482
If thefragmentDensityMapfeatureis enabled, theprimitiveFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-fragmentDensityMap-04483
If thefragmentDensityMapfeatureis enabled, theattachmentFragmentShadingRatefeaturemust not be enabledVUID-VkDeviceCreateInfo-None-04896
If thesparseImageInt64Atomicsfeature is enabled,shaderImageInt64Atomicsmust be enabledVUID-VkDeviceCreateInfo-None-04897
If thesparseImageFloat32Atomicsfeature is enabled,shaderImageFloat32Atomicsmust be enabledVUID-VkDeviceCreateInfo-None-04898
If thesparseImageFloat32AtomicAddfeature is enabled,shaderImageFloat32AtomicAddmust be enabledVUID-VkDeviceCreateInfo-sparseImageFloat32AtomicMinMax-04975
If thesparseImageFloat32AtomicMinMaxfeature is enabled,shaderImageFloat32AtomicMinMaxmust be enabledVUID-VkDeviceCreateInfo-robustBufferAccess-10247
If therobustBufferAccessfeatureis enabled, androbustBufferAccessUpdateAfterBindisVK_FALSE, thendescriptorBindingUniformBufferUpdateAfterBind,descriptorBindingStorageBufferUpdateAfterBind,descriptorBindingUniformTexelBufferUpdateAfterBind, anddescriptorBindingStorageTexelBufferUpdateAfterBindmust not beenabledVUID-VkDeviceCreateInfo-None-08095
If thedescriptorBufferfeature isenabled,ppEnabledExtensionNamesmust not containVK_AMD_shader_fragment_maskVUID-VkDeviceCreateInfo-pNext-09396
If thepNextchain includes aVkDeviceQueueShaderCoreControlCreateInfoARM structure, then itmust not be included in thepNextchain of any of theVkDeviceQueueCreateInfo structures inpQueueCreateInfosVUID-VkDeviceCreateInfo-pNext-09397
If thepNextchain includes aVkDeviceQueueShaderCoreControlCreateInfoARM structure thenVkPhysicalDeviceSchedulingControlsPropertiesARM::schedulingControlsFlagsmust containVK_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_SHADER_CORE_COUNT_ARMVUID-VkDeviceCreateInfo-None-10778
If themaintenance9 feature is not supported,queueCreateInfoCountmust be greater than0VUID-VkDeviceCreateInfo-queueFamilyIndex-11831
If any element of pQueueCreateInfos specifies aqueueFamilyIndexthat supportsVK_QUEUE_DATA_GRAPH_BIT_ARM and thatqueueFamilyIndexenumerates an engine throughvkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM withtypeVK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOMorVK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM,aVkPhysicalDeviceDataGraphModelFeaturesQCOM structuremust beincluded inpNextwith dataGraphModel set toVK_TRUE
VUID-VkDeviceCreateInfo-sType-sType
sTypemust beVK_STRUCTURE_TYPE_DEVICE_CREATE_INFOVUID-VkDeviceCreateInfo-pNext-pNext
EachpNextmember of any structure (including this one) in thepNextchainmust be eitherNULLor a pointer to a valid instance ofVkDeviceDeviceMemoryReportCreateInfoEXT,VkDeviceDiagnosticsConfigCreateInfoNV,VkDeviceGroupDeviceCreateInfo,VkDeviceMemoryOverallocationCreateInfoAMD,VkDevicePipelineBinaryInternalCacheControlKHR,VkDevicePrivateDataCreateInfo,VkDeviceQueueShaderCoreControlCreateInfoARM,VkExternalComputeQueueDeviceCreateInfoNV,VkPhysicalDevice16BitStorageFeatures,VkPhysicalDevice4444FormatsFeaturesEXT,VkPhysicalDevice8BitStorageFeatures,VkPhysicalDeviceASTCDecodeFeaturesEXT,VkPhysicalDeviceAccelerationStructureFeaturesKHR,VkPhysicalDeviceAddressBindingReportFeaturesEXT,VkPhysicalDeviceAmigoProfilingFeaturesSEC,VkPhysicalDeviceAntiLagFeaturesAMD,VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT,VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT,VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT,VkPhysicalDeviceBorderColorSwizzleFeaturesEXT,VkPhysicalDeviceBufferDeviceAddressFeatures,VkPhysicalDeviceBufferDeviceAddressFeaturesEXT,VkPhysicalDeviceClusterAccelerationStructureFeaturesNV,VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI,VkPhysicalDeviceCoherentMemoryFeaturesAMD,VkPhysicalDeviceColorWriteEnableFeaturesEXT,VkPhysicalDeviceCommandBufferInheritanceFeaturesNV,VkPhysicalDeviceComputeOccupancyPriorityFeaturesNV,VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR,VkPhysicalDeviceConditionalRenderingFeaturesEXT,VkPhysicalDeviceCooperativeMatrix2FeaturesNV,VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM,VkPhysicalDeviceCooperativeMatrixFeaturesKHR,VkPhysicalDeviceCooperativeMatrixFeaturesNV,VkPhysicalDeviceCooperativeVectorFeaturesNV,VkPhysicalDeviceCopyMemoryIndirectFeaturesKHR,VkPhysicalDeviceCopyMemoryIndirectFeaturesNV,VkPhysicalDeviceCornerSampledImageFeaturesNV,VkPhysicalDeviceCoverageReductionModeFeaturesNV,VkPhysicalDeviceCubicClampFeaturesQCOM,VkPhysicalDeviceCubicWeightsFeaturesQCOM,VkPhysicalDeviceCudaKernelLaunchFeaturesNV,VkPhysicalDeviceCustomBorderColorFeaturesEXT,VkPhysicalDeviceCustomResolveFeaturesEXT,VkPhysicalDeviceDataGraphFeaturesARM,VkPhysicalDeviceDataGraphModelFeaturesQCOM,VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX,VkPhysicalDeviceDepthBiasControlFeaturesEXT,VkPhysicalDeviceDepthClampControlFeaturesEXT,VkPhysicalDeviceDepthClampZeroOneFeaturesKHR,VkPhysicalDeviceDepthClipControlFeaturesEXT,VkPhysicalDeviceDepthClipEnableFeaturesEXT,VkPhysicalDeviceDescriptorBufferFeaturesEXT,VkPhysicalDeviceDescriptorBufferTensorFeaturesARM,VkPhysicalDeviceDescriptorHeapFeaturesEXT,VkPhysicalDeviceDescriptorIndexingFeatures,VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV,VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE,VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV,VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT,VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV,VkPhysicalDeviceDeviceMemoryReportFeaturesEXT,VkPhysicalDeviceDiagnosticsConfigFeaturesNV,VkPhysicalDeviceDisplacementMicromapFeaturesNV,VkPhysicalDeviceDynamicRenderingFeatures,VkPhysicalDeviceDynamicRenderingLocalReadFeatures,VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT,VkPhysicalDeviceExclusiveScissorFeaturesNV,VkPhysicalDeviceExtendedDynamicState2FeaturesEXT,VkPhysicalDeviceExtendedDynamicState3FeaturesEXT,VkPhysicalDeviceExtendedDynamicStateFeaturesEXT,VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV,VkPhysicalDeviceExternalFormatResolveFeaturesANDROID,VkPhysicalDeviceExternalMemoryRDMAFeaturesNV,VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX,VkPhysicalDeviceFaultFeaturesEXT,VkPhysicalDeviceFeatures2,VkPhysicalDeviceFormatPackFeaturesARM,VkPhysicalDeviceFragmentDensityMap2FeaturesEXT,VkPhysicalDeviceFragmentDensityMapFeaturesEXT,VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE,VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT,VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR,VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT,VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV,VkPhysicalDeviceFragmentShadingRateFeaturesKHR,VkPhysicalDeviceFrameBoundaryFeaturesEXT,VkPhysicalDeviceGlobalPriorityQueryFeatures,VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT,VkPhysicalDeviceHdrVividFeaturesHUAWEI,VkPhysicalDeviceHostImageCopyFeatures,VkPhysicalDeviceHostQueryResetFeatures,VkPhysicalDeviceImage2DViewOf3DFeaturesEXT,VkPhysicalDeviceImageAlignmentControlFeaturesMESA,VkPhysicalDeviceImageCompressionControlFeaturesEXT,VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT,VkPhysicalDeviceImageProcessing2FeaturesQCOM,VkPhysicalDeviceImageProcessingFeaturesQCOM,VkPhysicalDeviceImageRobustnessFeatures,VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT,VkPhysicalDeviceImageViewMinLodFeaturesEXT,VkPhysicalDeviceImagelessFramebufferFeatures,VkPhysicalDeviceIndexTypeUint8Features,VkPhysicalDeviceInheritedViewportScissorFeaturesNV,VkPhysicalDeviceInlineUniformBlockFeatures,VkPhysicalDeviceInternallySynchronizedQueuesFeaturesKHR,VkPhysicalDeviceInvocationMaskFeaturesHUAWEI,VkPhysicalDeviceLegacyDitheringFeaturesEXT,VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT,VkPhysicalDeviceLineRasterizationFeatures,VkPhysicalDeviceLinearColorAttachmentFeaturesNV,VkPhysicalDeviceMaintenance10FeaturesKHR,VkPhysicalDeviceMaintenance4Features,VkPhysicalDeviceMaintenance5Features,VkPhysicalDeviceMaintenance6Features,VkPhysicalDeviceMaintenance7FeaturesKHR,VkPhysicalDeviceMaintenance8FeaturesKHR,VkPhysicalDeviceMaintenance9FeaturesKHR,VkPhysicalDeviceMapMemoryPlacedFeaturesEXT,VkPhysicalDeviceMemoryDecompressionFeaturesEXT,VkPhysicalDeviceMemoryPriorityFeaturesEXT,VkPhysicalDeviceMeshShaderFeaturesEXT,VkPhysicalDeviceMeshShaderFeaturesNV,VkPhysicalDeviceMultiDrawFeaturesEXT,VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT,VkPhysicalDeviceMultiviewFeatures,VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM,VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM,VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT,VkPhysicalDeviceNestedCommandBufferFeaturesEXT,VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT,VkPhysicalDeviceOpacityMicromapFeaturesEXT,VkPhysicalDeviceOpticalFlowFeaturesNV,VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT,VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV,VkPhysicalDevicePerStageDescriptorSetFeaturesNV,VkPhysicalDevicePerformanceCountersByRegionFeaturesARM,VkPhysicalDevicePerformanceQueryFeaturesKHR,VkPhysicalDevicePipelineBinaryFeaturesKHR,VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC,VkPhysicalDevicePipelineCreationCacheControlFeatures,VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR,VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT,VkPhysicalDevicePipelineOpacityMicromapFeaturesARM,VkPhysicalDevicePipelinePropertiesFeaturesEXT,VkPhysicalDevicePipelineProtectedAccessFeatures,VkPhysicalDevicePipelineRobustnessFeatures,VkPhysicalDevicePortabilitySubsetFeaturesKHR,VkPhysicalDevicePresentBarrierFeaturesNV,VkPhysicalDevicePresentId2FeaturesKHR,VkPhysicalDevicePresentIdFeaturesKHR,VkPhysicalDevicePresentMeteringFeaturesNV,VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR,VkPhysicalDevicePresentTimingFeaturesEXT,VkPhysicalDevicePresentWait2FeaturesKHR,VkPhysicalDevicePresentWaitFeaturesKHR,VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT,VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT,VkPhysicalDevicePrivateDataFeatures,VkPhysicalDeviceProtectedMemoryFeatures,VkPhysicalDeviceProvokingVertexFeaturesEXT,VkPhysicalDevicePushConstantBankFeaturesNV,VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT,VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT,VkPhysicalDeviceRawAccessChainsFeaturesNV,VkPhysicalDeviceRayQueryFeaturesKHR,VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT,VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV,VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV,VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR,VkPhysicalDeviceRayTracingMotionBlurFeaturesNV,VkPhysicalDeviceRayTracingPipelineFeaturesKHR,VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR,VkPhysicalDeviceRayTracingValidationFeaturesNV,VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG,VkPhysicalDeviceRenderPassStripedFeaturesARM,VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV,VkPhysicalDeviceRobustness2FeaturesKHR,VkPhysicalDeviceSamplerYcbcrConversionFeatures,VkPhysicalDeviceScalarBlockLayoutFeatures,VkPhysicalDeviceSchedulingControlsFeaturesARM,VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures,VkPhysicalDeviceShader64BitIndexingFeaturesEXT,VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV,VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT,VkPhysicalDeviceShaderAtomicFloatFeaturesEXT,VkPhysicalDeviceShaderAtomicInt64Features,VkPhysicalDeviceShaderBfloat16FeaturesKHR,VkPhysicalDeviceShaderClockFeaturesKHR,VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM,VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures,VkPhysicalDeviceShaderDrawParametersFeatures,VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD,VkPhysicalDeviceShaderEnqueueFeaturesAMDX,VkPhysicalDeviceShaderExpectAssumeFeatures,VkPhysicalDeviceShaderFloat16Int8Features,VkPhysicalDeviceShaderFloat8FeaturesEXT,VkPhysicalDeviceShaderFloatControls2Features,VkPhysicalDeviceShaderFmaFeaturesKHR,VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT,VkPhysicalDeviceShaderImageFootprintFeaturesNV,VkPhysicalDeviceShaderIntegerDotProductFeatures,VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,VkPhysicalDeviceShaderLongVectorFeaturesEXT,VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR,VkPhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE,VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT,VkPhysicalDeviceShaderObjectFeaturesEXT,VkPhysicalDeviceShaderQuadControlFeaturesKHR,VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR,VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT,VkPhysicalDeviceShaderSMBuiltinsFeaturesNV,VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures,VkPhysicalDeviceShaderSubgroupPartitionedFeaturesEXT,VkPhysicalDeviceShaderSubgroupRotateFeatures,VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR,VkPhysicalDeviceShaderTerminateInvocationFeatures,VkPhysicalDeviceShaderTileImageFeaturesEXT,VkPhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT,VkPhysicalDeviceShaderUntypedPointersFeaturesKHR,VkPhysicalDeviceShadingRateImageFeaturesNV,VkPhysicalDeviceSubgroupSizeControlFeatures,VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT,VkPhysicalDeviceSubpassShadingFeaturesHUAWEI,VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR,VkPhysicalDeviceSynchronization2Features,VkPhysicalDeviceTensorFeaturesARM,VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT,VkPhysicalDeviceTextureCompressionASTC3DFeaturesEXT,VkPhysicalDeviceTextureCompressionASTCHDRFeatures,VkPhysicalDeviceTileMemoryHeapFeaturesQCOM,VkPhysicalDeviceTilePropertiesFeaturesQCOM,VkPhysicalDeviceTileShadingFeaturesQCOM,VkPhysicalDeviceTimelineSemaphoreFeatures,VkPhysicalDeviceTransformFeedbackFeaturesEXT,VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR,VkPhysicalDeviceUniformBufferStandardLayoutFeatures,VkPhysicalDeviceVariablePointersFeatures,VkPhysicalDeviceVertexAttributeDivisorFeatures,VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT,VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT,VkPhysicalDeviceVideoDecodeVP9FeaturesKHR,VkPhysicalDeviceVideoEncodeAV1FeaturesKHR,VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR,VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR,VkPhysicalDeviceVideoEncodeRgbConversionFeaturesVALVE,VkPhysicalDeviceVideoMaintenance1FeaturesKHR,VkPhysicalDeviceVideoMaintenance2FeaturesKHR,VkPhysicalDeviceVulkan11Features,VkPhysicalDeviceVulkan12Features,VkPhysicalDeviceVulkan13Features,VkPhysicalDeviceVulkan14Features,VkPhysicalDeviceVulkanMemoryModelFeatures,VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR,VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT,VkPhysicalDeviceYcbcrDegammaFeaturesQCOM,VkPhysicalDeviceYcbcrImageArraysFeaturesEXT,VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT, orVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesVUID-VkDeviceCreateInfo-sType-unique
ThesTypevalue of each structure in thepNextchainmust be unique, with the exception of structures of typeVkDeviceDeviceMemoryReportCreateInfoEXT orVkDevicePrivateDataCreateInfoVUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter
IfqueueCreateInfoCountis not0,pQueueCreateInfosmust be a valid pointer to an array ofqueueCreateInfoCountvalidVkDeviceQueueCreateInfo structuresVUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter
IfenabledExtensionCountis not0,ppEnabledExtensionNamesmust be a valid pointer to an array ofenabledExtensionCountnull-terminated UTF-8 stringsVUID-VkDeviceCreateInfo-pEnabledFeatures-parameter
IfpEnabledFeaturesis notNULL,pEnabledFeaturesmust be a valid pointer to a validVkPhysicalDeviceFeatures structure
Document Notes
For more information, see theVulkan Specification.
This page is extracted from the Vulkan Specification.Fixes and changes should be made to the Specification, not directly.