VK_KHR_depth_stencil_resolve
Other Extension Metadata
Last Modified Date
2018-04-09
Contributors
- Jan-Harald Fredriksen, Arm
- Andrew Garrard, Samsung Electronics
- Soowan Park, Samsung Electronics
- Jeff Bolz, NVIDIA
- Daniel Rakos, AMD
Description
This extension adds support for automatically resolving multisampled depth/stencil attachments in a subpass in a similar manner as for color attachments.
Multisampled color attachments can be resolved at the end of a subpass by
specifying pResolveAttachments
entries corresponding to the
pColorAttachments
array entries.
This does not allow for a way to map the resolve attachments to the
depth/stencil attachment.
The vkCmdResolveImage command does not allow for depth/stencil images.
While there are other ways to resolve the depth/stencil attachment, they can
give sub-optimal performance.
Extending the VkSubpassDescription2
in this extension allows an
application to add a pDepthStencilResolveAttachment
, that is similar
to the color pResolveAttachments
, that the
pDepthStencilAttachment
can be resolved into.
Depth and stencil samples are resolved to a single value based on the
resolve mode.
The set of possible resolve modes is defined in the
VkResolveModeFlagBits enum.
The VK_RESOLVE_MODE_SAMPLE_ZERO_BIT
mode is the only mode that is
required of all implementations (that support the extension or support
Vulkan 1.2 or higher).
Some implementations may also support averaging (the same as color sample
resolve) or taking the minimum or maximum sample, which may be more suitable
for depth/stencil resolve.
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 Structures
- Extending VkPhysicalDeviceProperties2:
- Extending VkSubpassDescription2:
New Enums
New Bitmasks
New Enum Constants
VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME
VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION
- Extending VkResolveModeFlagBits:
VK_RESOLVE_MODE_AVERAGE_BIT_KHR
VK_RESOLVE_MODE_MAX_BIT_KHR
VK_RESOLVE_MODE_MIN_BIT_KHR
VK_RESOLVE_MODE_NONE_KHR
VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR
- Extending VkStructureType:
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR
Additional Resources
Version History
- Revision 1, 2018-04-09 (Jan-Harald Fredriksen)
- Initial revision