소스 검색

GPU: Fix wrong Vulkan swapchain size when retrying acquire

(cherry picked from commit d8ac51859e79adae21a2e8b5696bab4780741e56)
Cheney Wang 1 개월 전
부모
커밋
30e3eba20a
1개의 변경된 파일8개의 추가작업 그리고 7개의 파일을 삭제
  1. 8 7
      src/gpu/vulkan/SDL_gpu_vulkan.c

+ 8 - 7
src/gpu/vulkan/SDL_gpu_vulkan.c

@@ -9951,13 +9951,6 @@ static bool VULKAN_INTERNAL_AcquireSwapchainTexture(
         }
     }
 
-    if (swapchainTextureWidth) {
-        *swapchainTextureWidth = windowData->width;
-    }
-    if (swapchainTextureHeight) {
-        *swapchainTextureHeight = windowData->height;
-    }
-
     if (windowData->inFlightFences[windowData->frameCounter] != NULL) {
         if (block) {
             // If we are blocking, just wait for the fence!
@@ -10009,6 +10002,14 @@ static bool VULKAN_INTERNAL_AcquireSwapchainTexture(
         }
     }
 
+    if (swapchainTextureWidth) {
+        *swapchainTextureWidth = windowData->width;
+    }
+
+    if (swapchainTextureHeight) {
+        *swapchainTextureHeight = windowData->height;
+    }
+
     swapchainTextureContainer = &windowData->textureContainers[swapchainImageIndex];
 
     // We need a special execution dependency with pWaitDstStageMask or image transition can start before acquire finishes