Vulkan driver can't do fractional scaling in Wayland mode and there is no X11 env var override
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
I'll be brief as to not waste your time:
- The Vulkan video driver does not have support for fractional DPI scaling in native Wayland mode. Therefore, the image looks blurry and the window size is wrong (scaled up)
- This does not happen if Retroarch runs in xWayland mode, where the window size is correct and the game is not blurry (at least under KDE Plasma)
- However, it is impossible to run Retroarch with the Vulkan driver in xWayland mode because currently it just unconditionally uses Wayland on Wayland sessions with no possibility of override. You can force the sdl2 driver to run in xWayland with
SDL_VIDEODRIVER=x11but there's no such thing for the Vulkan driver.
So my request is, of course, that fractional scaling is implemented eventually. But regardless of that there should really be an env var to force the Vulkan driver to operate in X11 mode. Sometimes xWayland is a superior experience to native Wayland and right now Retroarch is such a case.
Thanks.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Vulkan video driver and the existing SDL2 handling for SDL_VIDEODRIVER. Compare how Wayland and X11 are selected during Wayland sessions, then define whether the work covers only an X11 override or also fractional scaling; done means the selected mode produces the expected window size and image quality.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- desktop, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100