vkGetPhysicalDeviceImageFormatProperties(3) =========================================== Name ---- vkGetPhysicalDeviceImageFormatProperties - Lists physical device's image format capabilities. C Specification --------------- include::../protos/vkGetPhysicalDeviceImageFormatProperties.txt[] Parameters ---------- pname:physicalDevice:: A handle to the physical device upon which to perform the query. pname:format:: The format of the image. pname:type:: The type of the image. pname:tiling:: The tiling mode of the image. pname:usage:: The usage of the image. pname:flags:: Additional flags describing the image. pname:pImageFormatProperties:: A pointer to a structure in which the requested information is returned. Description ----------- fname:vkGetPhysicalDeviceImageFormatProperties queries the physical device specified in pnane:physicalDevice about its support for images as if they had been created using the remaining parameters to the command. These parameters, pname:format, pname:type, pname:tiling and pname:usage have the same meanings as they do in the slink:VkImageCreateInfo structure, the definition of which is: include::../structs/VkImageCreateInfo.txt[] In this call, pname:format specifies the format of the image and must be a member of the elink:VkFormat enumeration. pname:type specifies the type of image for which the format will be used. This is a member of the elink:VkImageType enumeration, the definition of which is: include::../enums/VkImageType.txt[] The pname:tiling parameter specifies the tiling layout for the image and must be one of ename:VK_IMAGE_TILING_LINEAR or ename:VK_IMAGE_TILING_OPTIMAL. The pname:usage parameter specifies the intended usage for the image and should be a bitwise combination of one or more members of the elink:VkImageUsageFlagBits enumeration, the definition of which is: include::../enums/VkImageUsageFlagBits.txt[] If the image format is supported for the specified combination of the pname:format, pname:type, pname:tiling, pname:usage, and pname:flags parameters, then fname:vkGetPhysicalDeviceImageFormatProperties places information about how such an image may be used in the instance of the slink:VkImageFormatProperties structure pointed to by pname:pImageFormatProperties. The definition of slink:VkImageFormatProperties is: include::../structs/VkImageFormatProperties.txt[] The pname:maxExtent member of the output structure contains the maximum dimensions of an image in the specified format. The pname:maxMipLevels and pname:maxArrayLayers contain the maximum number of mipmap levels and maximum number of layers in array forms of images, respectively. If array images are not supported for the specified format, then pname:maxArrayLayers will be zero. If multisampling is supported for the specified format, then pname:sampleCounts contains a bitwise combination of the supported sample counts using members of the elink:VkSampleCountFlagBits enumeration, the definition of which is: include::../enums/VkSampleCountFlagBits.txt[] Additional sample counts not listed in the elink:VkSampleCountFlagBits enumeration are reserved and their presence should not be used to imply higher sample counts than listed. If multisampling is not supported for the specified format, then pname:sampleCounts will contain zero. The pname:maxResourceSize member contains the maximum size in memory of any resource in this format. Note that it may not be possible to create a resource of the maximum supported extent and array layer count in every dimension that still fits within the maxium in-memory resource size. If the format is not supported in the specified configuration, then fname:vkGetPhysicalDeviceImageFormatProperties fills the slink:VkImageFormatProperties structure pointed to by pname:pImageFormatProperties with zeros. include::../validity/protos/vkGetPhysicalDeviceImageFormatProperties.txt[] See Also -------- flink:vkGetPhysicalDeviceProperties, flink:vkGetPhysicalDeviceFeatures include::footer.txt[]