VkFramebufferAttachmentImageInfo
The VkFramebufferAttachmentImageInfo structure is defined as:
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;
pub struct FramebufferAttachmentImageInfo {
s_type: vk::StructureType,
p_next: *const c_void,
flags: vk::ImageCreateFlags, // Image creation flags
usage: vk::ImageUsageFlags, // Image usage flags
width: u32,
height: u32,
layer_count: u32,
view_format_count: u32,
p_view_formats: *const vk::Format,
}
typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR;
type FramebufferAttachmentImageInfoKHR = vk::FramebufferAttachmentImageInfo;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.flagsis a bitmask of VkImageCreateFlagBits, matching the value of VkImageCreateInfo::flagsused to create an image that will be used with this framebuffer.usageis a bitmask of VkImageUsageFlagBits, matching the value of VkImageCreateInfo::usageused to create an image used with this framebuffer.widthis the width of the image view used for rendering.heightis the height of the image view used for rendering.layerCountis the number of array layers of the image view used for rendering.viewFormatCountis the number of entries in thepViewFormatsarray, matching the value of VkImageFormatListCreateInfo::viewFormatCountused to create an image used with this framebuffer.pViewFormatsis 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::pViewFormatsused to create an image used with this framebuffer.
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