Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice
  2. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  3. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice

Vulkan Headless Linux

Discussion in 'Graphics Experimental Previews' started by piezas, Apr 21, 2017.

  1. piezas

    piezas

    Joined:
    Sep 5, 2013
    Posts:
    3
    Is headless rendering supported in any form under Linux and Vulkan. I'm using driver version Nvidia 378 and 389, both of which support headless rendering without requiring X. However I guessed this was programmed specifically against X. The system has been setup with a displayless X server that works for other Vulkan apps that require X. However, Unity crashes with the included error log:

    It seems as if even though Vulkan is detected correctly, some library calls are picking up a width/height that is 0 and assuming there is no X. I'm hoping that there is a solution to configuring X that is outside of requiring a Unity fix.


    Desktop is 0 x 0 @ 0 Hz
    [Vulkan init] extensions: count=7
    [Vulkan init] extensions: name=VK_KHR_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
    [Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_display, enabled=1
    [Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory_capabilities, enabled=0
    [Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
    Vulkan detection: 2
    Initialize engine version: 5.6.0f3 (497a0f351392)
    GfxDevice: creating device client; threaded=1
    [Vulkan init] extensions: count=7
    [Vulkan init] extensions: name=VK_KHR_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
    [Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_display, enabled=1
    [Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory_capabilities, enabled=0
    [Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
    [Vulkan init] extensions: count=11
    [Vulkan init] extensions: name=VK_KHR_swapchain, enabled=1
    [Vulkan init] extensions: name=VK_KHR_maintenance1, enabled=0
    [Vulkan init] extensions: name=VK_KHR_shader_draw_parameters, enabled=0
    [Vulkan init] extensions: name=VK_KHR_sampler_mirror_clamp_to_edge, enabled=0
    [Vulkan init] extensions: name=VK_EXT_shader_subgroup_ballot, enabled=0
    [Vulkan init] extensions: name=VK_EXT_shader_subgroup_vote, enabled=0
    [Vulkan init] extensions: name=VK_NV_dedicated_allocation, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory, enabled=0
    [Vulkan init] extensions: name=VK_NV_glsl_shader, enabled=0
    [Vulkan init] extensions: name=VK_NVX_device_generated_commands, enabled=0
    Vulkan API version 1.0.37
    Vulkan vendor=[NVIDIA] id=[10de]
    Vulkan renderer=[Tesla K80] id=[102d]
    Vulkan device type 2
    Vulkan driverversion=[0x5e824000] uint=[1585594368]
    Vulkan: default RenderTexture HDR format: 11 (109)
    Vulkan PSO: cache data not found [path=/home/localuser/.cache/unity3d/DefaultCompany/EncodeTest/vulkan_pso_cache.bin]
    AudioManager: Using PulseAudio: Default Output Device
    Begin MonoManager ReloadAssembly
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll (this message is harmless)
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Networking.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Networking.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Analytics.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Analytics.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.Unity.dll (this message is harmless
    )
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.Unity.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.Threading.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/System.Threading.dll into Unity Child Domain
    - Completed reload, in 0.149 seconds
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.Core.dll (this message is harmless)
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.dll (this message is harmless)
    Error getting system window info: Video subsystem has not been initialized
    Vulkan is currently only supported on X11