You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here's a cool GIF of our game Blocky Ball. This game is released on Steam and made with Unity. We are porting it to Godot as a sequel Blocky Ball OT:
Describe the problem or limitation you are having in your project
We want to support as many platforms as possible including Linux! With Wayland being the new and cool kid on the block, it is important to support this compositor so everyone can be an awesome Blocky Baller! In testing the different platforms we tend to support, I found Blocky Ball ran great on X11 and Wayland, but horrible on XWayland. Going into fullscreen on XWayland would slash the framerate from 60 to 40 for no perceivable reason. It even performed better in windowed mode but stretched out across multiple monitors (ie significantly higher resolution).
Describe the feature / enhancement and how it helps to overcome the problem or limitation
The solution is simple! Default the linux display driver to Wayland! I tested on an X11 compositor and the exported build successfully fell back to X11 when it couldn't find Wayland. Although it did log an error message which I think we should replace with an info message and only error if it failed to find all fallbacks.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Super simple. Make "default" for Driver.linuxbsd point to Wayland:
If this enhancement will not be used often, can it be worked around with a few lines of script?
It can easily be worked around by setting the dropdown to Wayland manually. However, by defaulting to Wayland, we will have more video games created by Godot devs that out of the box support Wayland and X11 resulting in a cohesive and natural experience for end users!
It will also have the side effect of pretty much resolving all XWayland issue as we will no longer need to worry about XWayland! :) See here: godotengine/godot#78581
Is there a reason why this should be core and not an add-on in the asset library?
See explanation above.
The text was updated successfully, but these errors were encountered:
Current Wayland display server implementation is missing multi-window support and some other features. Setting it as default will limit editor usability, so it's unlikely to happen until Wayland feature support is on par with X11.
We could make native Wayland support the default for exported projects (which use embedded subwindows by default already), but not for the editor. However, this would introduce difficult-to-debug issues as exported projects would use a different display driver by default.
Current Wayland display server implementation is missing multi-window support and some other features. Setting it as default will limit editor usability, so it's unlikely to happen until Wayland feature support is on par with X11.
Ah I see. Do we have a tracker for features that will get Wayland on par with X11? Then we could revisit once that is the case.
We could make native Wayland support the default for exported projects (which use embedded subwindows by default already), but not for the editor. However, this would introduce difficult-to-debug issues as exported projects would use a different display driver by default.
I like this idea! Would we run into any potential feature parity issues as @bruvzg pointed out?
Calinou
changed the title
Default to wayland display server on linux
Default to Wayland display server on Linux
Jan 17, 2025
Describe the project you are working on
Here's a cool GIF of our game Blocky Ball. This game is released on Steam and made with Unity. We are porting it to Godot as a sequel Blocky Ball OT:
Describe the problem or limitation you are having in your project
We want to support as many platforms as possible including Linux! With Wayland being the new and cool kid on the block, it is important to support this compositor so everyone can be an awesome Blocky Baller! In testing the different platforms we tend to support, I found Blocky Ball ran great on X11 and Wayland, but horrible on XWayland. Going into fullscreen on XWayland would slash the framerate from 60 to 40 for no perceivable reason. It even performed better in windowed mode but stretched out across multiple monitors (ie significantly higher resolution).
Describe the feature / enhancement and how it helps to overcome the problem or limitation
The solution is simple! Default the linux display driver to Wayland! I tested on an X11 compositor and the exported build successfully fell back to X11 when it couldn't find Wayland. Although it did log an error message which I think we should replace with an info message and only error if it failed to find all fallbacks.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Super simple. Make "default" for
Driver.linuxbsd
point to Wayland:If this enhancement will not be used often, can it be worked around with a few lines of script?
It can easily be worked around by setting the dropdown to Wayland manually. However, by defaulting to Wayland, we will have more video games created by Godot devs that out of the box support Wayland and X11 resulting in a cohesive and natural experience for end users!
It will also have the side effect of pretty much resolving all XWayland issue as we will no longer need to worry about XWayland! :) See here: godotengine/godot#78581
Is there a reason why this should be core and not an add-on in the asset library?
See explanation above.
The text was updated successfully, but these errors were encountered: