C Specification
To query additional capabilities specific to image types, call:
| Warning | This functionality is deprecated by Vulkan Version 1.1. See Deprecated Functionality for more information. | 
// Provided by VK_VERSION_1_0
VkResult vkGetPhysicalDeviceImageFormatProperties(
    VkPhysicalDevice                            physicalDevice,
    VkFormat                                    format,
    VkImageType                                 type,
    VkImageTiling                               tiling,
    VkImageUsageFlags                           usage,
    VkImageCreateFlags                          flags,
    VkImageFormatProperties*                    pImageFormatProperties);Parameters
- 
physicalDeviceis the physical device from which to query the image capabilities.
- 
formatis a VkFormat value specifying the image format, corresponding to VkImageCreateInfo::format.
- 
typeis a VkImageType value specifying the image type, corresponding to VkImageCreateInfo::imageType.
- 
tilingis a VkImageTiling value specifying the image tiling, corresponding to VkImageCreateInfo::tiling.
- 
usageis a bitmask of VkImageUsageFlagBits specifying the intended usage of the image, corresponding to VkImageCreateInfo::usage.
- 
flagsis a bitmask of VkImageCreateFlagBits specifying additional parameters of the image, corresponding to VkImageCreateInfo::flags.
- 
pImageFormatPropertiesis a pointer to a VkImageFormatProperties structure in which capabilities are returned.
Description
The format, type, tiling, usage, and flags
parameters correspond to parameters that would be consumed by
vkCreateImage (as members of VkImageCreateInfo).
If format is not a supported image format, or if the combination of
format, type, tiling, usage, and flags is not
supported for images, then vkGetPhysicalDeviceImageFormatProperties
returns VK_ERROR_FORMAT_NOT_SUPPORTED.
The limitations on an image format that are reported by
vkGetPhysicalDeviceImageFormatProperties have the following property:
if usage1 and usage2 of type VkImageUsageFlags are such that
the bits set in usage1 are a subset of the bits set in usage2, and
flags1 and flags2 of type VkImageCreateFlags are such that
the bits set in flags1 are a subset of the bits set in flags2,
then the limitations for usage1 and flags1 must be no more strict
than the limitations for usage2 and flags2, for all values of
format, type, and tiling.
If the hostImageCopy feature is supported,
and:
- 
usageincludesVK_IMAGE_USAGE_SAMPLED_BIT, and
- 
flagsdoes not include any ofVK_IMAGE_CREATE_SPARSE_BINDING_BIT,VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, orVK_IMAGE_CREATE_SPARSE_ALIASED_BIT
Then the result of calls to vkGetPhysicalDeviceImageFormatProperties
with identical parameters except for the inclusion of
VK_IMAGE_USAGE_HOST_TRANSFER_BIT in usage must be identical.
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.