diff options
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_blit_screen.cpp | 5 | ||||
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_swapchain.cpp | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/renderer_vulkan/vk_blit_screen.cpp b/src/video_core/renderer_vulkan/vk_blit_screen.cpp index df948292f..e4c581a28 100644 --- a/src/video_core/renderer_vulkan/vk_blit_screen.cpp +++ b/src/video_core/renderer_vulkan/vk_blit_screen.cpp | |||
| @@ -449,7 +449,12 @@ void BlitScreen::DrawToSwapchain(Frame* frame, const Tegra::FramebufferConfig& f | |||
| 449 | if (const std::size_t swapchain_images = swapchain.GetImageCount(); | 449 | if (const std::size_t swapchain_images = swapchain.GetImageCount(); |
| 450 | swapchain_images != image_count || current_srgb != is_srgb) { | 450 | swapchain_images != image_count || current_srgb != is_srgb) { |
| 451 | current_srgb = is_srgb; | 451 | current_srgb = is_srgb; |
| 452 | #ifdef ANDROID | ||
| 453 | // Android is already ordered the same as Switch. | ||
| 454 | image_view_format = current_srgb ? VK_FORMAT_R8G8B8A8_SRGB : VK_FORMAT_R8G8B8A8_UNORM; | ||
| 455 | #else | ||
| 452 | image_view_format = current_srgb ? VK_FORMAT_B8G8R8A8_SRGB : VK_FORMAT_B8G8R8A8_UNORM; | 456 | image_view_format = current_srgb ? VK_FORMAT_B8G8R8A8_SRGB : VK_FORMAT_B8G8R8A8_UNORM; |
| 457 | #endif | ||
| 453 | image_count = swapchain_images; | 458 | image_count = swapchain_images; |
| 454 | Recreate(); | 459 | Recreate(); |
| 455 | } | 460 | } |
diff --git a/src/video_core/renderer_vulkan/vk_swapchain.cpp b/src/video_core/renderer_vulkan/vk_swapchain.cpp index 8c0dec590..e43a993f9 100644 --- a/src/video_core/renderer_vulkan/vk_swapchain.cpp +++ b/src/video_core/renderer_vulkan/vk_swapchain.cpp | |||
| @@ -266,7 +266,12 @@ void Swapchain::CreateSwapchain(const VkSurfaceCapabilitiesKHR& capabilities, bo | |||
| 266 | 266 | ||
| 267 | images = swapchain.GetImages(); | 267 | images = swapchain.GetImages(); |
| 268 | image_count = static_cast<u32>(images.size()); | 268 | image_count = static_cast<u32>(images.size()); |
| 269 | #ifdef ANDROID | ||
| 270 | // Android is already ordered the same as Switch. | ||
| 271 | image_view_format = srgb ? VK_FORMAT_R8G8B8A8_SRGB : VK_FORMAT_R8G8B8A8_UNORM; | ||
| 272 | #else | ||
| 269 | image_view_format = srgb ? VK_FORMAT_B8G8R8A8_SRGB : VK_FORMAT_B8G8R8A8_UNORM; | 273 | image_view_format = srgb ? VK_FORMAT_B8G8R8A8_SRGB : VK_FORMAT_B8G8R8A8_UNORM; |
| 274 | #endif | ||
| 270 | } | 275 | } |
| 271 | 276 | ||
| 272 | void Swapchain::CreateSemaphores() { | 277 | void Swapchain::CreateSemaphores() { |