Class VkFramebufferCreateInfo

  • All Implemented Interfaces:
    java.lang.AutoCloseable, NativeResource, Pointer


    public class VkFramebufferCreateInfo
    extends Struct
    Khronos Reference Page
    Vulkan Specification

    Contains information about how a framebuffer should be created.

    Valid Usage
    • sType must be STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO
    • pNext must be NULL
    • flags must be 0
    • renderPass must be a valid VkRenderPass handle
    • If attachmentCount is not 0, pAttachments must be a pointer to an array of attachmentCount valid VkImageView handles
    • Each of renderPass and the elements of pAttachments that are valid handles must have been created, allocated or retrieved from the same VkDevice
    • attachmentCount must be equal to the attachment count specified in renderPass
    • Any given element of pAttachments that is used as a color attachment or resolve attachment by renderPass must have been created with a usage value including IMAGE_USAGE_COLOR_ATTACHMENT_BIT
    • Any given element of pAttachments that is used as a depth/stencil attachment by renderPass must have been created with a usage value including IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
    • Any given element of pAttachments that is used as an input attachment by renderPass must have been created with a usage value including IMAGE_USAGE_INPUT_ATTACHMENT_BIT
    • Any given element of pAttachments must have been created with an VkFormat value that matches the VkFormat specified by the corresponding VkAttachmentDescription in renderPass
    • Any given element of pAttachments must have been created with a samples value that matches the samples value specified by the corresponding VkAttachmentDescription in renderPass
    • Any given element of pAttachments must have dimensions at least as large as the corresponding framebuffer dimension
    • Any given element of pAttachments must only specify a single mip-level
    • Any given element of pAttachments must have been created with the identity swizzle
    • width must be less than or equal to VkPhysicalDeviceLimits::maxFramebufferWidth
    • height must be less than or equal to VkPhysicalDeviceLimits::maxFramebufferHeight
    • layers must be less than or equal to VkPhysicalDeviceLimits::maxFramebufferLayers

    Member documentation

    • sType – the type of this structure. Must be: STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO
    • pNext – reserved for use by extensions
    • flags – reserved for future use
    • renderPass – a render pass that defines what render passes the framebuffer will be compatible with
    • attachmentCount – the number of attachments
    • pAttachments – an array of VkImageView handles, each of which will be used as the corresponding attachment in a render pass instance
    • width – the framebuffer width
    • height – the framebuffer height
    • layers – the number of layers in the framebuffer

    Layout

    struct VkFramebufferCreateInfo {
        VkStructureType sType;
        const void * pNext;
        VkFramebufferCreateFlags flags;
        VkRenderPass renderPass;
        uint32_t attachmentCount;
        const VkImageView * pAttachments;
        uint32_t width;
        uint32_t height;
        uint32_t layers;
    }