ue4-docker: UE4Editor crashes with Vulkan Error

Output of the ue4-docker info command:

ue4-docker version:         0.0.80 (latest available version is 0.0.80)
Operating system:           Linux (Ubuntu 18.04.4 LTS, 5.4.0-52-generic)
Docker daemon version:      20.10.5
NVIDIA Docker supported:    Yes
Maximum image size:         No limit detected
Available disk space:       234.74 GiB
Total system memory:        15.5 GiB physical, 2 GiB virtual
Number of processors:       4 physical, 8 logical

Additional details:

  • Are you accessing the network through a proxy server? No
  • Engine Version: 4.23.1
  • Error from Log Message
LogCore: Assertion failed:  [File:/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp] [Line: 690] 
VulkanRHI::vkGetPhysicalDeviceSurfaceFormatsKHR(Device.GetPhysicalHandle(), Surface, &NumFormats, nullptr) failed, VkResult=-13
 at /home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:152 with error 
  • Detailed Report from Unreal Engine 4 Crash Reporter
Assertion failed: [File:/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp] [Line: 690] VulkanRHI::vkGetPhysicalDeviceSurfaceFormatsKHR(Device.GetPhysicalHandle(), Surface, &NumFormats, nullptr) failed, VkResult=-13 at /home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:152 with error

libUE4Editor-Core.so!FGenericPlatformMisc::RaiseException(unsigned int) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Core/Private/GenericPlatform/GenericPlatformMisc.cpp:413]
libUE4Editor-Core.so!FUnixErrorOutputDevice::Serialize(char16_t const*, ELogVerbosity::Type, FName const&) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Core/Private/Unix/UnixErrorOutputDevice.cpp:70]
libUE4Editor-Core.so!FOutputDevice::LogfImpl(char16_t const*, ...) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Core/Private/Misc/OutputDevice.cpp:71]
libUE4Editor-Core.so!AssertFailedImplV(char const*, char const*, int, char16_t const*, __va_list_tag*) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Core/Private/Misc/AssertionMacros.cpp:101]
libUE4Editor-Core.so!FDebug::AssertFailed(char const*, char const*, int, char16_t const*, ...) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Core/Private/Misc/AssertionMacros.cpp:453]
libUE4Editor-VulkanRHI.so!VulkanRHI::VerifyVulkanResult(VkResult, char const*, char const*, unsigned int) [/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp:689]
libUE4Editor-VulkanRHI.so!FVulkanSwapChain::FVulkanSwapChain(VkInstance_T*, FVulkanDevice&, void*, EPixelFormat&, unsigned int, unsigned int, unsigned int*, TArray<VkImage_T*, TSizedDefaultAllocator<32> >&, signed char, FVulkanSwapChainRecreateInfo*) [/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:152]
libUE4Editor-VulkanRHI.so!FVulkanViewport::CreateSwapchain(FVulkanSwapChainRecreateInfo*) [/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanViewport.cpp:641]
libUE4Editor-VulkanRHI.so!FVulkanViewport::FVulkanViewport(FVulkanDynamicRHI*, FVulkanDevice*, void*, unsigned int, unsigned int, bool, EPixelFormat) [/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanViewport.cpp:142]
libUE4Editor-VulkanRHI.so!FVulkanDynamicRHI::RHICreateViewport(void*, unsigned int, unsigned int, bool, EPixelFormat) [/home/ue4/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanViewport.cpp:963]
libUE4Editor-SlateRHIRenderer.so!FSlateRHIRenderer::CreateViewport(TSharedRef<SWindow, (ESPMode)0>) [/home/ue4/UnrealEngine/Engine/Source/Runtime/SlateRHIRenderer/Private/SlateRHIRenderer.cpp:334]
libUE4Editor-SlateCore.so!SWindow::ShowWindow() [/home/ue4/UnrealEngine/Engine/Source/Runtime/SlateCore/Private/Widgets/SWindow.cpp:1314]
libUE4Editor-MainFrame.so!FMainFrameHandler::ShowMainFrameWindow(TSharedRef<SWindow, (ESPMode)0>, bool, bool) const [/home/ue4/UnrealEngine/Engine/Source/Editor/MainFrame/Private/Frame/MainFrameHandler.h:244]
libUE4Editor-MainFrame.so!FMainFrameModule::CreateDefaultMainFrame(bool, bool) [/home/ue4/UnrealEngine/Engine/Source/Editor/MainFrame/Private/MainFrameModule.cpp:227]
libUE4Editor-UnrealEd.so!EditorInit(IEngineLoop&) [/home/ue4/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/UnrealEdGlobals.cpp:124]
UE4Editor!GuardedMain(char16_t const*) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp:152]
libUE4Editor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/home/ue4/UnrealEngine/Engine/Source/Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:239]
libc.so.6!__libc_start_main(+0xe6)
UE4Editor!_start()

But I am able to use the UE4editor from exported copy of Engine on host machine and it runs fine.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 20 (8 by maintainers)

Most upvoted comments

im also getting same issue on linux mint os

Okay, testing a fresh build of the ue4-full image with the change from e162eda shows the Editor windows appearing successfully on the host display when rendering with Vulkan. My apologies for the oversight in the Dockerfile @jaybhanushali99 @quentingllmt @petergerten.

To any one who uses a AMD GPU:

Use vulkan-radeon instead of amdvlk, it fixed it for me

Same issue here: Host: Arch GPU: 2080ti UE: 4.26.2

works with --privileged

Strange, everything looks correct up until the crash. I wonder if this is a Vulkan bug in Unreal Engine 4.23. Does it still crash if you start the Editor with the -opengl4 flag to use OpenGL instead of Vulkan?