From b79d1e6fe22413408ba4600d687bd75061765e6f Mon Sep 17 00:00:00 2001 From: thisisjimmyfb <58957694+thisisjimmyfb@users.noreply.github.com> Date: Mon, 2 Jun 2025 12:54:16 -0700 Subject: [PATCH] Android swapchain format selection prefer to use srgb format Android to use similar swapchain format and dimension as Windows --- util/test/demos/android/android_window.cpp | 3 +++ util/test/demos/vk/vk_test.cpp | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/util/test/demos/android/android_window.cpp b/util/test/demos/android/android_window.cpp index 2f635d842..0616f693c 100644 --- a/util/test/demos/android/android_window.cpp +++ b/util/test/demos/android/android_window.cpp @@ -32,6 +32,9 @@ AndroidWindow::AndroidWindow(int width, int height, const char *title) : Graphic { window = android_state->window; TEST_LOG("android window %p", window); + + if(window) + ANativeWindow_setBuffersGeometry(window, width, height, AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM); } AndroidWindow::~AndroidWindow() diff --git a/util/test/demos/vk/vk_test.cpp b/util/test/demos/vk/vk_test.cpp index 686dc509e..2ce63e6b8 100644 --- a/util/test/demos/vk/vk_test.cpp +++ b/util/test/demos/vk/vk_test.cpp @@ -1540,7 +1540,8 @@ bool VulkanWindow::CreateSwapchain() for(const VkSurfaceFormatKHR &f : formats) { - if(f.format == VK_FORMAT_B8G8R8A8_SRGB && f.colorSpace == VK_COLOR_SPACE_SRGB_NONLINEAR_KHR) + if((f.format == VK_FORMAT_B8G8R8A8_SRGB || f.format == VK_FORMAT_R8G8B8A8_SRGB) && + f.colorSpace == VK_COLOR_SPACE_SRGB_NONLINEAR_KHR) { surfaceFormat = f; break;