您尚未登录。

#1 2024-11-16 11:31:01

站台上的车
会员
注册时间: 2024-01-08
帖子: 15

[已解决]hyprland设置缩放率大于1时steam启动的游戏分辨率自动下降的问题

我在hyprland.conf文件中设置缩放为1.5,这时启动steam就会出现缩放但模糊的情况,启动军团要塞2时最高分辨率(或“native”分辨率)会自动以(1920/1.5)*(1080/1.5)为最高分辨率无法上调

monitor=,1920x1080@60,auto,1.5


之后也按照kimi的说法尝试用.profile添加参数来解决,但无用

export SDL_VIDEO_FULLSCREEN_HEAD=1
export SDL_VIDEO_CENTERED=1
export SDL_VIDEODRIVER=x11


又尝试对steam.desktop进行修改,但无用

Exec=sh -c "export SDL_VIDEO_FULLSCREEN_HEAD=1; export SDL_VIDEO_CENTERED=1; /usr/bin/steam -res 1920x1080 %U"

但我使用的是笔记本,屏幕小,需要1.5倍缩放,但是每次启动steam玩游戏又会遇到这种分辨率无法上调的问题
请问各位有什么办法能单独设置steam里游戏的分辨率吗?

最近编辑记录 站台上的车 (2024-11-27 16:11:56)


要发车了,谁要登上学习(arch)的火车?:)

离线

#2 2024-11-16 15:37:48

BRS5672023
会员
注册时间: 2020-07-07
帖子: 131

Re: [已解决]hyprland设置缩放率大于1时steam启动的游戏分辨率自动下降的问题

大概有两种方法吧,第一种是用 gamescope 启动游戏(需要在启动参数里设置分辨率);第二种是在 hyprland 里设置 force_zero_scaling 这个 xwayland 的选项,见 XWayland,但是这样比如 steam 客户端就会没有缩放,而且鼠标指针也和 wayland client 的鼠标指针的大小对不上(不过前者 xwayland client 在有缩放的情况下其界面和鼠标指针也是糊的。。),这种情况下可以创建 Xresources 文件并使用 xrdb 来导入设置,分别见 X ResourcesLoad resource file,steam 客户端应该会读取这个方法设置的缩放。。

就是感觉 xwayland 仍有这样的问题,我的桌面显示器仍然用的是 2K@100% 的配置。。

离线

#3 2024-11-23 10:02:32

站台上的车
会员
注册时间: 2024-01-08
帖子: 15

Re: [已解决]hyprland设置缩放率大于1时steam启动的游戏分辨率自动下降的问题

按照楼上的说法查了一下,对于老的x软件,似乎确实存在在xwayland下无法支持非整数缩放完美按分辨率显示的问题:(

但似乎有一个解决办法:使用gamescope,这个软件包可以单独为steam游戏等提供混成器服务(但好奇怪啊,在混成器里用混成器......),具体方法如wiki所说:
https://wiki.archlinuxcn.org/wiki/Gamescope

$ gamescope -W 1920 -H 1080 -r 60 -- steam

 

但是用这个东西启动steam非常诡异,steam的分辨率是正常了,缩放也和别的软件不一样了,但却无法占满窗口,连启动的游戏也是一样!甚至无法全屏!

接下来我打算尝试用终端启动steam游戏看一看了


要发车了,谁要登上学习(arch)的火车?:)

离线

#4 2024-11-27 16:01:24

站台上的车
会员
注册时间: 2024-01-08
帖子: 15

Re: [已解决]hyprland设置缩放率大于1时steam启动的游戏分辨率自动下降的问题

BRS5672023 说:

第二种是在 hyprland 里设置 force_zero_scaling 这个 xwayland 的选项,见 XWayland

谢谢老哥,解决了!其实方法就在hyprland的wiki里:
https://wiki.hyprland.org/Configuring/XWayland/


禁用xwayland的缩放功能就可以了,具体方法就是在monitor=,highres,auto,2参数下面加上这些:

monitor = , highres, auto, 2
#在这个参数下面加下面的东西

# unscale XWayland
xwayland {
  force_zero_scaling = true
}

# toolkit-specific scale
env = GDK_SCALE,2
env = XCURSOR_SIZE,32

就行了!


但不得不说,老的x软件转移到wayland上真的是举步维艰啊,哪怕是xwayland也有这么多的问题,希望快快走完这段路吧:)


要发车了,谁要登上学习(arch)的火车?:)

离线

页脚