diff --git a/Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp b/Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp index c3e41a9d6..7360a25fd 100644 --- a/Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp +++ b/Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp @@ -1136,6 +1136,12 @@ GPUDevice* GPUDeviceVulkan::Create() // Enumerate all GPU devices and pick one uint32 gpuCount = 0; VALIDATE_VULKAN_RESULT(vkEnumeratePhysicalDevices(Instance, &gpuCount, nullptr)); + if (gpuCount <= 0) + { + LOG(Warning, "No valid GPU found for Vulkan."); + Platform::Fatal(TEXT("Vulkan failed to create instance\n\nDo you have a Vulkan-compatible GPU?")); + return nullptr; + } ASSERT(gpuCount >= 1); Array> gpus; gpus.Resize(gpuCount);