vkEnumeratePhysicalDevices
To retrieve a list of physical device objects representing the physical devices installed in the system, call:
VkResult vkEnumeratePhysicalDevices(
VkInstance instance,
uint32_t* pPhysicalDeviceCount,
VkPhysicalDevice* pPhysicalDevices);
instance
is a handle to a Vulkan instance previously created with vkCreateInstance.pPhysicalDeviceCount
is a pointer to an integer related to the number of physical devices available or queried, as described below.pPhysicalDevices
is eitherNULL
or a pointer to an array ofVkPhysicalDevice
handles.
If pPhysicalDevices
is NULL
, then the number of physical devices
available is returned in pPhysicalDeviceCount
.
Otherwise, pPhysicalDeviceCount
must point to a variable set by the
application to the number of elements in the pPhysicalDevices
array,
and on return the variable is overwritten with the number of handles
actually written to pPhysicalDevices
.
If pPhysicalDeviceCount
is less than the number of physical devices
available, at most pPhysicalDeviceCount
structures will be written,
and VK_INCOMPLETE
will be returned instead of VK_SUCCESS
, to
indicate that not all the available physical devices were returned.
Valid Usage (Implicit)
VUID-vkEnumeratePhysicalDevices-instance-parameter
instance
must be a valid VkInstance handle
VUID-vkEnumeratePhysicalDevices-pPhysicalDeviceCount-parameter
pPhysicalDeviceCount
must be a valid pointer to a uint32_t
value
VUID-vkEnumeratePhysicalDevices-pPhysicalDevices-parameter
If the value referenced by pPhysicalDeviceCount
is not 0
, and pPhysicalDevices
is not NULL
, pPhysicalDevices
must be a valid pointer to an array of pPhysicalDeviceCount
VkPhysicalDevice handles