KhronosGroup / KhronosGroup/Vulkan-Docs

vkCreateSwapChainKHR does not allow passing image creation flags (eg. VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT)

Open
#619 2 comments 0 reactions 0 assignees View on GitHub
System Integration
Dominant language
JavaScript
Stars
3.3k
Forks
549
Avg merge
5d 5h
Merged PRs (30d)
2

Description

As the spec is currently written, there's no way to create swapchain images with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag set. This prevent use cases such as creating both _SRGB and _UNORM image views to the swapchain image to toggle between linear and gamma write modes when needed.

Suggested fix is to define the subset of VkImageCreateFlags that can be set in VkSwapChainCreateInfoKHR::flags. These flags should include at least VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, but could potentially also expose CUBE_COMPATIBLE_BIT if desired.

Contributor guide

Open the contributing guide

Research direction

Start with the Vulkan specification definitions for VkSwapchainCreateInfoKHR, its flags, and VkImageCreateFlags. Determine which image creation flags should be permitted and how the proposed swapchain behavior is specified; the work is done when the specification clearly defines the supported subset and the mutable-format use case.

Written by the indexing model from the issue text.

Assessment

Domain
api, documentation
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.