C Specification

The VkPhysicalDeviceMaintenance10PropertiesKHR structure is defined as:

// Provided by VK_KHR_maintenance10
typedef struct VkPhysicalDeviceMaintenance10PropertiesKHR {
    VkStructureType    sType;
    void*              pNext;
    VkBool32           rgba4OpaqueBlackSwizzled;
    VkBool32           resolveSrgbFormatAppliesTransferFunction;
    VkBool32           resolveSrgbFormatSupportsTransferFunctionControl;
} VkPhysicalDeviceMaintenance10PropertiesKHR;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • rgba4OpaqueBlackSwizzled indicates whether correct swizzling is applied to the opaque black border color when using either the VK_FORMAT_B4G4R4A4_UNORM_PACK16 or VK_FORMAT_R4G4B4A4_UNORM_PACK16 format. If it is VK_TRUE, the implementation will correctly produce an opaque black border color with these formats. If it is VK_FALSE, the implementation may swap the first channel with the alpha channel for the border color when sampling.

  • resolveSrgbFormatAppliesTransferFunction indicates whether resolving a multi-sampled sRGB format to single-sampled sRGB by a weighted average converts the samples to linear before averaging. This applies to both attachment resolves in a render pass and standalone resolve commands. If VK_TRUE, implementation always converts to linear before averaging unless overridden. If VK_FALSE, implementation never converts to linear before averaging unless overridden.

  • resolveSrgbFormatSupportsTransferFunctionControl indicates whether the implementation supports overriding the default behavior in resolveSrgbFormatAppliesTransferFunction in render passes and vkCmdResolveImage2.

Description

Implementations supporting maintenance10 should set resolveSrgbFormatAppliesTransferFunction to VK_TRUE.

If the VkPhysicalDeviceMaintenance10PropertiesKHR structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to vkGetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Valid Usage (Implicit)

See Also

Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0