hyprland-wiki/pages/Configuring/Tearing.md

59 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2023-09-28 22:58:51 +02:00
Screen tearing is used to reduce latency and/or jitter in games.
## Enabling tearing
To enable tearing:
- Set `general:allow_tearing` to `true`. This is a "master toggle"
2023-09-29 02:19:40 +02:00
- Add `env = WLR_DRM_NO_ATOMIC,1` to your Hyprland config. This disables the usage of a newer kernel DRM API that doesn't support tearing yet.
2023-09-28 22:58:51 +02:00
- Add an `immediate` windowrule to your game of choice. This makes sure that Hyprland will tear it.
{{< hint type=note >}}
Please note that tearing will only be in effect when the game is in fullscreen and the only thing visible on the screen.
{{< /hint >}}
Example snippet:
```env
general {
allow_tearing = true
}
env = WLR_DRM_NO_ATOMIC,1
windowrulev2 = immediate, class:^(cs2)$
```
{{< hint type=warning >}}
If you experience graphical issues, you may be out of luck. Tearing support is experimental.
See the likely culprits below.
{{< /hint >}}
## Common issues
2023-09-28 23:06:29 +02:00
### No tearing at all
Make sure your windowrules are matching and you have the master toggle enabled.
2023-09-29 02:19:40 +02:00
Also make sure nothing except for your game is showing on your monitor. No notifications, overlays, lockscreens,
bars, other windows, etc. (on a different monitor is fine)
2023-09-28 23:06:29 +02:00
### Apps that should tear, freeze
Almost definitely means your GPU driver does not support tearing, like e.g. Intel's.
Please _do not_ report issues if this is the culprit.
2023-09-28 22:58:51 +02:00
### Graphical artifacts (random colorful pixels, etc)
2023-09-28 23:06:29 +02:00
Likely issue with your graphics driver.
2023-09-28 22:58:51 +02:00
Please _do not_ report issues if this is the culprit. Unfortunately, it's most likely your GPU driver's fault.
Could be the below as well
### Other graphical issues
2023-09-28 23:06:29 +02:00
or
### Hyprland instantly crashes on launch
2023-09-28 22:58:51 +02:00
Likely issue with `WLR_DRM_NO_ATOMIC`.
NO_ATOMIC forces the use of a legacy, less tested drm API.
Please _do not_ report issues if this is the culprit. Unfortunately, you will have to wait for the Linux kernel to support
tearing page flips on the atomic API.