VkFramebufferAttachmentImageInfo(3)

# VkFramebufferAttachmentImageInfo(3) Manual Page

## Name

VkFramebufferAttachmentImageInfo - Structure specifying parameters of an image that will be used with a framebuffer

## C Specification

The `VkFramebufferAttachmentImageInfo` structure is defined as:

Warning | This functionality is superseded by Vulkan Version 1.4. See Legacy Functionality for more information.

    // Provided by VK_VERSION_1_2
    typedef struct VkFramebufferAttachmentImageInfo {
        VkStructureType       sType;
        const void*           pNext;
        VkImageCreateFlags    flags;
        VkImageUsageFlags     usage;
        uint32_t              width;
        uint32_t              height;
        uint32_t              layerCount;
        uint32_t              viewFormatCount;
        const VkFormat*       pViewFormats;
    } VkFramebufferAttachmentImageInfo;

    // Provided by VK_KHR_imageless_framebuffer
    // Equivalent to VkFramebufferAttachmentImageInfo
    typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR;

## Members

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

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

- `flags` is a bitmask of VkImageCreateFlagBits, matching the value of VkImageCreateInfo::`flags` used to create an image that will be used with this framebuffer.

- `usage` is a bitmask of VkImageUsageFlagBits, matching the value of VkImageCreateInfo::`usage` used to create an image used with this framebuffer.

- `width` is the width of the image view used for rendering.

- `height` is the height of the image view used for rendering.

- `layerCount` is the number of array layers of the image view used for rendering.

- `viewFormatCount` is the number of entries in the `pViewFormats` array, matching the value of VkImageFormatListCreateInfo::`viewFormatCount` used to create an image used with this framebuffer.

- `pViewFormats` is a pointer to an array of VkFormat values specifying all of the formats which can be used when creating views of the image, matching the value of VkImageFormatListCreateInfo::`pViewFormats` used to create an image used with this framebuffer.

## Description

`flags` defines the effective create flags for the image. If the `pNext` chain includes a VkImageCreateFlags2CreateInfoKHR structure, `flags` is ignored, and the effective create flags are defined by VkImageCreateFlags2CreateInfoKHR::`flags`.

`usage` defines the effective usage flags for the image. If the `pNext` chain includes a VkImageUsageFlags2CreateInfoKHR structure, `usage` is ignored, and the effective usage flags are defined by VkImageUsageFlags2CreateInfoKHR::`flags`.

Images that can be used with the framebuffer when beginning a render pass, as specified by VkRenderPassAttachmentBeginInfo, must be created with parameters that are identical to those specified here.

Valid Usage

- VUID-VkFramebufferAttachmentImageInfo-viewFormatCount-09536
  If `viewFormatCount` is not 0, and the render pass is not being used with an external format resolve attachment, each element of `pViewFormats` must not be VK_FORMAT_UNDEFINED

Valid Usage (Implicit)

- VUID-VkFramebufferAttachmentImageInfo-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO

- VUID-VkFramebufferAttachmentImageInfo-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 VkImageCreateFlags2CreateInfoKHR or VkImageUsageFlags2CreateInfoKHR

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

- VUID-VkFramebufferAttachmentImageInfo-flags-parameter
  `flags` must be a valid combination of VkImageCreateFlagBits values

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

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

- VUID-VkFramebufferAttachmentImageInfo-pViewFormats-parameter
  If `viewFormatCount` is not `0`, `pViewFormats` must be a valid pointer to an array of `viewFormatCount` valid VkFormat values

## See Also

VK_KHR_imageless_framebuffer, VK_VERSION_1_2, VkFormat, VkFramebufferAttachmentsCreateInfo, VkImageCreateFlags, VkImageUsageFlags, VkStructureType

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