C Specification
To query the extensions available to a given physical device, call:
// Provided by VK_VERSION_1_0
VkResult vkEnumerateDeviceExtensionProperties(
VkPhysicalDevice physicalDevice,
const char* pLayerName,
uint32_t* pPropertyCount,
VkExtensionProperties* pProperties);
Parameters
-
physicalDeviceis the physical device that will be queried. -
pLayerNameis eitherNULLor a pointer to a null-terminated UTF-8 string naming the layer to retrieve extensions from. -
pPropertyCountis a pointer to an integer related to the number of extension properties available or queried, and is treated in the same fashion as the vkEnumerateInstanceExtensionProperties::pPropertyCountparameter. -
pPropertiesis eitherNULLor a pointer to an array of VkExtensionProperties structures.
Description
When pLayerName parameter is NULL, only extensions provided by the
Vulkan implementation or by implicitly enabled layers are returned.
When pLayerName is the name of a layer, the device extensions provided
by that layer are returned.
Implementations must not advertise any pair of extensions that cannot be enabled together due to behavioral differences, or any extension that cannot be enabled against the advertised version.
If the VK_KHR_ray_tracing_pipeline extension is advertised as
supported by this query, the VK_KHR_pipeline_library extension
must also be supported.
Implementations claiming support for the Roadmap 2022
profile must advertise the VK_KHR_global_priority extension in
pProperties.
Implementations claiming support for the Roadmap 2024
profile must advertise the following extensions in pProperties:
|
Note
|
Due to platform details on Android,
|
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.