27 giugno 2024

Ottimizzazione di Linux per i giochi


introduzione

Questa guida è solo per Arch e Ubuntu. Dovrebbero funzionare anche eventuali derivati ​​come Manjaro, Mint, PopOS, ecc.
Se la tua distribuzione non è qui, riscontri problemi o hai altre aggiunte a questa guida, lascia un commento e lo aggiungerò. Qualsiasi aiuto è più che benvenuto :)
Se non sei un utente Linux, consulta la mia altra guida su Come scegliere la distribuzione giusta, installarla e poi tornare per ottimizzarla per i giochi :)

Abilita Multilib

Multilib è richiesto da Steam, quindi se stai utilizzando Steam puoi saltare questo passaggio. Se non riesci a trovare Steam nei tuoi repository, questo è il tuo problema.

Arch Linux, Manjaro, Chakra, ecc.:

Modifica /etc/pacman.conf e decommenta la sezione multilib.

sudo nano /etc/pacman.conf

Rimuovi il # davanti a tutte le righe della sezione multilib, quindi salva ed esci con CTRL + X ed esegui

sudo pacman -Syyuu

Se stai utilizzando KDE assicurati di installare lib32-fontconfig con il seguente comando

sudo pacman -S lib32-fontconfig

Ubuntu, PopOS, Mint, Elementare, ecc.:

Aggiungi l'architettura.

sudo dpkg --add-architecture i386

Aggiorna il gestore pacchetti

sudo apt-get update

Aggiornamento a pacchetti più recenti

sudo apt-get dist-upgrade

Driver GPU

Avere i giusti driver GPU è importante, altrimenti i giochi non funzioneranno correttamente.
Se hai una GTX9xx o una versione successiva hai bisogno della versione del driver 430. Se hai una GTX 8xx o una versione inferiore hai bisogno della versione del driver 418 e se hai una GTX5xx o una versione precedente hai bisogno della versione del driver 390. Scegli la versione del driver giusta. Se hai anche una scheda più vecchia, controlla manualmente quale driver ti serve: https://www.nvidia.com/Download/index.aspx?lang=en-us
Se hai una scheda AMD ti serve solo la versione più recente.

Arch Linux, Manjaro, Chakra, ecc.:

Nvidia

Per la Nvidia più recente hai bisogno di questi pacchetti, quindi installali.

sudo pacman -S nvidia nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader

Per Nvidia 390 hai bisogno di questi pacchetti, quindi installali.

sudo pacman -S nvidia-390xx nvidia-390xx-settings nvidia-390xx-utils lib32-nvidia-390xx-utils lib32-opencl-nvidia-390xx opencl-nvidia-390xx libvdpau libxnvctrl-390xx vulkan-icd-loader lib32-vulkan-icd -caricatore

AMD

hai bisogno di questi pacchetti quindi installali se hai una GPU AMD

sudo pacman -S mesa lib32-mesa mesa-vdpau lib32-mesa-vdpau lib32-vulkan-radeon vulkan-radeon glu lib32-glu vulkan-icd-loader lib32-vulkan-icd-loader

Entrambi

Ora aggiorna e riavvia

sudo pacman -Syu && sudo reboot

Ubuntu, PopOS, Mint, Elementare, ecc.:

Nvidia

Per Nvidia è necessario aggiungere un repository

sudo add-apt-repository ppa:graphics-drivers/ppa && sudo apt-get upgrade

Per Nvidia 440 hai bisogno di questi pacchetti, quindi installali.

sudo apt install nvidia-graphics-drivers-440 nvidia-settings vulkan vulkan-utils

Per Nvidia 430 hai bisogno di questi pacchetti, quindi installali.

sudo apt install nvidia-graphics-drivers-430 nvidia-settings vulkan vulkan-utils

Per Nvidia 418 hai bisogno di questi pacchetti, quindi installali.

sudo apt install nvidia-graphics-drivers-418 nvidia-settings vulkan vulkan-utils

Per Nvidia 390 hai bisogno di questi pacchetti, quindi installali.

sudo apt install nvidia-graphics-drivers-390 nvidia-settings vulkan vulkan-utils

Per Nvidia 340 hai bisogno di questi pacchetti, quindi installali.

sudo apt install nvidia-graphics-drivers-340 nvidia-settings vulkan vulkan-utils

AMD

Per le GPU AMD è necessario aggiungere anche un repository

sudo add-apt-repository ppa:oibaf/graphics-drivers && sudo apt-get update && sudo apt-get upgrade

Successivamente installa i file necessari per le GPU AMD

sudo apt-get install libvulkan1 mesa-vulkan-drivers vulkan-utils

Entrambi

Ora riavvia

sudo riavviare

Se usi Gnome o GDM potresti dover disabilitare Wayland, non è sempre così, ma lo includo qui per ogni evenienza, se il tuo sistema non si riavvia puoi provare questo

sudo nano /etc/gdm/custom.conf

Rimuovi il # davanti alla riga #WaylandEnable=false e dovrebbe forzare Xorg.

kernel Linux

Installare il kernel più recente è generalmente il passaggio al kernel più semplice. Sono disponibili altri kernel, li includerò in seguito.
Per installare il kernel più recente

Arch Linux, Manjaro, Chakra, ecc.:

Questa è l'impostazione predefinita in Arch, non è necessario fare nulla, sarà presente il kernel più recente.

Ubuntu, PopOS, Mint, Elementare, ecc.:

Il modo più semplice è usare ukuu. Per prima cosa dobbiamo installarlo.

sudo add-apt-repository ppa:teejee2008/ppa && sudo apt-get update && sudo apt-get install ukuu

Ora ukuu è installato, in questo programma puoi selezionare il kernel stabile più recente, fare clic su Installa e al riavvio verrà utilizzato il nuovo kernel. Non rimuovere il vecchio kernel. Se qualcosa va storto puoi selezionare quale kernel avviare nella schermata di grub all'avvio e rimuovere il kernel che ti dà problemi.

Modalità di gioco selvaggia

Gamemode [github.com] mette tutto il tuo hardware in modalità prestazioni, risolve alcuni problemi comuni e sembra semplicemente fantastico: P

Arch Linux, Manjaro, Chakra, ecc.:

Gamemode è in AUR ed esegui i seguenti comandi per installare gamemode.

git clone https://aur.archlinux.org/gamemode.git && cd gamemode && makepkg -si && cd

stessa cosa per la modalità di gioco a 32 bit.

git clone https://aur.archlinux.org/lib32-gamemode.git && cd lib32-gamemode && makepkg -si && cd

Ubuntu, PopOS, Mint, Elementare, ecc.:

Installa le dipendenze

apt install meson libsystemd-dev pkg-config ninja-build git libdbus-1-dev libinih-dev

Clona il repository

git clone https://github.com/FeralInteractive/gamemode.git

Cambia la directory nella cartella appena scaricata

modalità di gioco su CD

Cambia l'albero nella versione più recente

git checkout 1.5.1

Esegui lo script di installazione

./bootstrap.sh

Tutte le distribuzioni incluse Arch e Ubuntu

Ora che è installato dobbiamo abilitare il servizio con questo comando

systemctl --user abilita gamemoded && systemctl --user avvia gamemoded

Per utilizzare gamemode per supertuxkart, ad esempio, esegui questo terminale

gamemoderun supertuxkart

Per usarlo su Steam, modifica l'opzione di avvio del gioco desiderato su

gamemoderun %comando%

Se gamemode non viene eseguito, prova a renderlo eseguibile:

sudo chmod +x /usr/bin/gamemoderun

Se gamemoderun non funziona, prova questo come comando di avvio:

LD_PRELOAD=$LD_PRELOAD:/usr/lib/x86_64-linux-gnu/libgamemodeauto.so.0 %comando%

Miglioramenti di Nvidia

Gli utenti Nvidia potrebbero voler abilitare tutte le opzioni elencate qui per migliorare le prestazioni nei giochi
Force Full Composition Pipeline evita lo strappo dello schermo lasciando che sia la GPU a eseguire tutto il ridimensionamento.
Triple Buffer evita rallentamenti nel gameplay. Consente un flusso di dati anziché blocchi di dati.
IndirectGLXProtocol forza il gioco a comunicare direttamente con i driver Nvidia.
Coolbits consente l'overclock della tua scheda quale modalità di gioco utilizzerà.

Arch Linux, Manjaro, Chakra, ecc.:

Crea un file di configurazione Xorg:

sudo nvidia-xconfig

Spostalo nella directory giusta:

sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.d/20-nvidia.conf

Modifica il file con il seguente comando

sudo nano /etc/X11/xorg.conf.d/20-nvidia.conf

Aggiungi queste righe nella sezione "Dispositivo" tra le altre opzioni

Opzione "TripleBuffer" "on" Opzione "Coolbits" "28"

Aggiungi queste righe nella sezione "Schermo" tra le altre opzioni.

Opzione "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}" Opzione "AllowIndirectGLXProtocol" "off"

Prova questo con rischi, sicuramente causerà l'arresto anomalo di GNOME, non sono sicuro degli altri DE,
basta aggiungerlo alla fine del file

Sezione "Estensioni" Opzione "Composito" "Disabilita" EndSection

Se riscontri problemi, premi semplicemente CTRL ALT F3 per passare a un accesso tty diverso, esegui il comando per modificare nuovamente il file e metti un # davanti alle opzioni che ti danno problemi e riavvia
In alternativa puoi semplicemente rimuoverlo completamente il file con il seguente comando e riavviare

sudo rm /etc/X11/xorg.conf.d/20-nvidia.conf

Ubuntu, PopOS, Mint, Elementare, ecc.:

Crea un file di configurazione Xorg:

sudo nvidia-xconfig

Modifica il file con il seguente comando

sudo nano /etc/X11/xorg.conf

Aggiungi queste righe nella sezione "Dispositivo" tra le altre opzioni

Opzione "TripleBuffer" "on" Opzione "Coolbits" "28"

Aggiungi queste righe nella sezione "Schermo" tra le altre opzioni.

Opzione "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}" Opzione "AllowIndirectGLXProtocol" "off"

Prova questo con rischio, sicuramente causerà l'arresto anomalo di GNOME, non sono sicuro degli altri DE,
basta aggiungerlo alla fine del file

Sezione "Estensioni" Opzione "Composito" "Disabilita" EndSection

Se riscontri problemi, premi semplicemente CTRL ALT F3 per passare a un accesso tty diverso, esegui il comando per modificare nuovamente il file e metti un # davanti alle opzioni che ti danno problemi, Molto probabilmente l'ultima
In alternativa tu puoi semplicemente rimuovere completamente il file con il seguente comando

sudo rm /etc/X11/xorg.conf

Listrangolo

Libstrangle [gitlab.com] è uno strumento che ti aiuta a controllare i framerate ma anche le impostazioni vsync. Ciò è particolarmente utile per i giochi che non supportano queste funzionalità. Vorresti dimezzare il framerate per farlo funzionare meglio, risparmiare energia o semplicemente dare una pausa al tuo hardware.
Se esegui Arch sarà in AUR, per le altre distribuzioni devi eseguire i seguenti comandi

Libstrangle può essere utilizzato in molteplici modi a seconda di ciò che si desidera ottenere.
Per utilizzare libstrangle puoi semplicemente digitare strangle e quindi la quantità di frame che desideri eseguire. Di seguito sono riportati alcuni esempi, ma le funzionalità che probabilmente utilizzerai sono Vsync che usi utilizzando l'opzione -v, le regole per OpenGL e Vulkan sono diverse, ecco cosa fa ciascun numero per le diverse API.
OpenGL 0 Forzatura spegnimento, 1 Forzatura accensione, n - Sincronizzazione con frequenza di aggiornamento
Vulkan 0 Forzatura spegnimento, 1 Modalità casella di posta, 2 Sincronizzazione vsync tradizionale, 3 Sincronia vsync adattivo
Puoi anche limitare il gioco a seconda dello stato di alimentazione del tuo dispositivo, impostalo su 60 durante la ricarica e su 30 durante la scarica, ad esempio. Puoi farlo aggiungendo un secondo numero subito dopo i due punti. ad esempio, strangolare 60:30. Ci sono più funzionalità ma non sono così comunemente usate, puoi controllare il collegamento gitlab sopra o semplicemente digitare strangle -h per maggiori informazioni.
Per limitare il framerate di supertuxkart a 30 è sufficiente eseguire

strangolare 30 supertuxkart

Per forzare l'abilitazione vsync su 60 fps per un gioco OpenGL Steam, imposta l'opzione di avvio su

strangolare -v 1 60 %comando%

Per impostare il framerate di un gioco Vulcan su Steam a 120 fps ma a 60 con l'alimentazione a batteria con vsync adattivo, imposta questo come comando di avvio

strangolare -v 3 120:60 %comando%

Mangohud

Mangohud [github.com] è uno strumento di monitoraggio per le applicazioni Vulkan e OpenGL. Può mostrare l'utilizzo della CPU e della GPU, le temperature, ma anche i framerate, i frametime e molto altro. Se sei su Arch puoi trovarlo in AUR, se sei su Fedora puoi trovarlo nei tuoi repository. Per le altre distribuzioni esegui i seguenti comandi.

git clone --recurse-submodules https://github.com/flightlessmango/MangoHud.git && cd MangoHud && ./build.sh build && ./build.sh pacchetto && ./build.sh installa

Per configurarlo con una GUI puoi controllare GOverlay di seguito. Per una configurazione manuale è possibile modificare

~/.config/MangoHud/MangoHud.conf

Se vuoi esattamente la mia configurazione puoi semplicemente copiarla senza bisogno di GOverlay.

background_alpha=0.3 font_size=20 background_color=020202 text_color=ffffff position=in alto a destra no_display toggle_hud=F11 cpu_stats cpu_temp cpu_color=007AFA gpu_stats gpu_temp gpu_color=00BD00 ram ram_color=B3000A vram vram_color=00801B io_read io_write io_color=B8 4700 arch engine_color=B200B0 frame_timing= 1 frametime_color=00ff00 #output_file=/home/houtworm/mangohud_log_ #fps_limit 120 #media_player #toggle_logging=F10

Puoi modificare tutte le piccole cose che desideri qui. Puoi anche creare diverse configurazioni per gioco aggiungendo un file MangoHud.conf alla directory del gioco.
Per usarlo per qualsiasi gioco, cambia la sua opzione di avvio in

mangohud %comando%

Per usarlo con giochi non Steam, usa il seguente comando

mangohud supertuxkart

Alcuni giochi potrebbero richiedere la versione a 32 bit, prova questa se il comando normale fallisce.

mangohud.x86 %comando%

VKBasalto

VKBasalt [github.com] è un livello di post-elaborazione per Vulkan che ti consente di migliorare ulteriormente la grafica. Funziona solo con Vulkan, inclusi tutti i giochi Proton.
Se sei su Arch, sarà in AUR, cerca Basalt usando il tuo gestore pacchetti.
Se utilizzi una distribuzione diversa devi crearla manualmente.

git clone https://github.com/DadSchoorse/vkBasalt.git && cd vkBasalt && meson --buildtype=release builddir && ninja -C builddir install

Per configurarlo devi prima creare un file di configurazione. Esegui il comando seguente per copiare l'esempio in una cartella che puoi modificare come utente.

mkdir ~/.config/vkBasalt && cp /usr/share/vkBasalt/vkBasalt.conf.example ~/.config/vkBasalt/vkBasalt.conf

Puoi modificare tutte le piccole cose che desideri qui. Puoi anche creare diverse configurazioni per gioco aggiungendo un file vkBasalt.conf alla directory del gioco.
Per utilizzare VKBasalt per un gioco particolare, inseriscilo come opzione di avvio.

ENABLE_VKBASALT=1 %comando%

Puoi anche avviare giochi non Steam in questo modo digitando il seguente comando

ENABLE_VKBASALT=1 supertuxkart

GOverlay

GOverlay [github.com] è un'interfaccia utente grafica per la gestione di MangoHud e VKBasalt Se utilizzi una distribuzione basata su Arch puoi trovarla in AUR, basta installarla con il tuo gestore di pacchetti preferito. Puoi anche trovarlo nei tuoi repository se usi Fedora. Se utilizzi una distribuzione Linux diversa puoi installarla manualmente. Per prima cosa installa Lazarus e git con il tuo gestore pacchetti, dovrebbe essere nei tuoi repository e forse è già installato. Elencherò il metodo di installazione per i sistemi basati su Debian, modificherò il primo comando se utilizzi una distribuzione diversa.

sudo apt-get install lazarus git

git clone https://github.com/benjamimgois/goverlay.git

copertura del cd

lazbuild -B governala.lpi

mesa-demos e vulkan-tools sono opzionali, ti servono se vuoi mostrare le anteprime. Puoi trovarli nel repository delle tue distribuzioni

Controller Xbox One

xpad funziona alla grande, è l'impostazione predefinita sulle moderne distribuzioni Linux e supporta un'ampia gamma di controller, ma se sei come me e hai solo controller Xbox One, utilizzare xpadneo è molto meglio.
Affinché il Bluetooth funzioni con xpad e i controller Xbox One è necessario disabilitare ertm (questo non è necessario per xpadneo)
creare il file di configurazione

sudo nano /etc/modprobe.d/xbox_bt.conf

Aggiungi la seguente riga al documento, salva ed esci con CTRL + X.

opzioni bluetooth disabilita_ertm=1

xpadneo [atar-axis.github.io] supporta i controller Xbox One cablati e tramite Bluetooth, abilita il Force Feedback anche la vibrazione all'interno dei grilletti, supporta l'indicazione del livello della batteria, corregge anche la mappatura in molti giochi con cui prima non era possibile giocare un controller Xbox One su Linux.

Arch Linux, Manjaro, Chakra, ecc.:

Installa le dipendenze

sudo pacman -S dkms linux-headers bluez bluez-utils

Installa xpadneo da AUR

git clone https://aur.archlinux.org/xpadneo-dkms-git.git && cd xpadneo-dkms-git && makepkg -si

Ubuntu, PopOS, Mint, Elementare, ecc.:

Installa le dipendenze

sudo apt-get install dkms linux-headers-`uname -r`

Installa xpadneo da Github

git clone https://github.com/atar-axis/xpadneo.git && cd xpadneo && sudo ./install.sh

Ora dovresti essere in grado di riavviare e tutto dovrebbe andare bene. La vibrazione dei controller per un secondo quando sono collegati è un buon indicatore del funzionamento.

Conclusione

La tua distribuzione Linux ora dovrebbe essere ottimizzata per i giochi, buon divertimento :)
Se hai riscontrato problemi, hai suggerimenti o aggiunte o ti manca la tua distribuzione preferita, faccelo sapere e farò del mio meglio per completare questa guida .
Se non hai caratteri in Steam, esegui il seguente comando

sudo pacman -S lib32-fontconfig

Trovato questo articolo interessante? Condividilo sulla tua rete di contatti Twitter, sulla tua bacheca su Facebook o semplicemente premi "+1" per suggerire questo risultato nelle ricerche in Google, Linkedin, Instagram o Pinterest. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie! CONDIVIDI SU!

stampa la pagina

0 commenti:

Posta un commento

Ultimi giochi pubblicati.
Copyright © 2014 Super Tux Giochi | Designed With By Templateclue | Published By Gooyaabi Templates
Scroll To Top