Linux Gaming

15269 readers
242 users here now

Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.

This page can be subscribed to via RSS.

Original /r/linux_gaming pengwing by uoou.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 1 year ago
MODERATORS
1
 
 

Cross-posted from "DLSS Frame Generation is now available on Proton Experimental" by @Blxter@lemmy.zip in !linux_gaming@lemmy.ml


Added support for NVIDIA Optical Flow API and DLSS 3 Frame Generation.

2
3
 
 

Memory managment

Resource and memory management were completely rewritten in order to use allocated video memory more efficiently:

  • Reduced fragmentation may reduce peak memory usage in games such as God of War by up to 1 GiB in extreme cases.
  • Memory defragmentation is now performed periodically to return some unused memory back to the system. The goal is not to reduce VRAM usage at all costs; instead this is done conservatively if the system is under memory pressure, or if a significant amount of allocated memory is unused. Keeping some unused memory is useful to quickly service subsequent allocations.

Note: Defragmentation is currently disabled on Intel's ANV driver, see #4434. The dxvk.enableMemoryDefrag config option can be set to enable or disable this feature via the the Configuration file.

Driver support

While technically not required, the new memory management works best on drivers that support both VK_EXT_memory_budget and VK_KHR_maintenance5. The Driver Support page was updated accordingly.

D3D8 / D3D9

Software cursor

Support for emulated cursors was implemented for the D3D9 cursor API, which allows games to set an arbitrary image as the mouse cursor. This fixes an issue in Dungeon Siege 2 (#3020) and makes the cursor appear correctly in Act of War and various older D3D8 games. (PR #4302)

Bildschirmfoto-693

Sampler pool

Unreal Engine 3 games using D3D9 have a quirk in that they pass a seemingly uninitialized value as the mipmap LOD bias. In order to avoid creating more Vulkan sampler objects than the driver supports, previous versions of DXVK would round the LOD bias to a multiple of 0.5, which could introduce visual inaccuracies. As a more correct soluition, DXVK will now destroy unused Vulkan samplers on the fly and use the correct LOD bias.

Note: The aforementioned workaround was never needed or used in the D3D11 implementation, it only affected D3D9.

Bug fixes and Improvements

  • On Nvidia driver version 565.57.01 and newer, strict float emulation is enabled by default for improved correctness. Games for which this option was already enabled may see a small performance uplift on this driver.
  • Made various changes to potentially improve performace on certain mobile GPUs. (includes PR #4358)
  • Display modes are now ordered by refresh rate to be more consistent with wined3d and fix issues with some games picking the wrong display mode.
  • Fixed a large number of wine test failures.
  • Ascension to the Throne: Fixed old regression that would cause parts of the ground to render black. (#4338, PR #4341)
  • Command & Conquer: Generals: Fixed performance issue caused by a missing D3D8 entry point. (PR #4342)
  • King's Bounty: Warriors of the North: Fixed water rendering issue. (#4344, PR #4350)
  • Tomb Raider: Legend: Fixed flickering geometry with strict float emulation. (#4319, PR #4442)
  • Rayman 3: Fixed a regression that caused rendering issues. (#4422, PR #4423)

D3D11 / DXGI

Resource management changes

In order to reduce system memory pressure and improve stability in 32-bit games, creating, uploading and discarding resources is now throttled if the amount of temporary staging memory allocations exceed a certain threshold. This fixes crashes in Total War: Rome II and a number of other games. Additionally, large DYNAMIC textures commonly used for video playback will no longer use a staging buffer.

The d3d11.maxDynamicImageBufferSize and d3d11.maxImplicitDiscardSize options were removed accordingly; affected games such as Total War: Warhammer III and Ryse: Son of Rome should now perform well by default, without excessive memory usage.

Note: These changes negatively affect CPU-bound performance in a number of games, including Shadow Warrior 2.

Bug fixes and Improvements

  • SEQUENTIAL swap effects are now implemented for DXGI swap chains, which allows games to read previously presented backbuffers. This fixes an issue wherein savegame thumbnails would appear black in certain visual novels. (https://github.com/ValveSoftware/Proton/issues/7017)
  • Devirtualized some D3D11 method calls to improve compatibility with Special K.
  • Fixed incorrect shader code generation for EvaluateAttributeSnapped.
  • Lock contention is reduced in certain games that use Deferred Contexts for rendering. This may improve performance on older CPUs in Sekiro: Shadows Die Twice and some other games.
  • Call of Duty: Modern Warfare 2 Campaign Remastered: Fixed a possible GPU hang. (#3884)
  • Diablo 4: Work around an issue where the game does not start if an integrated GPU is exposed.
  • The Sims 4: Work around a use-after-free bug in the game's D3D11 renderer for real this time. (#4360)
  • Vindictus: Work around potential rendering issues caused by uninitialized constant buffer data. (#4405, #4406)
  • Yakuza 0 and Yakuza Kiwami: Fixed a regression introduced in DXVK 2.4.1 that would cause these games to lock up on start. (PR #4297)

Miscellaneous changes

  • An SDL3 backend was added for dxvk-native. (PR #4326, #4404)
  • Fixed an issue introduced in DXVK 2.4.1 which would lead to error messages about failed buffer creation.
  • Fixed a long-standing issue where overlapping occlusion queries would lead to incorrect Vulkan usage. (#2698)
  • Fixed a rare issue wherein timestamp queries would not be tracked correctly and could read incorrect data.
  • Fixed various other issues that led to Vulkan validation errors in games such as Dishonored 2, Tales of Arise and The Sims 4.
  • Fixed various issues with MSVC builds. (PR #4444)
  • Disabled a workaround for boken render target clears on Nvidia drivers prior to version 560.28.03 on unaffected drivers.
  • If supported, VK_EXT_pageable_device_local_memory is now used to enable better driver-side memory management.
4
 
 

Title. Just noticed that it has not been updated since a while. Also, what are the best alternatives to it?

Thanks in advance.

5
 
 

Hotfix:

6
 
 

-bump wine to latest bleeding edge

-bump dxvk to latest git

-bump vkd3d-proton to latest git (contains additional MH Wilds fix)

-bump dxvk-nvapi to latest git

-import upstream lsteamclient changes

-import upstream vrclient changes

-add xdefiant patch (thanks tperalta82)

-auto-apply DRI_PRIME=1 when more than one gpu is detected. This allows Diablo IV to get passed the grey screen on igpu+dgpu systems.

-add protonfixes for silent hill 3 video playback

-add protonfixes for Horizon Zero Dawn Remastered internet connection (thanks UsernamesAreNotMyThing)

7
 
 

I use sway in Wayland, and tend to keep games on a separate workspace.

In X11, with i3, I'd frequently switch away from the game and leave it running when something was loading or progression was required, and do something else while waiting. In Wayland, pretty much every game would suspend while viewing another workspace, which drove me bananas. I assumed that this was toggleable functionality, but couldn't find where the toggle was.

Today, I finally ran across an answer to this and wanted to highlight it for anyone else who dislikes this behavior. By default, if a window is not visible, rendering will block. Setting the vk_xwayland_wait_ready=false environment variable will disable this functionality.

8
 
 

Hopefully this means these 13+ year old GPUs will still work with Wayland compositors that will eventually switch to Vulkan, beyond working with gaming and the like.

9
10
 
 

Navi 10: RX 5700, 5600
Navi 14: RX 5500, 5300

11
12
 
 

Hi guys!

I purchased a few months ago a new AMD PC, with a 7700 CPU, 32GB of RAM and a 7800XT GPU. I've noticed since, that my electric bill has been increased (compared to when I used an Intel i7 6700 with a 1070 GPU), I was wondering, is it possible to use a hybrid GPU setup kinda like laptops, where the iGPU from the CPU is activated for normal tasks, and the discrete GPU is only activated on demand? Would the GPU be unpowered/sleeping in the meantime?

....all this from a Linux perspective, I'm running Nobara 40.

Thanks!

13
14
 
 

On W*ndows I used DS4Wind*ws, and I have no issues with Steam, but how can I use it to play with RetoArch and Lutris?

Is DS4DRV the way?

15
 
 

Hi everyone,

I'm looking to buy a new gaming rig as my current machine feels like it's getting a bit dated. Been gaming on Linux for the past 6 months to a year. Ditched Windows around the time they announced ads and that recall bullshit.

What are your experiences with gfx cards and their drivers? I haven't bought AMD (gfx) in... Over 20 years. Online results show conflicting answers. Some swear by AMD, others say the drivers are unstable and they need to reboot when switching games. Other say never to update the drivers as long as stuff works.

Currently have an Nvidia 2080 super. Which has served me quite well. But newer games are starting to give it a hard time. Never really had any driver related issue.

I have a friend with an AMD gfx ( windows) and he's not super happy with it. Game/pc crashes related to it apparently. So I'm a bit on the fence about AMD.

I'm not sure what to look for in a cpu. I currently have an AMD. I guess more expensive is better and that's about it? Is there a noticeable benefit of the amd 9 vs AMD 7 series?

I'm not looking to overclock any of the hardware.

What's the standard regarding memory nowadays? I've got 16 in my current rig, and more can't hurt. I would never go under 16. Was looking at 32 but I've seen PCs with 64 and wondered if that is just overkill or not.

I've mainly games on nobara, but recently switched to bazzite as I've been meaning to give that a go. I didn't really have any complaints om nobara.

Side note: my monitor supports Nvidia whatsitcalled, but not free sync I think.

16
 
 

Been daily driving Bazzite for almost half a year now. I currently have two seperate 2TB SSD’s, one with Windows 11 and the other has Bazzite. Bought a 1TB SSD so I can migrate my Windows install to a smaller SSD since I much prefer Linux now.

Just need to stop being lazy and finish migrating everything I care about off my old Windows install onto my new 1TB Windows install, then I plan to install CachyOS onto the soon to be free’d up 2TB SSD, since I’m curious about Arch Linux. I’ll always have Bazzite to fall back on if need be, or god forbid, Windows.

17
18
 
 

Hotfix:

  • Add missing proton script python uuid import (which broke prefix creation)
19
 
 

Proton:

-wine updated to latest bleeding edge

-dxvk updated to latest git

-vkd3d-proton updated to latest git

-dxvk-nvapi updated to latest git

-ICU building + linking imported from upstream

-misc proton script fixes imported from upstream

Protonfixes:

-Audio fix for Mini Ninjas (thanks UsernamesAreNotMyThing)

-Fix typo'd mod support for ES: Oblivion (thanks MaxBosse)

-Disable esync/fsync in Disgaea 4 to prevent crash (thanks UsernamesAreNotMyThing)

Nothing major here, just a refresh of various parts that need updates from git, mostly to add new video playback fixes from upstream proton.

20
21
 
 

The developers of Apex Legends have announced that they're going to be blocking the game completely on Linux platforms including Steam Deck.

22
 
 

Edit: Tumbleweed and bazzite are currently the most attractive options based on what I've learned from the comments. I will trial run those and 1 or 2 others.

I am currently on Pop OS.

I am dissatisfied with the DE/UI and I've been playing with others but half the point of this distro is it's custom UI. So I figured I would try another. I have several criteria that may narrow it down.

  1. I am going to use KDE or KDE Plasma (preferred). This is the only non-negotiable criteria.

  2. I will be gaming. This means I would like relatively up to date kernel and software. Rolling or semi-rolling releases are preferred.

2.5. I also work from this pc. This mainly entails using discord and Firefox though so no special requirements. I do have 4 different sized monitors with 3 different refresh rates that I use for work. Only one for gaming. One is vertical. I can tell I'm pushing x to its limits with that setup.

  1. I would prefer Debian-based as that is what I'm used to and because .deb packages are so common.

  2. I don't want it to be a ton of effort to set up. Pop OS worked out of the box with my Nvidia GPU and all other hardware. I am willing to put in some effort though.

  3. I have been using and very much like apt and flatpak. This is not a requirement, just an observation.

  4. Wayland is neat

  5. Active community with lots of support to search through. Pop OS has been good for this as it's Ubuntu based and has its own great community.

Ultimately I want an easy to use desktop OS that uses some sort of KDE, supports up to date packages and drivers, supports most games and isn't a pain to maintain.

Here are some contenders that fit at least some of my requirements.

KDE Neon user edition

Opensuse tumbleweed

Kubuntu

Endeavor OS

Debian

Manjaro

Bazzite

Mint Debian edition

Right now I'm leaning toward KDE Neon, Kubuntu, or Debian (whatever the rolling release version is), but the others all have their draws. I've heard the aur is great but I have come across several applications only available in website downloads of Deb packages so I'm hesitant.

I have been using pop as my first desktop distro after Windows and I've enjoyed it a lot. I barely run into anything I can't solve with some effort and headache and not a single game I can't play. I'd like to keep it that way.

Now that that's out of the way, does anyone have suggestions? Am I looking in the wrong direction? Am I asking the wrong questions? Should I just install arch, live in the terminal, and throw away my mouse? /s

Thank you all for your advice in advance.

23
 
 

I smile every time I see an improvement that will make it easier for games to run near full speed while confined to a virtual machine. Another step forward for security and privacy.

24
 
 

cross-posted from: https://lemmy.ml/post/21962053

Valve announced a change for Steam today that will make things a lot clearer for everyone, as developers will now need to clearly list the kernel-level anti-cheat used on Steam store pages.

In the Steamworks Developer post Valve said: "We've heard from more and more developers recently that they're looking for the right way to share anti-cheat information about their game with players. At the same time, players have been requesting more transparency around the anti-cheat services used in games, as well as the existence of any additional software that will be installed within the game."

25
 
 

I tried to install heroic games launcher from the AUR, but when i tried to start it up, it segfaults just after start up.

Heroic games output:

(00:30:05) INFO:    [Legendary]:        Legendary location: /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/legendary
(00:30:05) INFO:    [Gog]:              GOGDL location: /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/gogdl
(00:30:05) INFO:    [Connection]:       Connectivity: check-online
(00:30:05) INFO:    [Connection]:       Pinging external endpoints
(00:30:05) INFO:    [Gog]:              Checking for existing gog manifests
APPIMAGE env is not defined, current application is not an AppImage
(00:30:05) WARNING: [Backend]:          Protocol already registered.
[7972:1029/003005.773928:ERROR:browser_main_loop.cc(278)] Gtk: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
[7972:1029/003005.773986:ERROR:browser_main_loop.cc(278)] Gtk: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
[7972:1029/003005.774016:ERROR:browser_main_loop.cc(278)] Gtk: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
(00:30:05) INFO:    [Legendary]:        Running command: LEGENDARY_CONFIG_PATH=/home/home/bangtan/.config/heroic/legendaryConfig/legendary /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/legendary --version
(00:30:05) INFO:    [Gog]:              Running command: GOGDL_CONFIG_PATH=/home/home/bangtan/.config/heroic/gogdlConfig /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/gogdl --auth-config-path /home/home/bangtan/.config/heroic/gog_store/auth.json --version
(00:30:05) INFO:    [Nile]:             Running command: NILE_CONFIG_PATH=/home/home/bangtan/.config/heroic/nile_config /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/nile --version
(00:30:06) INFO:    [Connection]:       Connectivity: online
(00:30:06) INFO:    [Backend]:          User Not Found, removing it from Store
(00:30:06) ERROR:   [Gog]:              Unable to syncQueued playtime, userData not present
(00:30:06) INFO:    [Gog]:              Running command: GOGDL_CONFIG_PATH=/home/home/bangtan/.config/heroic/gogdlConfig /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/gogdl --auth-config-path /home/home/bangtan/.config/heroic/gog_store/auth.json auth
(00:30:06) INFO:    [Backend]:          
System Information:
CPU: 12x AMD Ryzen 5 5600G with Radeon Graphics
Memory: 16.63 GB (used: 1.55 GB)
GPUs:
  GPU 0:
    Name: Advanced Micro Devices, Inc. [AMD/ATI] Navi 23 [Radeon RX 6600/6600 XT/6600M]
    IDs: D=73ff V=1002 SD=2413 SV=148c
    Driver: amdgpu
OS: Arch Linux 6.11.5-zen1-1-zen (linux)

The current system is not a Steam Deck
We are not running inside a Flatpak container

Software Versions:
  Heroic: 2.15.2 Emeth
  Legendary: 0.20.36 Urban Flight (Heroic)
  gogdl: 1.1.2
  comet: comet 0.1.2

  Nile: 1.1.2 Will A. Zeppeli

(00:30:06) INFO:    [Backend]:          Frontend Ready
(00:30:06) INFO:    [Backend]:          Checking for new Heroic Updates
(00:30:06) INFO:    [Backend]:          AreWeAntiCheatYet data downloaded
(00:30:06) INFO:    [Backend]:          Checking for current version changelog
(00:30:06) INFO:    [Frontend]:         Updated to a new version, cleaaning up the cache.
(00:30:06) INFO:    [Legendary]:        Running command: LEGENDARY_CONFIG_PATH=/home/home/bangtan/.config/heroic/legendaryConfig/legendary /opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux/legendary cleanup
[1]    7972 segmentation fault (core dumped)  heroic
view more: next ›