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 CmdResolveImage 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 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.
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.
VK_KHR_depth_stencil_resolveVK_KHR_create_renderpass2| Modifier and Type | Field and Description |
|---|---|
| public static final String | VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME
The extension name. |
| public static final int | VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION
The extension specification version. |
| public static final int | VK_RESOLVE_MODE_AVERAGE_BIT_KHR
Extends |
| public static final int | VK_RESOLVE_MODE_MAX_BIT_KHR
Extends |
| public static final int | VK_RESOLVE_MODE_MIN_BIT_KHR
Extends |
| public static final int | VK_RESOLVE_MODE_NONE_KHR
Extends |
| public static final int | VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR
Extends |
| public static final int | VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR
Extends |
| public static final int | VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR
Extends |
| Access | Constructor and Description |
|---|---|
| private |
| VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME | back to summary |
|---|---|
| public static final String VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME The extension name. | |
| VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION | back to summary |
|---|---|
| public static final int VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION The extension specification version. | |
| VK_RESOLVE_MODE_AVERAGE_BIT_KHR | back to summary |
|---|---|
| public static final int VK_RESOLVE_MODE_AVERAGE_BIT_KHR Extends Enum values: | |
| VK_RESOLVE_MODE_MAX_BIT_KHR | back to summary |
|---|---|
| public static final int VK_RESOLVE_MODE_MAX_BIT_KHR Extends Enum values: | |
| VK_RESOLVE_MODE_MIN_BIT_KHR | back to summary |
|---|---|
| public static final int VK_RESOLVE_MODE_MIN_BIT_KHR Extends Enum values: | |
| VK_RESOLVE_MODE_NONE_KHR | back to summary |
|---|---|
| public static final int VK_RESOLVE_MODE_NONE_KHR Extends Enum values: | |
| VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR | back to summary |
|---|---|
| public static final int VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR Extends Enum values: | |
| VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR | back to summary |
|---|---|
| public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR Extends Enum values: | |
| VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR | back to summary |
|---|---|
| public static final int VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR Extends Enum values: | |
| KHRDepthStencilResolve | back to summary |
|---|---|
| private KHRDepthStencilResolve() | |