Vulkan: prefer D24_UNORM_X8_UINT as D32_UNORM fallback

D24_UNORM_S8_UINT might need a separate plane or might not be
compressible depending on gpus.  Prefer D24_UNORM_X8_UINT.

Test: glmark2
Bug: b/259570128
Change-Id: I8e30f8dbe35853cc9647f2452a2bde8b2c6a1e26
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4201091
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Chia-I Wu <olv@google.com>
This commit is contained in:
Chia-I Wu
2023-01-27 15:23:56 -08:00
committed by Angle LUCI CQ
parent ef1ab2076d
commit 155a94d794
4 changed files with 5 additions and 4 deletions

View File

@@ -6,7 +6,7 @@
"src/libANGLE/renderer/vulkan/gen_vk_format_table.py":
"6e4c403c145549c0baa69d65b5e73152",
"src/libANGLE/renderer/vulkan/vk_format_map.json":
"f3a26a8f4dd2ca8874b73321c38153e6",
"7aaf0dffe89edeabb4ad7e7b856dee02",
"src/libANGLE/renderer/vulkan/vk_format_table_autogen.cpp":
"05872e6795ac5ad413efad9d7dc263ce"
"30c2e870b253c77683935ae3c528e903"
}

View File

@@ -4,7 +4,7 @@
"src/libANGLE/renderer/vulkan/gen_vk_mandatory_format_support_table.py":
"ffb3d44c853669c2c260b96b3808fcf3",
"src/libANGLE/renderer/vulkan/vk_format_map.json":
"f3a26a8f4dd2ca8874b73321c38153e6",
"7aaf0dffe89edeabb4ad7e7b856dee02",
"src/libANGLE/renderer/vulkan/vk_mandatory_format_support_data.json":
"fa2bd54c1bb0ab2cf1d386061a4bc5c5",
"src/libANGLE/renderer/vulkan/vk_mandatory_format_support_table_autogen.cpp":

View File

@@ -220,7 +220,7 @@
},
"D32_UNORM": {
"buffer": "NONE",
"image": ["D24_UNORM_S8_UINT", "D32_FLOAT"]
"image": ["D24_UNORM_X8_UINT", "D24_UNORM_S8_UINT", "D32_FLOAT"]
},
"ETC1_R8G8B8_UNORM_BLOCK": {
"buffer": "NONE",

View File

@@ -893,6 +893,7 @@ void Format::initialize(RendererVk *renderer, const angle::Format &angleFormat)
mIntendedGLFormat = GL_DEPTH_COMPONENT32_OES;
{
static constexpr ImageFormatInitInfo kInfo[] = {
{angle::FormatID::D24_UNORM_X8_UINT, nullptr},
{angle::FormatID::D24_UNORM_S8_UINT, nullptr},
{angle::FormatID::D32_FLOAT, nullptr}};
initImageFallback(renderer, kInfo, ArraySize(kInfo));