Description

If pProperties is NULL, then the number of layer properties
available is returned in pPropertyCount.
Otherwise, pPropertyCountmust point to a variable set by the user to
the number of elements in the pProperties array, and on return the
variable is overwritten with the number of structures actually written to
pProperties.
If pPropertyCount is less than the number of layer properties
available, at most pPropertyCount structures will be written.
If pPropertyCount is smaller than the number of layers available,
VK_INCOMPLETE will be returned instead of VK_SUCCESS, to
indicate that not all the available layer properties were returned.

The list of available layers may change at any time due to actions outside
of the Vulkan implementation, so two calls to
vkEnumerateInstanceLayerProperties with the same parameters may
return different results, or retrieve different pPropertyCount values
or pProperties contents.
Once an instance has been created, the layers enabled for that instance will
continue to be enabled and valid for the lifetime of that instance, even if
some of them become unavailable for future instances.

Valid Usage (Implicit)

pPropertyCountmust be a valid pointer to a uint32_t value

If the value referenced by pPropertyCount is not 0, and pProperties is not NULL, pPropertiesmust be a valid pointer to an array of pPropertyCountVkLayerProperties structures