VkPhysicalDeviceSparseImageFormatInfo2(3)

# VkPhysicalDeviceSparseImageFormatInfo2(3) Manual Page

## Name

VkPhysicalDeviceSparseImageFormatInfo2 - Structure specifying sparse image format inputs

## C Specification

The `VkPhysicalDeviceSparseImageFormatInfo2` structure is defined as:

    // Provided by VK_VERSION_1_1
    typedef struct VkPhysicalDeviceSparseImageFormatInfo2 {
        VkStructureType          sType;
        const void*              pNext;
        VkFormat                 format;
        VkImageType              type;
        VkSampleCountFlagBits    samples;
        VkImageUsageFlags        usage;
        VkImageTiling            tiling;
    } VkPhysicalDeviceSparseImageFormatInfo2;

    // Provided by VK_KHR_get_physical_device_properties2
    // Equivalent to VkPhysicalDeviceSparseImageFormatInfo2
    typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `format` is the image format.

- `type` is the dimensionality of the image.

- `samples` is a VkSampleCountFlagBits value specifying the number of samples per texel.

- `usage` is a bitmask of VkImageUsageFlagBits describing the intended usage of the image.

- `tiling` is the tiling arrangement of the texel blocks in memory.

## Description

Only usage flags representable in VkImageUsageFlagBits are returned in `usage`. If the `pNext` chain includes a VkImageUsageFlags2CreateInfoKHR structure, all usage flags are returned in VkImageUsageFlags2CreateInfoKHR::`usage`.

Valid Usage

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-01095
  `samples` must be a valid VkSampleCountFlagBits value that is set in `VkImageFormatProperties`::`sampleCounts` returned by `vkGetPhysicalDeviceImageFormatProperties` with `format`, `type`, `tiling`, and `usage` equal to those in this command

Valid Usage (Implicit)

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-pNext-pNext
  `pNext` must be `NULL` or a pointer to a valid instance of VkImageUsageFlags2CreateInfoKHR

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-sType-unique
  The `sType` value of each structure in the `pNext` chain must be unique

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-format-parameter
  `format` must be a valid VkFormat value

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-type-parameter
  `type` must be a valid VkImageType value

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-parameter
  `samples` must be a valid VkSampleCountFlagBits value

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-usage-parameter
  `usage` must be a valid combination of VkImageUsageFlagBits values

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-usage-requiredbitmask
  `usage` must not be `0`

- VUID-VkPhysicalDeviceSparseImageFormatInfo2-tiling-parameter
  `tiling` must be a valid VkImageTiling value

## See Also

VK_KHR_get_physical_device_properties2, VK_VERSION_1_1, VkFormat, VkImageTiling, VkImageType, VkImageUsageFlags, VkSampleCountFlagBits, VkStructureType, vkGetPhysicalDeviceSparseImageFormatProperties2, vkGetPhysicalDeviceSparseImageFormatProperties2

## 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.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0