VK_KHR_dynamic_rendering

Other Extension Metadata

Last Modified Date

2021-10-06

Contributors
  • Tobias Hector, AMD
  • Arseny Kapoulkine, Roblox
  • François Duranleau, Gameloft
  • Stuart Smith, AMD
  • Hai Nguyen, Google
  • Jean-François Roy, Google
  • Jeff Leger, Qualcomm
  • Jan-Harald Fredriksen, Arm
  • Piers Daniell, Nvidia
  • James Fitzpatrick, Imagination
  • Piotr Byszewski, Mobica
  • Jesse Hall, Google
  • Mike Blumenkrantz, Valve

Description

This extension allows applications to create single-pass render pass instances without needing to create render pass objects or framebuffers. Dynamic render passes can also span across multiple primary command buffers, rather than relying on secondary command buffers.

This extension also incorporates VK_ATTACHMENT_STORE_OP_NONE_KHR from VK_QCOM_render_pass_store_ops, enabling applications to avoid unnecessary synchronization when an attachment is not written during a render pass.

New Commands

New Structures

New Enums

New Bitmasks

New Enum Constants

  • VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME
  • VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION
  • Extending VkAttachmentStoreOp:
    • VK_ATTACHMENT_STORE_OP_NONE_KHR
  • Extending VkStructureType:
    • VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR
    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR
    • VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR
    • VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR
    • VK_STRUCTURE_TYPE_RENDERING_INFO_KHR

Promotion to Vulkan 1.3

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

Version History

  • Revision 1, 2021-10-06 (Tobias Hector)
    • Initial revision