Vulkan-Docs/doc/specs/vulkan/man/VkFramebufferCreateInfo.txt

88 lines
2.9 KiB
Plaintext

// 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
<<renderpass-compatibility,Render Pass Compatibility>> 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[]