Difference between revisions of "Performance Optimizations"

From Zero-K
Jump to navigation Jump to search
(Switchable Graphics - detecting intel, setting discrete)
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
==Graphics Check==
+
== In-game Overlay ==
{{{glxinfo | grep "Max core profile version"}}}
+
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]].
It needs to show a number 4.1 or greater
 
If it doesn't you need to do the following
 
  
Do a backup before preceding. These instructions written for Debian 9.
+
=== 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.
  
==Backport libdrm from sid==
 
{{{apt-get build-dep libdrm}}}
 
{{{apt-get source libdrm -t sid}}}
 
{{{debuild -b -uc -us libdrm}}}
 
{{{dpkg install libdrm}}}
 
  
==New Mesa3d==
+
=== Disabling the Discord Overlay ===
{{{apt-get build-dep mesa
+
* 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>
 +
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===
 +
<pre>
 +
apt-get build-dep libdrm
 +
apt-get source libdrm -t sid
 +
debuild -b -uc -us libdrm
 +
dpkg install libdrm
 +
</pre>
 +
 
 +
===Build New Mesa3d===
 +
<pre>
 +
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
 
checkinstall
 
checkinstall
 +
</pre>
  
 +
You will have to configure via the checkinstall menu to build and install a valid package.
 +
 +
<pre>
 
This package will be built according to these values:
 
This package will be built according to these values:
  
Line 37: Line 69:
 
12 - Conflicts: [  ]
 
12 - Conflicts: [  ]
 
13 - Replaces: [  ]
 
13 - Replaces: [  ]
}}}
+
</pre>
  
==Configure Xorg==
+
===Configure Xorg===
{{{Xorg -configure`
+
<pre>
 +
Xorg -configure
 
cp xorg.conf.new /etc/X11/xorg.conf
 
cp xorg.conf.new /etc/X11/xorg.conf
restart display manager}}}
+
</pre>
 +
 
 +
Next restart your display manager.
 +
 
 +
<pre>
 +
systemctl restart lightdm.service
 +
</pre>
 +
 
 +
 
 +
{{Navbox manual}}

Latest revision as of 20:25, 20 July 2021

In-game Overlay[edit]

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[edit]

  • 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[edit]

  • 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[edit]

Switchable Graphics[edit]

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[edit]

Graphics Check[edit]

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[edit]

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

Build New Mesa3d[edit]

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[edit]

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

Next restart your display manager.

systemctl restart lightdm.service