Difference between revisions of "Performance Optimizations"

From Zero-K
Jump to navigation Jump to search
(Switchable Graphics - detecting intel, setting discrete)
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
==Graphics Check==
+
== In-game Overlay ==
 +
When using Steam or Discord, the in-game overlay should be disabled for maximum performance. It can lead to anything from increased lag to a completely unresponsive user [[interface]].
 +
 
 +
=== Disabling the Steam Overlay ===
 +
* Right click on Zero-K in your Steam library.
 +
* Select 'Properties' from the dropdown menu.
 +
* Untick "Enable the Steam Overlay while in-game" in General.
 +
 
 +
 
 +
=== Disabling the Discord Overlay ===
 +
* In Discord, go to Settings -> Games
 +
* Look for Zero-K and click the button on the right to "Toggle Overlay". It should turn red.
 +
 
 +
== Laptop Graphics Driver Optimizations ==
 +
===Switchable Graphics===
 +
On systems with two graphics cards, Zero-K may require an additional step to use the high performance Nvidia or AMD graphics card. If your frame rate seems too low for your hardware, check the following:
 +
* Open the infolog.txt from your Zero-K folder and search for the line starting with '''GL vendor'''
 +
* If the '''GL vendor''' shows as '''Intel''', you should make a rule in your driver software to run '''spring.exe''' in High Performance mode.
 +
* After making the change, run Zero-K again.
 +
* You can check the '''infolog.txt''' again to confirm that your system is using the correct graphics card for Zero-K.
 +
 
 +
== Linux Graphics Driver Optimizations ==
 +
===Graphics Check===
 
<pre>glxinfo | grep "Max core profile version"</pre>
 
<pre>glxinfo | grep "Max core profile version"</pre>
 
It needs to show a number 4.1 or greater otherwise graphically demanding games such as Zero-K won't run correctly.
 
It needs to show a number 4.1 or greater otherwise graphically demanding games such as Zero-K won't run correctly.
If it doesn't you need to do the following.
+
If it doesn't you need to do the following (or, as an alternative, upgrade all mesa-related packages from stretch-backports. As for now - Sep 2018 - it will bring Mesa 18.1 and "Max core profile" 4.5).
 +
 
 +
The graphics stack in Debian Buster is new enough to bring "Max core profile" to "4.5".
  
 
Do a backup before preceding. These instructions written for Debian 9 but will likely work on other distributions with little modification.
 
Do a backup before preceding. These instructions written for Debian 9 but will likely work on other distributions with little modification.
  
==Backport libdrm from sid==
+
===Backport libdrm from sid===
 
<pre>
 
<pre>
 
apt-get build-dep libdrm
 
apt-get build-dep libdrm
Line 14: Line 38:
 
</pre>
 
</pre>
  
==New Mesa3d==
+
===Build New Mesa3d===
 
<pre>
 
<pre>
apt-get build-dep mesa
+
apt-get install llvm-3.9-dev
 
ln -sf /usr/bin/llvm-config-3.9 /usr/bin/llvm-config
 
ln -sf /usr/bin/llvm-config-3.9 /usr/bin/llvm-config
 
git clone git://anongit.freedesktop.org/git/mesa/mesa
 
git clone git://anongit.freedesktop.org/git/mesa/mesa
 
cd mesa
 
cd mesa
 +
./autogen.sh
 
./configure --prefix=/opt/mesa --enable-texture-float --with-gallium-drivers=radeonsi,swrast --with-platforms=drm,x11 --enable-glx-tls --enable-shared-glapi --enable-glx --enable-driglx-direct --enable-gles1 --enable-gles2 --enable-gbm --enable-openmax --enable-xa --enable-osmesa --with-radeonsi-llvm-compiler --enable-sysfs --enable-vdpau --enable-xvmc --enable-openmax --enable-nine  
 
./configure --prefix=/opt/mesa --enable-texture-float --with-gallium-drivers=radeonsi,swrast --with-platforms=drm,x11 --enable-glx-tls --enable-shared-glapi --enable-glx --enable-driglx-direct --enable-gles1 --enable-gles2 --enable-gbm --enable-openmax --enable-xa --enable-osmesa --with-radeonsi-llvm-compiler --enable-sysfs --enable-vdpau --enable-xvmc --enable-openmax --enable-nine  
 
make -j 4
 
make -j 4
Line 25: Line 50:
 
</pre>
 
</pre>
  
You will have to configure the checkinstall menu to build and install a valid package.
+
You will have to configure via the checkinstall menu to build and install a valid package.
  
 
<pre>
 
<pre>
Line 46: Line 71:
 
</pre>
 
</pre>
  
==Configure Xorg==
+
===Configure Xorg===
 
<pre>
 
<pre>
 
Xorg -configure
 
Xorg -configure
Line 57: Line 82:
 
systemctl restart lightdm.service
 
systemctl restart lightdm.service
 
</pre>
 
</pre>
 +
 +
 +
{{Navbox manual}}

Latest revision as of 19:25, 20 July 2021

In-game Overlay

When using Steam or Discord, the in-game overlay should be disabled for maximum performance. It can lead to anything from increased lag to a completely unresponsive user interface.

Disabling the Steam Overlay

  • Right click on Zero-K in your Steam library.
  • Select 'Properties' from the dropdown menu.
  • Untick "Enable the Steam Overlay while in-game" in General.


Disabling the Discord Overlay

  • In Discord, go to Settings -> Games
  • Look for Zero-K and click the button on the right to "Toggle Overlay". It should turn red.

Laptop Graphics Driver Optimizations

Switchable Graphics

On systems with two graphics cards, Zero-K may require an additional step to use the high performance Nvidia or AMD graphics card. If your frame rate seems too low for your hardware, check the following:

  • Open the infolog.txt from your Zero-K folder and search for the line starting with GL vendor
  • If the GL vendor shows as Intel, you should make a rule in your driver software to run spring.exe in High Performance mode.
  • After making the change, run Zero-K again.
  • You can check the infolog.txt again to confirm that your system is using the correct graphics card for Zero-K.

Linux Graphics Driver Optimizations

Graphics Check

glxinfo | grep "Max core profile version"

It needs to show a number 4.1 or greater otherwise graphically demanding games such as Zero-K won't run correctly. If it doesn't you need to do the following (or, as an alternative, upgrade all mesa-related packages from stretch-backports. As for now - Sep 2018 - it will bring Mesa 18.1 and "Max core profile" 4.5).

The graphics stack in Debian Buster is new enough to bring "Max core profile" to "4.5".

Do a backup before preceding. These instructions written for Debian 9 but will likely work on other distributions with little modification.

Backport libdrm from sid

apt-get build-dep libdrm
apt-get source libdrm -t sid
debuild -b -uc -us libdrm
dpkg install libdrm

Build New Mesa3d

apt-get install llvm-3.9-dev
ln -sf /usr/bin/llvm-config-3.9 /usr/bin/llvm-config
git clone git://anongit.freedesktop.org/git/mesa/mesa
cd mesa
./autogen.sh
./configure --prefix=/opt/mesa --enable-texture-float --with-gallium-drivers=radeonsi,swrast --with-platforms=drm,x11 --enable-glx-tls --enable-shared-glapi --enable-glx --enable-driglx-direct --enable-gles1 --enable-gles2 --enable-gbm --enable-openmax --enable-xa --enable-osmesa --with-radeonsi-llvm-compiler --enable-sysfs --enable-vdpau --enable-xvmc --enable-openmax --enable-nine 
make -j 4
checkinstall

You will have to configure via the checkinstall menu to build and install a valid package.

This package will be built according to these values:

0 -  Maintainer: [ your@email ]
1 -  Summary: [ open source 3D computer graphics library ]
2 -  Name:    [ mesa ]
3 -  Version: [ version number from git ]
4 -  Release: [ 1 ]
5 -  License: [ MIT ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ mesa ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Provides: [ mesa ]
12 - Conflicts: [  ]
13 - Replaces: [  ]

Configure Xorg

Xorg -configure
cp xorg.conf.new /etc/X11/xorg.conf

Next restart your display manager.

systemctl restart lightdm.service