VK_KHR_create_renderpass2(3)

# VK_KHR_create_renderpass2(3) Manual Page

## Name

VK_KHR_create_renderpass2 - device extension

Loading… please wait.

## Registered Extension Number

110

## Revision

1

## Extension and Version Dependencies

- Requires Vulkan 1.0

- Requires `VK_KHR_multiview`

- Requires `VK_KHR_maintenance2`

## Deprecation state

- Promoted to Vulkan 1.2

### Other Extension Metadata

Last Modified Date

  2018-02-07

Interactions and External Dependencies

  - Promoted to Vulkan 1.2 Core

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 `sType`/`pNext` members. Additionally, the renderpass begin/next/end commands have been augmented with new extensible structures for passing additional subpass information.

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

- Elements of VkRenderPassMultiviewCreateInfo::`pViewMasks` are now specified in VkSubpassDescription2KHR::`viewMask`.

- Elements of VkRenderPassMultiviewCreateInfo::`pViewOffsets` are now specified in VkSubpassDependency2KHR::`viewOffset`.

- VkRenderPassMultiviewCreateInfo::`correlationMaskCount` and VkRenderPassMultiviewCreateInfo::`pCorrelationMasks` are directly specified in VkRenderPassCreateInfo2KHR.

- VkInputAttachmentAspectReference::`aspectMask` is now specified in the relevant input attachment description in VkAttachmentDescription2KHR::`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.

### New Commands

- vkCmdBeginRenderPass2KHR

- vkCmdEndRenderPass2KHR

- vkCmdNextSubpass2KHR

- vkCreateRenderPass2KHR

### New Structures

- VkAttachmentDescription2KHR

- VkAttachmentReference2KHR

- VkRenderPassCreateInfo2KHR

- VkSubpassBeginInfoKHR

- VkSubpassDependency2KHR

- VkSubpassDescription2KHR

- VkSubpassEndInfoKHR

### New Enum Constants

- `VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME`

- `VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION`

- Extending VkStructureType:

  - `VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR`

  - `VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR`

  - `VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR`

  - `VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR`

  - `VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR`

  - `VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR`

  - `VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR`

### Version History

- Revision 1, 2018-02-07 (Tobias Hector)

  - Internal revisions

## See Also

VkAttachmentDescription2KHR, VkAttachmentReference2KHR, VkRenderPassCreateInfo2KHR, VkSubpassBeginInfoKHR, VkSubpassDependency2KHR, VkSubpassDescription2KHR, VkSubpassEndInfoKHR, vkCmdBeginRenderPass2KHR, vkCmdEndRenderPass2KHR, vkCmdNextSubpass2KHR, vkCreateRenderPass2KHR

## Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

## Copyright

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0