KhronosGroup / KhronosGroup/Vulkan-Docs

VkSurfacePresentScalingCapabilitiesEXT incorrect usage description

Open
#2,348 2 comments 0 reactions 1 assignee Claimed by @linyaa-kiwi View on GitHub
System Integration
Dominant language
JavaScript
Stars
3.3k
Forks
549
Avg merge
5d 5h
Merged PRs (30d)
2

Description

The documentation for [VkSurfacePresentScalingCapabilitiesEXT](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSwapchainPresentScalingCreateInfoEXT) indicates:

> Before creating a swapchain whose scaling mode can be specified through the use of [VkSwapchainPresentScalingCreateInfoEXT](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSwapchainPresentScalingCreateInfoEXT), obtain the set of supported scaling modes by including a [VkSurfacePresentModeEXT](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSurfacePresentModeEXT) structure in the pNext chain of [VkPhysicalDeviceSurfaceInfo2KHR](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkPhysicalDeviceSurfaceInfo2KHR) when calling [vkGetPhysicalDeviceSurfaceCapabilities2KHR](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#vkGetPhysicalDeviceSurfaceCapabilities2KHR).

That seems incorrect. The set of supported scaling modes is not contained within a VkSurfacePresentModeEXT struct.

I couldn't find any reference that correctly defines how to achieve this, but after some spelunking it seem this should in fact be:

VkSurfacePresentScalingCapabilitiesEXT

> Before creating a swapchain whose scaling mode can be specified through the use of [VkSwapchainPresentScalingCreateInfoEXT](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSwapchainPresentScalingCreateInfoEXT), obtain the set of supported scaling modes by including a [**VkSurfacePresentScalingCapabilitiesEXT**](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSurfacePresentScalingCapabilitiesEXT) structure in the pNext chain of [**VkSurfaceCapabilities2KHR**](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#VkSurfaceCapabilities2KHR) when calling [vkGetPhysicalDeviceSurfaceCapabilities2KHR](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap34.html#vkGetPhysicalDeviceSurfaceCapabilities2KHR).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.