Black screen on 3d games

Hello :slight_smile:

So I switched to Garuda a few days ago In the hope of improving my gaming experience, It worked.. But only for 2D games.
All my 3D games are stuck on black screen when I try to launch them including those that was working perfetcly in my previous distro.

I tried several version of proton but no effect at all. Drivers seems good, everything else is good.

System:
  Kernel: 6.0.12-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=a8d7fe74-f63c-450e-9f2a-5f8a8dd2e1e5 rw rootflags=subvol=@
    quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
    resume=UUID=762ec7a2-4e8b-4bc6-bb39-6aa095c75679 loglevel=3 ibt=off
  Desktop: i3 v: 4.21.1 info: i3bar vt: 7 dm: LightDM v: 1.32.0
    Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Laptop System: Micro-Star product: GT70 2QD v: REV:0.C
    serial: <superuser required>
  Mobo: Micro-Star model: MS-1763 v: REV:0.C serial: <superuser required>
    BIOS: American Megatrends v: E1763IMS.515 date: 09/23/2014
Battery:
  ID-1: BAT1 charge: 66.4 Wh (98.2%) condition: 67.6/86.6 Wh (78.0%)
    volts: 12.5 min: 11.1 model: MSI BTY-M6D type: Li-ion serial: N/A
    status: not charging
CPU:
  Info: model: Intel Core i7-4710MQ bits: 64 type: MT MCP arch: Haswell
    gen: core 4 level: v3 note: check built: 2013-15 process: Intel 22nm
    family: 6 model-id: 0x3C (60) stepping: 3 microcode: 0x28
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 6 MiB desc: 1x6 MiB
  Speed (MHz): avg: 1601 high: 2497 min/max: 800/3500 scaling:
    driver: intel_cpufreq governor: schedutil cores: 1: 1757 2: 2122 3: 1410
    4: 2495 5: 800 6: 908 7: 820 8: 2497 bogomips: 39911
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
    vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data status: Unknown: No mitigations
  Type: retbleed status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
    STIBP: conditional, RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel 4th Gen Core Processor Integrated Graphics
    vendor: Micro-Star MSI driver: i915 v: kernel arch: Gen-5.75
    process: Intel 45nm built: 2010 ports: active: eDP-1 empty: VGA-1
    bus-ID: 00:02.0 chip-ID: 8086:0416 class-ID: 0300
  Device-2: NVIDIA GM204M [GeForce GTX 970M] vendor: Micro-Star MSI
    driver: nvidia v: 525.60.11 alternate: nouveau,nvidia_drm non-free: 525.xx+
    status: current (as of 2022-12) arch: Maxwell code: GMxxx
    process: TSMC 28nm built: 2014-19 pcie: gen: 1 speed: 2.5 GT/s lanes: 16
    link-max: gen: 3 speed: 8 GT/s bus-ID: 01:00.0 chip-ID: 10de:13d8
    class-ID: 0300
  Display: x11 server: X.Org v: 21.1.4 compositor: Picom v: git-98a5c
    driver: X: loaded: modesetting,nvidia unloaded: nouveau
    alternate: fbdev,intel,nv,vesa dri: crocus gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 model: Chi Mei Opto 0x1720 built: 2011 res: 1920x1080
    hz: 60 dpi: 128 gamma: 1.2 size: 382x215mm (15.04x8.46") diag: 438mm (17.3")
    ratio: 16:9 modes: 1920x1080
  API: OpenGL v: 4.6 Mesa 22.2.3 renderer: Mesa Intel HD Graphics 4600 (HSW
    GT2) direct render: Yes
Audio:
  Device-1: Intel 8 Series/C220 Series High Definition Audio
    vendor: Micro-Star MSI driver: snd_hda_intel v: kernel bus-ID: 00:1b.0
    chip-ID: 8086:8c20 class-ID: 0403
  Device-2: NVIDIA GM204 High Definition Audio vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 16
    link-max: gen: 3 speed: 8 GT/s bus-ID: 01:00.1 chip-ID: 10de:0fbb
    class-ID: 0403
  Sound API: ALSA v: k6.0.12-zen1-1-zen running: yes
  Sound Server-1: PulseAudio v: 16.1 running: no
  Sound Server-2: PipeWire v: 0.3.61 running: yes
Network:
  Device-1: Qualcomm Atheros Killer E220x Gigabit Ethernet
    vendor: Micro-Star MSI driver: alx v: kernel pcie: gen: 1 speed: 2.5 GT/s
    lanes: 1 port: d000 bus-ID: 03:00.0 chip-ID: 1969:e091 class-ID: 0200
  IF: enp3s0 state: down mac: <filter>
  Device-2: Intel Wireless 7260 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 04:00.0 chip-ID: 8086:08b1 class-ID: 0280
  IF: wlp4s0 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8
    bus-ID: 3-11:6 chip-ID: 8087:07dc class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 0 state: up address: <filter>
Drives:
  Local Storage: total: 931.51 GiB used: 165.98 GiB (17.8%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda maj-min: 8:0 vendor: HGST (Hitachi) model: HTS721010A9E630
    size: 931.51 GiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    type: HDD rpm: 7200 serial: <filter> rev: A3J0 scheme: MBR
Partition:
  ID-1: / raw-size: 914.41 GiB size: 914.41 GiB (100.00%)
    used: 165.98 GiB (18.2%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
  ID-2: /home raw-size: 914.41 GiB size: 914.41 GiB (100.00%)
    used: 165.98 GiB (18.2%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
  ID-3: /var/log raw-size: 914.41 GiB size: 914.41 GiB (100.00%)
    used: 165.98 GiB (18.2%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
  ID-4: /var/tmp raw-size: 914.41 GiB size: 914.41 GiB (100.00%)
    used: 165.98 GiB (18.2%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 15.54 GiB used: 107.5 MiB (0.7%)
    priority: 100 dev: /dev/zram0
  ID-2: swap-2 type: partition size: 17.1 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/sda2 maj-min: 8:2
Sensors:
  System Temperatures: cpu: 50.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 316 Uptime: 55m wakeups: 1 Memory: 15.54 GiB
  used: 4.87 GiB (31.3%) Init: systemd v: 252 default: graphical
  tool: systemctl Compilers: gcc: 12.2.0 Packages: pm: pacman pkgs: 1525
  libs: 491 tools: pamac,paru,yay Shell: Zsh v: 5.9 running-in: xfce4-terminal
  inxi: 3.3.24
Garuda (2.6.10-1):
  System install date:     2022-12-10
  Last full system update: 2022-12-16 ↻
  Is partially upgraded:   No
  Relevant software:       NetworkManager
  Windows dual boot:       <superuser required>
  Snapshots:               Snapper
  Failed units:          

Hi, welcome! :wave:
Are these native games, Steam games, Wine games? Sounds like Steam and Lutris if you're using Proton. Maybe it'd be helpful to mention some of the games you're attempting to play in case someone else has experienced the same thing as you. ^^
Since you didn't specify what you're running with, here are a few ideas.

If you're using Lutris, are you trying to run the games via Lutris' versions of Wine, or system Wine? Try toggling DXVK and see if anything changes. I've had instances where it causes black windows, though not specifically for 3D games.
Make sure you also have all the required dependencies, like d3d# etc. Speaking of d3d, maybe try emulating it with WineD3D using this command in Steam, since DXVK can crash some games: PROTON_USE_WINED3D=1 %command%

With Lutris, try enabling debug info output in the runner options and running it with lutris -d, as it may tell you what's going wrong and help us troubleshoot. :slight_smile:
If you're using Wine, maybe try wine-staging too if you haven't already. I highly doubt this is the cause of the issue though.

Last idea, I see you've got a dedicated NVIDIA card. Have you tried running the games with it? In Lutris it's easy, just find NVIDIA prime render offload and discrete graphics in the configuration > system settings. For Steam, you'll need to use prime-run %command%. More on that here: Switching between integrated and dedicated graphics | Garuda Linux wiki

5 Likes

So my games are steam games, no lutris but I'll try with it.

All the dependencies I know of are installed : Vulkan, wine and Proton.

PROTON_USE_WINED3D=1 %command% : New error: GPU was not supported please check your GPU driver.
prime-run %command% : no change

So I tried mhwd and got video-nvidia-prime-render-offload config.

Then nvidia-xconfig :

new configuration file written to '/etc/X11/xorg.conf'

I'm maybe going too far into config I don't fundamentally understand ^^,

Just try wine-staging.. nop same result.

At my understanding there are some weird shenanigans that append with my GPU driver.

Kind of lost here, thank for your help

1 Like

Try shutting off the compositor before you start the game. This isn’t handled automatically like it is in KDE, unless you explicitly set it up (this thread has some ideas: https://libreddit.garudalinux.org/r/linux_gaming/comments/too24j/disabling_picomcompton_while_in_a_game/).

3 Likes