Parameters defined by this structure with the same name as those in VkRenderPassCreateInfo have the identical effect to those parameters; the child structures are variants of those used in VkRenderPassCreateInfo which add sType and pNext parameters, allowing them to be extended.
If the VkSubpassDescription2::viewMask member of any element of pSubpasses is not zero, multiview functionality is considered to be enabled for this render pass.
correlatedViewMaskCount and pCorrelatedViewMasks have the same effect as VkRenderPassMultiviewCreateInfo::correlationMaskCount and VkRenderPassMultiviewCreateInfo::pCorrelationMasks, respectively.
VkDeviceMemory object, and at least one subpass writes to that area of VkDeviceMemory, a subpass dependency must be included (either directly or via some intermediate subpasses) between themattachment member of any element of pInputAttachments, pColorAttachments, pResolveAttachments or pDepthStencilAttachment, or the attachment indexed by any element of pPreserveAttachments in any element of pSubpasses is bound to a range of a VkDeviceMemory object that overlaps with any other attachment in any subpass (including the same subpass), the VkAttachmentDescription2 structures describing them must include ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT in flagsattachment member of any element of pInputAttachments, pColorAttachments, pResolveAttachments or pDepthStencilAttachment, or any element of pPreserveAttachments in any element of pSubpasses is not ATTACHMENT_UNUSED, then it must be less than attachmentCountVkRenderPassFragmentDensityMapCreateInfoEXT structure and the fragmentDensityMapAttachment member is not ATTACHMENT_UNUSED, then attachment must be less than attachmentCountpSubpasses pNext chain includes a VkSubpassDescriptionDepthStencilResolve structure and the pDepthStencilResolveAttachment member is not NULL and does not have the value ATTACHMENT_UNUSED, then attachment must be less than attachmentCountpAttachments with a loadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, or IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMALpAttachments with a stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, or IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMALpDependencies, if the srcSubpass is not SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpasspDependencies, if the dstSubpass is not SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpasspCorrelatedViewMasks must not overlap with the set of bits included in any other element of pCorrelatedViewMasksVkSubpassDescription2::viewMask member of all elements of pSubpasses is 0, correlatedViewMaskCount must be 0VkSubpassDescription2::viewMask member of all elements of pSubpasses must either all be 0, or all not be 0VkSubpassDescription2::viewMask member of all elements of pSubpasses is 0, the dependencyFlags member of any element of pDependencies must not include DEPENDENCY_VIEW_LOCAL_BITpDependencies where its srcSubpass member equals its dstSubpass member, if the viewMask member of the corresponding element of pSubpasses includes more than one bit, its dependencyFlags member must include DEPENDENCY_VIEW_LOCAL_BITattachment member of any element of the pInputAttachments member of any element of pSubpasses is not ATTACHMENT_UNUSED, the aspectMask member of that element of pInputAttachments must only include aspects that are present in images of the format specified by the element of pAttachments specified by attachmentsrcSubpass member of each element of pDependencies must be less than subpassCountdstSubpass member of each element of pDependencies must be less than subpassCountpAttachments is used as a fragment shading rate attachment in any subpass, it must not be used as any other attachment in the render passflags includes RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM, an element of pSubpasses includes an instance of VkFragmentShadingRateAttachmentInfoKHR in its pNext chain, and the pFragmentShadingRateAttachment member of that structure is not equal to NULL, the attachment member of pFragmentShadingRateAttachment must be ATTACHMENT_UNUSEDpAttachments is used as a fragment shading rate attachment in any subpass, it must have an image format whose potential format features contain FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR{@link QCOMRenderPassShaderResolve VK_QCOM_render_pass_shader_resolve} extension is enabled, and if subpass has any input attachments, and if the subpass description contains SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, then the sample count of the input attachments must equal rasterizationSamplesVK_QCOM_render_pass_shader_resolve extension is enabled, and if the subpass description contains SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, then sampleShadingEnable must be falseflags includes SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and if pResolveAttachments is not NULL, then each resolve attachment must be ATTACHMENT_UNUSEDflags includes SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and if pDepthStencilResolveAttachment is not NULL, then the depth/stencil resolve attachment must be ATTACHMENT_UNUSEDflags includes SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, then the subpass must be the last subpass in a subpass dependency chainattachment member of the pDepthStencilAttachment member of an element of pSubpasses is not ATTACHMENT_UNUSED, the layout member of that same structure is either IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, and the pNext chain of that structure does not include a VkAttachmentReferenceStencilLayout structure, then the element of pAttachments with an index equal to attachment must not have a format that includes both depth and stencil componentsattachment member of the pDepthStencilAttachment member of an element of pSubpasses is not ATTACHMENT_UNUSED and the layout member of that same structure is either IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL, then the element of pAttachments with an index equal to attachment must have a format that includes only a stencil componentattachment member of the pDepthStencilAttachment member of an element of pSubpasses is not ATTACHMENT_UNUSED and the layout member of that same structure is either IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, then the element of pAttachments with an index equal to attachment must not have a format that includes only a stencil componentsType must be STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkRenderPassCreationControlEXT, VkRenderPassCreationFeedbackCreateInfoEXT, or VkRenderPassFragmentDensityMapCreateInfoEXTsType value of each struct in the pNext chain must be uniqueflags must be a valid combination of VkRenderPassCreateFlagBits valuesattachmentCount is not 0, pAttachments must be a valid pointer to an array of attachmentCount valid VkAttachmentDescription2 structurespSubpasses must be a valid pointer to an array of subpassCount valid VkSubpassDescription2 structuresdependencyCount is not 0, pDependencies must be a valid pointer to an array of dependencyCount valid VkSubpassDependency2 structurescorrelatedViewMaskCount is not 0, pCorrelatedViewMasks must be a valid pointer to an array of correlatedViewMaskCount uint32_t valuessubpassCount must be greater than 0VkAttachmentDescription2, VkSubpassDependency2, VkSubpassDescription2, CreateRenderPass2, CreateRenderPass2KHR
struct VkRenderPassCreateInfo2 {
VkStructureType sType;
void const * pNext;
VkRenderPassCreateFlags flags;
uint32_t attachmentCount;
VkAttachmentDescription2 const * pAttachments;
uint32_t subpassCount;
VkSubpassDescription2 const * pSubpasses;
uint32_t dependencyCount;
VkSubpassDependency2 const * pDependencies;
uint32_t correlatedViewMaskCount;
uint32_t const * pCorrelatedViewMasks;
}
| Modifier and Type | Class and Description |
|---|---|
| public static class | VkRenderPassCreateInfo2.
An array of |
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALIGNOF
The struct alignment in bytes. |
| public static final int | ATTACHMENTCOUNT
The struct member offsets. |
| public static final int | CORRELATEDVIEWMASKCOUNT
The struct member offsets. |
| public static final int | DEPENDENCYCOUNT
The struct member offsets. |
| public static final int | FLAGS
The struct member offsets. |
| public static final int | PATTACHMENTS
The struct member offsets. |
| public static final int | PCORRELATEDVIEWMASKS
The struct member offsets. |
| public static final int | PDEPENDENCIES
The struct member offsets. |
| public static final int | PNEXT
The struct member offsets. |
| public static final int | PSUBPASSES
The struct member offsets. |
| public static final int | SIZEOF
The struct size in bytes. |
| public static final int | STYPE
The struct member offsets. |
| public static final int | SUBPASSCOUNT
The struct member offsets. |
| Access | Constructor and Description |
|---|---|
| protected | |
| public | VkRenderPassCreateInfo2(ByteBuffer container)
Creates a |
| Modifier and Type | Method and Description |
|---|---|
| public int | |
| public static VkRenderPassCreateInfo2 | |
| public static VkRenderPassCreateInfo2. | calloc(int
the buffer capacity capacity)Returns a new |
| public static VkRenderPassCreateInfo2 | calloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkRenderPassCreateInfo2. | calloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public int | |
| protected VkRenderPassCreateInfo2 | create(long
the struct memory address address, ByteBuffer an optional container buffer, to be referenced strongly by the struct instance. container)Implements abstract org. the constructor, but returns the exact type of the Struct subclass.
|
| public static VkRenderPassCreateInfo2 | |
| public static VkRenderPassCreateInfo2 | create(long address)
Returns a new |
| public static VkRenderPassCreateInfo2. | create(int
the buffer capacity capacity)Returns a new |
| public static VkRenderPassCreateInfo2. | create(long
the memory address address, int the buffer capacity capacity)Create a |
| public static VkRenderPassCreateInfo2 | |
| public static VkRenderPassCreateInfo2. | |
| public int | |
| public int | |
| public VkRenderPassCreateInfo2 | |
| public static VkRenderPassCreateInfo2 | |
| public static VkRenderPassCreateInfo2. | malloc(int
the buffer capacity capacity)Returns a new |
| public static VkRenderPassCreateInfo2 | malloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkRenderPassCreateInfo2. | malloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static int | |
| public static void | nattachmentCount(long struct, int value)
Sets the specified value to the |
| public static int | |
| public static void | ncorrelatedViewMaskCount(long struct, int value)
Sets the specified value to the |
| public static int | |
| public static void | ndependencyCount(long struct, int value)
Sets the specified value to the |
| public static int | |
| public static void | |
| public static VkAttachmentDescription2. | |
| public static void | |
| public static IntBuffer | |
| public static void | |
| public static VkSubpassDependency2. | |
| public static void | |
| public static long | |
| public static void | |
| public static VkSubpassDescription2. | |
| public static void | |
| public static int | |
| public static void | |
| public static int | |
| public static void | nsubpassCount(long struct, int value)
Sets the specified value to the |
| public VkAttachmentDescription2. | pAttachments()
a pointer to an array of |
| public VkRenderPassCreateInfo2 | pAttachments(VkAttachmentDescription2.
Sets the address of the specified |
| public IntBuffer | pCorrelatedViewMasks()
a pointer to an array of view masks indicating sets of views that may be more efficient to render concurrently. |
| public VkRenderPassCreateInfo2 | pCorrelatedViewMasks(IntBuffer value)
Sets the address of the specified |
| public VkSubpassDependency2. | pDependencies()
a pointer to an array of |
| public VkRenderPassCreateInfo2 | pDependencies(VkSubpassDependency2.
Sets the address of the specified |
| public long | |
| public VkRenderPassCreateInfo2 | |
| public VkRenderPassCreateInfo2 | pNext(VkRenderPassCreationControlEXT value)
Prepends the specified |
| public VkRenderPassCreateInfo2 | pNext(VkRenderPassCreationFeedbackCreateInfoEXT value)
Prepends the specified |
| public VkRenderPassCreateInfo2 | pNext(VkRenderPassFragmentDensityMapCreateInfoEXT value)
Prepends the specified |
| public VkSubpassDescription2. | pSubpasses()
a pointer to an array of |
| public VkRenderPassCreateInfo2 | pSubpasses(VkSubpassDescription2.
Sets the address of the specified |
| public VkRenderPassCreateInfo2 | set(int sType, long pNext, int flags, VkAttachmentDescription2.
Initializes this struct with the specified values. |
| public VkRenderPassCreateInfo2 | Returns: this structthe source struct src)Copies the specified struct data to this struct. |
| public int | |
| public int | |
| public VkRenderPassCreateInfo2 | |
| public VkRenderPassCreateInfo2 | |
| public int | |
| public static void |