Skip to content

VRR broken in Hyprland #4436

Description

@Tractix

Hyprland Version

System/Version info
Hyprland, built from branch HEAD at commit 03ebbe18ed8517ee22591eac82cd54322f42cb7d  (props: bump ver to 0.34.0).
Date: Mon Jan 1 12:03:15 2024
Tag: v0.34.0

flags: (if any)

Bug or Regression?

Bug

Description

I've noticed VRR doesn't seem to be working properly.

In Quake II RTX if I lower the graphical settings and get around 80ish fps, the refresh rate will constantly stay at 165hz on my monitor (checked using monitor's OSD) which it shouldn't. The monitor's refresh rate should match the game's fps.
If I up the graphical settings and get to 40 - 50fps (still within VRR range), the monitor's refresh rate will go wild switching quickly between 165hz to either 50/60 or 70 hz and will keep switching between those refresh rates and the screen backlight will sometimes flash.

On both Baldur's Gate 3 and FFXIV I get around 120 - 150 fps but the refresh rate will stay at 165hz all the time and not syncing up at all.

My VRR range is between 20hz and 165hz (check rtings link below). 165hz is my max refresh rate.

I've used VRR before on my older GPU (2060 Super) and when in VRR mode, the refresh rate always synced up with the game's fps staying similar both on Windows and X11 meaning it's not a monitor or cable issue.

I am on Arch Linux, I use 7900XT gpu and I have this monitor https://www.rtings.com/monitor/reviews/msi/optix-mag274qrf-qd hooked up via display port. This happens when VRR is set to 2 or 1 in hyprland config. In-game fps was checked using both mangohud and in-game fps counter. Vsync was turned off in-game. I also only use 1 monitor (the monitor listed above).

I've used env --unset=SDL_VIDEODRIVER %command% to launch BG3. I also use these enviromental variables if it matters:

EDITOR=/usr/bin/nano
DXVK_FRAME_RATE=160

QT_QPA_PLATFORM="wayland;xcb"
QT_QPA_PLATFORMTHEME=qt6ct
KITTY_ENABLE_WAYLAND=1
CLUTTER_BACKEND=wayland
GDK_BACKEND=wayland,x11
XDG_SESSION_TYPE=wayland
EGL_PLATFORM=wayland
#SDL_VIDEODRIVER=wayland
SDL_VIDEODRIVER="wayland,x11"

XDG_CURRENT_DESKTOP=Hyprland
XDG_SESSION_TYPE=wayland
XDG_SESSION_DESKTOP=Hyprland

QT_AUTO_SCREEN_SCALE_FACTOR=1
QT_WAYLAND_DISABLE_WINDOWDECORATION=1

How to reproduce

Run Quake II RTX, set settings graphical settings to high or low and notice how the in-game fps won't match the refresh rate on your monitor's OSD.

Run FFXIV or Baldur's Gate 3 and refresh rate will stay at max refresh rate.

Crash reports, logs, images, videos

My hyprland config: hyprland.txt
Hyprland log when I was running Quake II RTX at lower graphical settings and refresh rate was stuck at 165hz: hyprland.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions