diff options
author | Jan200101 <sentrycraft123@gmail.com> | 2022-06-29 22:37:25 +0200 |
---|---|---|
committer | Jan200101 <sentrycraft123@gmail.com> | 2022-07-06 09:34:14 +0200 |
commit | cad581388f32dc3523c81f614e898716685f35c3 (patch) | |
tree | 543bf28e18ad5a85b349b0cba0faf86daccfa1e0 /launcher/minecraft/launch/LauncherPartLaunch.cpp | |
parent | 774ed044fcac9c444f41e0f93435089338e8366c (diff) | |
download | PrismLauncher-cad581388f32dc3523c81f614e898716685f35c3.tar.gz PrismLauncher-cad581388f32dc3523c81f614e898716685f35c3.tar.bz2 PrismLauncher-cad581388f32dc3523c81f614e898716685f35c3.zip |
Add Performance related settings
Integrates support for Feral Gamemode, discrete GPU support for Mesa and the proprietary Nvidia driver and MangoHud support
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
Diffstat (limited to 'launcher/minecraft/launch/LauncherPartLaunch.cpp')
-rw-r--r-- | launcher/minecraft/launch/LauncherPartLaunch.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/launcher/minecraft/launch/LauncherPartLaunch.cpp b/launcher/minecraft/launch/LauncherPartLaunch.cpp index 427bc32b..e37c64fa 100644 --- a/launcher/minecraft/launch/LauncherPartLaunch.cpp +++ b/launcher/minecraft/launch/LauncherPartLaunch.cpp @@ -44,6 +44,10 @@ #include "Commandline.h" #include "Application.h" +#ifdef Q_OS_LINUX +#include "gamemode_client.h" +#endif + LauncherPartLaunch::LauncherPartLaunch(LaunchTask *parent) : LaunchStep(parent) { auto instance = parent->instance(); @@ -102,7 +106,7 @@ void LauncherPartLaunch::executeTask() auto javaPath = FS::ResolveExecutable(instance->settings()->get("JavaPath").toString()); - m_process.setProcessEnvironment(instance->createEnvironment()); + m_process.setProcessEnvironment(instance->createLaunchEnvironment()); // make detachable - this will keep the process running even if the object is destroyed m_process.setDetachable(true); @@ -167,6 +171,17 @@ void LauncherPartLaunch::executeTask() { m_process.start(javaPath, args); } + +#ifdef Q_OS_LINUX + if (instance->settings()->get("EnableFeralGamemode").toBool()) + { + auto pid = m_process.processId(); + if (pid) + { + gamemode_request_start_for(pid); + } + } +#endif } void LauncherPartLaunch::on_state(LoggedProcess::State state) |