VkPhysicalDeviceImageFormatInfo2
The VkPhysicalDeviceImageFormatInfo2 structure is defined as:
typedef struct VkPhysicalDeviceImageFormatInfo2 {
VkStructureType sType;
const void* pNext;
VkFormat format;
VkImageType type;
VkImageTiling tiling;
VkImageUsageFlags usage;
VkImageCreateFlags flags;
} VkPhysicalDeviceImageFormatInfo2;
or the equivalent
typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure. ThepNextchain ofVkPhysicalDeviceImageFormatInfo2is used to provide additional image parameters tovkGetPhysicalDeviceImageFormatProperties2.formatis a VkFormat value indicating the image format, corresponding to VkImageCreateInfo::format.typeis a VkImageType value indicating the image type, corresponding to VkImageCreateInfo::imageType.tilingis a VkImageTiling value indicating the image tiling, corresponding to VkImageCreateInfo::tiling.usageis a bitmask of VkImageUsageFlagBits indicating the intended usage of the image, corresponding to VkImageCreateInfo::usage.flagsis a bitmask of VkImageCreateFlagBits indicating additional parameters of the image, corresponding to VkImageCreateInfo::flags.
The members of VkPhysicalDeviceImageFormatInfo2 correspond to the
arguments to vkGetPhysicalDeviceImageFormatProperties, with
sType and pNext added for extensibility.
Valid Usage
VUID-VkPhysicalDeviceImageFormatInfo2-tiling-02249
tiling must be VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT if
and only if the pNext chain includes
VkPhysicalDeviceImageDrmFormatModifierInfoEXT
VUID-VkPhysicalDeviceImageFormatInfo2-tiling-02313
If tiling is VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT and
flags contains VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, then the
pNext chain must include a VkImageFormatListCreateInfo
structure with non-zero viewFormatCount
Valid Usage (Implicit)
VUID-VkPhysicalDeviceImageFormatInfo2-sType-sType
sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2
VUID-VkPhysicalDeviceImageFormatInfo2-pNext-pNext
Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkImageCompressionControlEXT, VkImageFormatListCreateInfo, VkImageStencilUsageCreateInfo, VkOpticalFlowImageFormatInfoNV, VkPhysicalDeviceExternalImageFormatInfo, VkPhysicalDeviceImageDrmFormatModifierInfoEXT, VkPhysicalDeviceImageViewImageFormatInfoEXT, or VkVideoProfileListInfoKHR
VUID-VkPhysicalDeviceImageFormatInfo2-sType-unique
The sType value of each structure in the pNext chain must be unique
VUID-VkPhysicalDeviceImageFormatInfo2-format-parameter
format must be a valid VkFormat value
VUID-VkPhysicalDeviceImageFormatInfo2-type-parameter
type must be a valid VkImageType value
VUID-VkPhysicalDeviceImageFormatInfo2-tiling-parameter
tiling must be a valid VkImageTiling value
VUID-VkPhysicalDeviceImageFormatInfo2-usage-parameter
usage must be a valid combination of VkImageUsageFlagBits values
VUID-VkPhysicalDeviceImageFormatInfo2-usage-requiredbitmask
usage must not be 0
VUID-VkPhysicalDeviceImageFormatInfo2-flags-parameter
flags must be a valid combination of VkImageCreateFlagBits values