-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot run Godot on virtual X desktop with xvfb-run and lavapipe #38428
Comments
Unfortunately, I don't think this is feasible yet. There is no stable software implementation of Vulkan yet, which is required to render Godot without having a GPU available. There are some efforts ongoing like Kazan, SwiftShader and Mesa's Vallium renderer, but it seems none of them have reached a state where they can be used as a daily driver yet. Here's hoping we'll be able to do this before Godot 4.0 is released 🙂 |
Closing, since #43444 is more descriptive. |
For the reference, #43444 is now fixed, but it's still true that Godot can't be run with
|
Same crash is now shown with Lavapipe On Nvidia graphics running
|
SwiftShader has been a conformant Vulkan 1.1 driver implementation since 2019-09-16. Since then, more features have been added, and games based on Unity's Universal Render Pipeline are supported. Please give it another try for running Godot, and if any issues are encountered feel free to file a bug at https://g.co/swiftshaderbugs. |
For now I don't think that SwiftShader is suitable for Godot, because I can't find easy way to install it on Ubuntu inside Github CI(no PPA or deb package for Ubuntu 20.04, compilation will take too much time). |
Thanks for the feedback. Note that the compilation time can be reduced drastically by using the Subzero JIT instead of the LLVM JIT. Specify I hope that helps. We'll look into creating a package, but note that SwiftShader evolves fast, and customizing a Debug build can provide a lot more useful information when issues are detected. |
Looks that SwiftShader support even Vulkan 1.2, but the main task of CPU based implementations of Vulkan in Godot is ability to run them inside Ci, but still I cannot find any method how install it in ~5 minutes(which is I think even a little too high value), so for now I'm looking at Lavapipe which for now crashes when opening editor and support only Vulkan 1.1, but probably it will be available out of box without needing to install any software. |
This could be solved by providing precompiled builds of SwiftShader. These will have to be compiled on an old enough Linux distribution to be compatible with as many distributions as possible (Ubuntu 18.04 should be an OK baseline for this nowadays). Maybe someone could fork the SwiftShader repository, add a GitHub Actions setup that uploads compiled artifacts, then manually download one of its artifacts and upload it to GitHub Releases for easy downloading from another CI system. |
I compiled SwiftShader with this instructions in Ubuntu 20.04 Docker:
Next I took on my computer(also Ubuntu 20.04)
And executing
Compiled |
@qarmin I tested with what compiled library and I'm getting the same error about not finding drivers. It's weird though, because if I follow your exact build exacts steps, the resulting library works fine for me. Here's a working verion: libvk_swiftshader.so.tar.gz And a Docker file that works for Ubuntu 18.04:
I also had to comment a validation in |
Godot version:
Godot 4.0(Vulkan) - 4.0.dev.custom_build. f5cd33f
it works fine with Godot 3.2 GLES 2, 3
OS/device including version:
Ubuntu 20.04
Issue description:
When I try to open master Godot 4.0 branch in virtual X desktop, then I got a crash:
Fixing this bug will help a lot with testing Godot with CI
Steps to reproduce:
The text was updated successfully, but these errors were encountered: