【发布时间】:2021-06-01 01:26:20
【问题描述】:
创建格式错误的交换链图像显然会导致以下结果:
vkCreateImageView() format VK_FORMAT_B8G8R8A8_UNORM differs from VkImage
0x40000000004[] format VK_FORMAT_B8G8R8A8_SRGB. Formats MUST be IDENTICAL unless
VK_IMAGE_CREATE_MUTABLE_FORMAT BIT was set on image creation.
VK_KHR_swapchain_mutable_format 需要 Vulkan 1.0
结果如下:
The Vulkan spec states: If flags contains VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR
then the pNext chain must include a VkImageFormatListCreateInfo structure with a viewFormatCount
greater than zero and pViewFormats must have an element equal to imageFormat
VkImageFormatListCreateInfoVK_VERSION_1_2提供
问题 - Vulkan 1.0 扩展如何要求 1.2 结构? (也许我错过了一些东西)
正如我在 https://vulkan.gpuinfo.org/listextensions.phpVK_KHR_swapchain_mutable_format 上看到的,只有 60% 的 Vulkan GPU 支持...所以最好写“手动转换”?
【问题讨论】:
-
设备是否只支持UNORM?你不能要求 SRGB 代替吗?
-
询问 SRGB 是否符合 Vulkan 规范,Vulkan 返回 UNORM 或 SRGB 或其他格式的交换链图像格式,如果我询问 SRGB,一切都会正常工作,但验证层不满意
标签: vulkan