// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a // Creative Commons Attribution 4.0 International License; see // http://creativecommons.org/licenses/by/4.0/ VkFramebufferCreateInfo(3) ========================== Name ---- VkFramebufferCreateInfo - Structure specifying parameters of a newly created framebuffer C Specification --------------- // refBegin VkFramebufferCreateInfo - Structure specifying parameters of a newly created framebuffer The sname:VkFramebufferCreateInfo structure is defined as: include::../structs/VkFramebufferCreateInfo.txt[] Members ------- * pname:sType is the type of this structure. * pname:pNext is `NULL` or a pointer to an extension-specific structure. * pname:flags is reserved for future use. * pname:renderPass is a render pass that defines what render passes the framebuffer will be compatible with. See <> for details. * pname:attachmentCount is the number of attachments. * pname:pAttachments is an array of sname:VkImageView handles, each of which will be used as the corresponding attachment in a render pass instance. * pname:width, pname:height and pname:layers define the dimensions of the framebuffer. Description ----------- Image subresources used as attachments mustnot: be used via any non-attachment usage for the duration of a render pass instance. [NOTE] .Note ==== This restriction means that the render pass has full knowledge of all uses of all of the attachments, so that the implementation is able to make correct decisions about when and how to perform layout transitions, when to overlap execution of subpasses, etc. ==== [[renderpass-noattachments]] It is legal for a subpass to use no color or depth/stencil attachments, and rather use shader side effects such as image stores and atomics to produce an output. In this case, the subpass continues to use the pname:width, pname:height, and pname:layers of the framebuffer to define the dimensions of the rendering area, and the pname:rasterizationSamples from each pipeline's slink:VkPipelineMultisampleStateCreateInfo to define the number of samples used in rasterization; however, if slink:VkPhysicalDeviceFeatures::pname:variableMultisampleRate is code:VK_FALSE, then all pipelines to be bound with a given zero-attachment subpass must: have the same value for slink:VkPipelineMultisampleStateCreateInfo::pname:rasterizationSamples. include::../validity/structs/VkFramebufferCreateInfo.txt[] See Also -------- elink:VkFramebufferCreateFlags, slink:VkImageView, slink:VkRenderPass, elink:VkStructureType, flink:vkCreateFramebuffer Document Notes -------------- For more information, see the Vulkan Specification at URL https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#VkFramebufferCreateInfo This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification,not directly. include::footer.txt[]