저는 amdgpu(xf86-video-amdgpu 19.1.0-1)를 사용하여 Xfce 데스크탑 환경에서 Manjaro GNOME 18.1.4를 실행하고 있습니다.
v-sync가 활성화된 상태에서 게임을 전체 화면으로 실행하고 Xfwm4의 작성기가 비활성화되면 화면이 몇 초 동안 멈추는 작은 "글리치"가 5초마다 발생합니다.오직게임이 전체 화면으로 실행 중일 때. Vsync가 활성화되고 Quakespasm이 실행되는 Gallium HUD의 모습은 다음과 같습니다.
Xfwm4에서 합성을 활성화하면 그래프에 다음이 표시되지만 "문제"는 남아 있습니다.
합성이 활성화된 창 모드에서 glxgears를 실행하면 "글리치"의 영향을 받지만 그래프에는 이것이 표시되지 않습니다.
이는 Quake Cramp의 잘못이 아니며 glxgears
Retroarch에서도 발생합니다.
실행시 xrandr --verbose
현재 사용중인 화면이 표시됩니다. 새로 고침 빈도는 60.02Hz입니다.
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP connected primary 1920x1080+0+0 (0x59) normal (normal left inverted right x axis y axis) 382mm x 215mm
Identifier: 0x55
Timestamp: 3131421
Subpixel: unknown
Gamma: 1.0:1.0:1.0
Brightness: 1.0
Clones:
CRTC: 0
CRTCs: 0 1 2 3 4 5
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
EDID:
00ffffffffffff0030e4e80400000000
001a0104952615780a0bb5a35955a027
0c505400000001010101010101010101
0101010101012e3680a070381f403020
35007ed71000001a0000000000000000
00000000000000000000000000fe004c
4720446973706c61790a2020000000fe
004c503137335746342d53504635004c
GAMMA_LUT_SIZE: 4096
range: (0, -1)
DEGAMMA_LUT_SIZE: 4096
range: (0, -1)
GAMMA_LUT: 0
range: (0, 65535)
CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0
0 1
DEGAMMA_LUT: 0
range: (0, 65535)
TearFree: auto
supported: off, on, auto
vrr_capable: 0
range: (0, 1)
max bpc: 8
range: (8, 16)
underscan vborder: 0
range: (0, 128)
underscan hborder: 0
range: (0, 128)
underscan: off
supported: off, on, auto
scaling mode: None
supported: None, Full, Center, Full aspect
link-status: Good
supported: Good, Bad
CONNECTOR_ID: 59
supported: 59
non-desktop: 0
range: (0, 1)
1920x1080 (0x59) 138.700MHz +HSync -VSync *current +preferred
h: width 1920 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 1080 start 1083 end 1088 total 1111 clock 60.02Hz
1680x1050 (0x5a) 138.700MHz +HSync -VSync
h: width 1680 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 1050 start 1083 end 1088 total 1111 clock 60.02Hz
1280x1024 (0x5b) 138.700MHz +HSync -VSync
h: width 1280 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 1024 start 1083 end 1088 total 1111 clock 60.02Hz
1440x900 (0x5c) 138.700MHz +HSync -VSync
h: width 1440 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 900 start 1083 end 1088 total 1111 clock 60.02Hz
1280x800 (0x5d) 138.700MHz +HSync -VSync
h: width 1280 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 800 start 1083 end 1088 total 1111 clock 60.02Hz
1280x720 (0x5e) 138.700MHz +HSync -VSync
h: width 1280 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 720 start 1083 end 1088 total 1111 clock 60.02Hz
1024x768 (0x5f) 138.700MHz +HSync -VSync
h: width 1024 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 768 start 1083 end 1088 total 1111 clock 60.02Hz
800x600 (0x60) 138.700MHz +HSync -VSync
h: width 800 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 600 start 1083 end 1088 total 1111 clock 60.02Hz
640x480 (0x61) 138.700MHz +HSync -VSync
h: width 640 start 1968 end 2000 total 2080 skew 0 clock 66.68KHz
v: height 480 start 1083 end 1088 total 1111 clock 60.02Hz
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
이 문제를 해결하기 위해 어디서 찾을 수 있는지 모르겠습니다. 다음 명령을 사용하여 xorg 구성 파일에서 변수 새로 고침을 활성화해 보았습니다.
Section "Device"
Identifier "AMD"
Driver "amdgpu"
Option "VariableRefresh" "true"
EndSection
제가 사용하고 있는 노트북(Asus ROG GL702zc)은 40~60Hz 사이의 Freesync를 지원하는데 왜 VRR을 활성화할 수 없는지 잘 모르겠습니다.
답변1
편집: Redshift가 문제를 일으키는 것을 발견했습니다! 그만두자마자 이런 일은 다시는 일어나지 않았습니다!
Xfce 세션을 사용하여 자동으로 실행되도록 설정했습니다.
이전 답변:
Xfwm4의 vblank_mode
Xfconf 설정을 으로 설정 off
하고 합성을 켜면 문제가 해결되는 것 같습니다. 이 작업을 수행한 후에는 더 이상 "결함"이 표시되지 않습니다(또는 더 미묘합니까?).
xfwm4 --replace --vblank=off &
이를 테스트하려면 respawn xfwm4를 실행 vblank_mode
하고 off
. 이 변경 사항을 영구적으로 적용하려면 를 실행하세요 xfconf-query -c xfwm4 -p /general/vblank_mode -t string -s "off" --create
.
그러나 유일한 문제는 화면이 찢어지는 현상이 발생한다는 것인데 이는 이상적이지 않습니다. 수직동기화는 꺼지네요 :(