Troubleshooting voor Linux-games
Troubleshooting voor Linux-gamers
Er zijn ondertussen duizenden games voor Linux. Maar ze werken niet allemaal zonder problemen op alle systemen. Vaak heb je maar een paar ingrepen nodig om een spel eindelijk aan de praat te krijgen. Hieronder lees je waarop je moet letten, als het met een game onder Linux niet lukt.
De meeste Linux-games zijn net zo makkelijk te installeren en te starten als de Windows-versies. Maar hoewel er van veel games ondertussen ook een Linux-versie uitgebracht wordt, krijgt deze niet altijd dezelfde aandacht van de ontwikkelaars als zijn Windows-tegenhanger. Dan kan het wel eens gebeuren dat een spel niet wil starten, er grafische fouten optreden of voortdurende crashes het plezier vergallen.
Veel mensen gaan dan gewoon achterover zitten en hopen gelaten dat de ontwikkelaars met een patch op de proppen komen die het probleem verhelpt. Als je daar niet op wilt wachten, kun je veel problemen met speciale opstartopties, het installeren van ontbrekende bibliotheken of iets dergelijks ook zelf oplossen.
Een voorbeeld waarbij vindingrijke gamers snel met een oplossing in de Steamfora kwamen is het volgende. Bij de release van Firewatch had de fabrikant er niet aan gedacht dat bij Linux de bestandssystemen onderscheid maken tussen hoofdletters en kleine letters. Het probleem was door het hernoemen van de betreffende bestanden en directory's eenvoudig zelf op te lossen. Je hoefde dus niet op de patch van de producent te wachten.
De juiste distributie
Welke Linux-distributie het meest geschikt is voor gamen onder Linux, is een onderwerp van discussie onder Linux-gebruikers. In principe kun je met elke distributie gamen. Maar Steam en de meeste ontwikkelaars ondersteunen Ubuntu en Valves
eigen SteamOS, gebaseerd op Debian Testing.
Voor games kun je het best een redelijk moderne distributie gebruiken, want daarmee krijg je de nieuwste onderdelen en drivers. Zo kun je op voorhand al veel problemen omzeilen. De grafische drivers van Nvidia ondersteunen bijvoorbeeld pas vanaf driverversie 381.26 de nieuwe grafische interface Vulkan. Deze versie is voor Ubuntu in een repository te vinden, zodat hij makkelijk te installeren is. Maar dat geldt alleen voor nieuwere Ubuntu-versies. Ubuntu 16.04 is nieuw genoeg, maar ouder moet hij niet zijn. Met de nieuwste Ubuntuversie ben je meestal het beste af.
De verschillen bestaan hoofdzakelijk in de versienummers van bibliotheken en programma's. Als bibliotheken niet in de gewenste versie beschikbaar zijn of helemaal ontbreken, starten games vaak niet op. Kunnen ontbrekende pakketten niet vanuit de standaard repository's geïnstalleerd worden of functioneren de hieronder genoemde tips niet? Dan kun je vreemde repository's aankoppelen, die andere programma- of driverversies beschikbaar stellen. Maar pas op, het installeren van software uit vreemde bronnen kan de stabiliteit van het systeem in gevaar brengen of zelfs malware binnenhalen. Daarom kun je beter alleen software installeren uit bronnen waarvan je de aanbieders vertrouwt.
Optimale gra ische driver
Net als onder Windows bepalen de prestaties van de grafische hardware en de bijbehorende drivers ook onder Linux hoe goed of slecht games draaien. Actuele distributies installeren de juiste grafische drivers automatisch. Bij systemen met Nvidia GeForce- of heel nieuwe grafische chips moet je vaak zelf de handen uit de mouwen steken. Welke grafische driver de juiste is voor je pc, hangt af van factoren als distributie, grafische chip en het betreffende spel. Meer over dit onderwerp lees je in [1].
Om te achterhalen welke grafische hardware er in je computer zit en welke OpenGL-driver er gebruikt wordt, kun je de commandlinetool glxinfo gebruiken:
glxinfo | grep OpenGL
Bij Nvidia GeForce-chips zal dan de naam 'Nouveau' in verband met de driver opduiken. Deze wordt door de meeste distributies automatisch voor Nvidia-chips geïnstalleerd. Maar deze haalt maar een fractie van de potentiële prestaties uit de grafische chips. Voor gamen moet je dus vrijwel altijd de propriëtaire driver van Nvidia installeren. Daarbij kun je het beste de voorkeur geven aan de pakketten van je distributie en niet aan de driver-installer van de website van Nvidia. Want deze laatste vereist meer gevorderde kennis en laat zich niet zo goed in het systeem integreren. Met de voor de distributie geschikte pakketten verloopt de installatie daarentegen netjes en vlot.
Onder Ubuntu open je daarvoor het onderdeel 'Additional Drivers' via de dash. Daarin kies je op het gelijknamige tabblad de nieuwste driverversie, die in de beschrijving '-updates' bevat. Na een klik op 'Apply Changes', een of twee minuten wachttijd en een reboot is de driver klaar voor gebruik. Ook in andere distributies vind je via zoekmachines snel manieren om de driver te installeren.
Om een nieuwere driver te gebruiken dan door je Ubuntu-versie wordt aangeboden, kun je een extra pakketbron van de Ubuntu-community toevoegen en zo zelf de driver updaten (zie de link onderaan dit artikel). Met de volgende commando's voeg je de repository toe en vernieuw je de pakketlijst, zodat het systeem de nieuwe pakketten ook kent.
sudo add-apt-repository
ppa:graphics-drivers/ppa sudo apt-get update
Vervolgens update je de driver naar de nieuwste versie, op het moment van schrijven is de naam van het pakket nvidia-381:
sudo apt install nvidia-381
Het beste kun je daarna het systeem opnieuw opstarten om de nieuwe driver in gebruik te nemen.
Wordt bij de uitvoer van glxinfo Intel genoemd, dan gebruikt je systeem de gpu van je Intel-processor via de opensource driverfamilie 'intel'. Deze werkt behoorlijk goed, alternatieve drivers zijn er niet. Enkele nieuwe OpenGL-commando's waarmee Linux-games de 3D-functies van de grafische chip gebruiken, vereisen echter nieuwe, de afgelopen maanden pas uitgebrachte driverversies. Hetzelfde geldt voor nieuwe processors, die door de drivers van de distributie nog niet ondersteund worden. De Intel-drivers zijn echter nauw met kernonderdelen van de distributies verweven en daardoor niet zo makkelijk te updaten. In dit geval is het overstappen naar een nieuwere distributie vaak de simpelste manier om aan nieuwere drivers te komen.
Bij Radeon-chips van AMD ligt de situatie gecompliceerder. De meeste moderne grafische chips worden door de standaard geïnstalleerde driverfamilies 'radeon' en 'amdgpu' goed ondersteund. In de uitvoer van glxinfo komen deze aanduidingen vaak niet voor, want hun OpenGL-driver heet 'radeonsi'. Ook de grafische chips van de huidige Radeon Rx-series 400 en 500 worden door deze opensource drivers goed ondersteund – maar alleen bij de nieuwste distributies. Zoals bij de Intel-drivers is het erg ingewikkeld om nieuwere versies van de drivers handmatig te installeren. Naast