VK_KHR_surface_maintenance1(3)

# VK_KHR_surface_maintenance1(3) Manual Page

## Name

VK_KHR_surface_maintenance1 - instance extension

Loading… please wait.

## Registered Extension Number

487

## Revision

1

## Ratification Status

Ratified

## Extension and Version Dependencies

VK_KHR_surface
or
VK_KHR_get_surface_capabilities2

## Contact

- Shahbaz Youssefi [GitHub]syoussefi

## Extension Proposal

VK_KHR_surface_maintenance1

## Other Extension Metadata

Last Modified Date

  2025-03-31

Contributors

  - James Jones, NVIDIA

  - Jeff Juliano, NVIDIA

  - Lionel Landwerlin, Intel

  - Shahbaz Youssefi, Google

  - Chris Forbes, Google

  - Ian Elliott, Google

  - Hans-Kristian Arntzen, Valve

  - Daniel Stone, Collabora

## Description

This extension is based off the `VK_EXT_surface_maintenance1` extension.

`VK_KHR_surface_maintenance1` adds a collection of window system integration features that were intentionally left out or overlooked in the original `VK_KHR_surface` extension.

The new features are as follows:

- Allow querying number of min/max images from a surface for a particular presentation mode.

- Allow querying a surface’s scaled presentation capabilities.

- Allow querying a surface for the set of presentation modes which can be easily switched between without requiring swapchain recreation.

## New Structures

- Extending VkPhysicalDeviceSurfaceInfo2KHR:

  - VkSurfacePresentModeKHR

- Extending VkSurfaceCapabilities2KHR:

  - VkSurfacePresentModeCompatibilityKHR

  - VkSurfacePresentScalingCapabilitiesKHR

## New Enums

- VkPresentGravityFlagBitsKHR

- VkPresentScalingFlagBitsKHR

## New Bitmasks

- VkPresentGravityFlagsKHR

- VkPresentScalingFlagsKHR

## New Enum Constants

- `VK_KHR_SURFACE_MAINTENANCE_1_EXTENSION_NAME`

- `VK_KHR_SURFACE_MAINTENANCE_1_SPEC_VERSION`

- Extending VkStructureType:

  - `VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_KHR`

  - `VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_KHR`

  - `VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_KHR`

## Version History

- Revision 1, 2025-03-31 (Shahbaz Youssefi)

  - Based on VK_EXT_surface_maintenance1

## See Also

No cross-references are available

## 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-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0