vkEnumerateInstanceLayerProperties
函数原型
VkResult vkEnumerateInstanceLayerProperties(
uint32_t* pPropertyCount,
VkLayerProperties* pProperties);
描述
查询可用的instance级layer属性。
参数
-
pPropertyCount: 可用实例layer数量的整数的指针。 -
pProperties: NULL或者VkLayerProperties结构体数组指针。- 当
pProperties为NULL时,pPropertyCount返回可用的layer数量; - 当
pProperties不为NULL时,写入pPropertyCount个layer信息到pProperties中。
- 当
返回值
VK_SUCCESS: 查询成功。VK_INCOMPLETE:pPropertyCount小于驱动有效的layer数量。- 其他 : 查询失败。
代码示例
uint32_t instance_layer_count;
VkLayerProperties *vk_props = NULL;
VkResult res;
do {
res = vkEnumerateInstanceLayerProperties(&instance_layer_count, NULL);
if (res) return res;
if (instance_layer_count == 0) {
return VK_SUCCESS;
}
vk_props = (VkLayerProperties *)realloc(vk_props, instance_layer_count * sizeof(VkLayerProperties));
res = vkEnumerateInstanceLayerProperties(&instance_layer_count, vk_props);
} while (res == VK_INCOMPLETE);