// Copyright 2016-2024 The Khronos Group Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

include::{generated}/meta/{refprefix}VK_KHR_create_renderpass2.adoc[]

=== Other Extension Metadata

*Last Modified Date*::
    2018-02-07
*Contributors*::
  - Tobias Hector
  - Jeff Bolz

=== Description

This extension provides a new entry point to create render passes in a way
that can be easily extended by other extensions through the substructures of
render pass creation.
The Vulkan 1.0 render pass creation sub-structures do not include
ptext:sType/ptext:pNext members.
Additionally, the render pass begin/next/end commands have been augmented
with new extensible structures for passing additional subpass information.

The slink:VkRenderPassMultiviewCreateInfo and
slink:VkInputAttachmentAspectReference structures that extended the original
slink:VkRenderPassCreateInfo are not accepted into the new creation
functions, and instead their parameters are folded into this extension as
follows:

  * Elements of slink:VkRenderPassMultiviewCreateInfo::pname:pViewMasks are
    now specified in slink:VkSubpassDescription2KHR::pname:viewMask.
  * Elements of slink:VkRenderPassMultiviewCreateInfo::pname:pViewOffsets
    are now specified in slink:VkSubpassDependency2KHR::pname:viewOffset.
  * slink:VkRenderPassMultiviewCreateInfo::pname:correlationMaskCount and
    slink:VkRenderPassMultiviewCreateInfo::pname:pCorrelationMasks are
    directly specified in slink:VkRenderPassCreateInfo2KHR.
  * slink:VkInputAttachmentAspectReference::pname:aspectMask is now
    specified in the relevant input attachment reference in
    slink:VkAttachmentReference2KHR::pname:aspectMask

The details of these mappings are explained fully in the new structures.

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2, with the
KHR suffix omitted.
The original type, enum and command names are still available as aliases of
the core functionality.

include::{generated}/interfaces/VK_KHR_create_renderpass2.adoc[]

=== Version History

  * Revision 1, 2018-02-07 (Tobias Hector)
  ** Internal revisions
