From 65cb2987ecb1c5c088c5ec8bd23c144b2763e609 Mon Sep 17 00:00:00 2001 From: Hog Date: Sun, 7 Jun 2026 15:03:22 +0100 Subject: [PATCH] Add comments for BC4 and BC5 sRGB format handling Added comments explaining the absence of sRGB variants for BC4 and BC5 formats in Vulkan. --- src/video_core/renderer_vulkan/liverpool_to_vk.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/video_core/renderer_vulkan/liverpool_to_vk.cpp b/src/video_core/renderer_vulkan/liverpool_to_vk.cpp index 27d5c1632..ff57e3474 100644 --- a/src/video_core/renderer_vulkan/liverpool_to_vk.cpp +++ b/src/video_core/renderer_vulkan/liverpool_to_vk.cpp @@ -722,11 +722,17 @@ std::span SurfaceFormats() { vk::Format::eBc4UnormBlock), CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc4, AmdGpu::NumberFormat::Snorm, vk::Format::eBc4SnormBlock), + // BC4 has no sRGB variant in Vulkan; treat as Unorm (single-channel, not color data) + CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc4, AmdGpu::NumberFormat::Srgb, + vk::Format::eBc4UnormBlock), // BC5 CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc5, AmdGpu::NumberFormat::Unorm, vk::Format::eBc5UnormBlock), CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc5, AmdGpu::NumberFormat::Snorm, vk::Format::eBc5SnormBlock), + // BC5 has no sRGB variant in Vulkan; treat as Unorm (two-channel normal map, not color data) + CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc5, AmdGpu::NumberFormat::Srgb, + vk::Format::eBc5UnormBlock), // BC6 CreateSurfaceFormatInfo(AmdGpu::DataFormat::FormatBc6, AmdGpu::NumberFormat::Unorm, vk::Format::eBc6HUfloatBlock),