Gamescope

Introduction

Gamescope is an compositor (micro-compositor) by Valve that runs nested and isolated from the OS desktop compositors. This allow gaming specific tweaks and features to be implemented regardless of desktop environment support. It also used by default in Valve’s Steam Deck.

Features

Here are some of the well know features of gamescope tailored for gaming.

  • Resolution spoof to set or force a game to run at specific resolution and/or ratio (eg. 4:3 screen ratio stretch)

  • Upscalling patch regardless of game support, either AMD FSR or Nvidia Image Scalling (NIS) can be use.

  • Reshade support

  • HDR support

  • Frame limiter (useful for games that does not have built in frame limiter)

Installation

Gamescope package should included during steam installation as detailed here and does not need further configuration. If the package is not installed, you can install it manually using the following command.

sudo dnf install gamescope

For flatpak installation, use the following command.

flatpak install gamescope

Requirements

In order to use gamescope without issues, ensure that the following requirements are met based on your GPU:

  • AMD: Mesa 20.3 and above

  • Intel: Mesa 21.2 and above

  • Nvidia: Proprietary drivers 515.43.04 or above / Nvidia Open Kernel drivers

For fairly recent nvidia GPU user, most user reported better performance and experience when using the Nvidia Open Kernel Module drivers. You can try to install the Kernel Open Driver using the following command.

sudo dnf install rpmfusion-nonfree-release-tainted
sudo dnf swap akmod-nvidia akmod-nvidia-open

Nvidia users will also need to set nvidia_drm.modeset=1 in their system’s kernel parameters for gamescope to work properly. This can be done using the following command.

sudo grubby --update-kernel=ALL --args='nvidia-drm.modeset=1'

Usage

In order to run your games using gamescope, you will need to attach gamescope as the game launch option. Below is the example of launch option when using steam with no gamescope options.

gamescope -- %command%

To see the full list of options applicable for gamescope, run the following in your terminal.

gamescope --help

Below is a few example of common options used to launch games.

  • Run a game with a 1920x1080 resolution fixed at 60hz refresh rate.

    gamescope -W 1920 -H 1080 -r 60 -- %command%
  • Run a game with with FSR upscalling from 720p to 1440p

    gamescope -h 720p -H 1440 -F fsr -- %command%
    gamescope support both FSR and Nvidia Image Scalling (NIS) upscalling method, you can switch from -F fsr to -F nis if you want to use NIS as your upscaller.
  • Enable HDR rendering in supported games and displays

    gamescope --hdr-enabled -- %command%
  • Enable gamescope variable refresh rate (VRR) for supported displays

    gamescope --adaptive-sync -- %command%

You can combine multiple options based on your use case, it is recommended to read the options and its uses using the command gamescope --help on your terminal.