MCPcopy Create free account
hub / github.com/PolyMC/PolyMC / createLaunchEnvironment

Method createLaunchEnvironment

launcher/minecraft/MinecraftInstance.cpp:476–502  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

474}
475
476QProcessEnvironment MinecraftInstance::createLaunchEnvironment()
477{
478 // prepare the process environment
479 QProcessEnvironment env = createEnvironment();
480
481#ifdef Q_OS_LINUX
482 if (settings()->get("EnableMangoHud").toBool() && APPLICATION->capabilities() & Application::SupportsMangoHud)
483 {
484 auto preload = env.value("LD_PRELOAD", "") + ":libMangoHud_dlsym.so:libMangoHud.so";
485
486 env.insert("LD_PRELOAD", preload);
487 env.insert("MANGOHUD", "1");
488 }
489
490 if (settings()->get("UseDiscreteGpu").toBool())
491 {
492 // Open Source Drivers
493 env.insert("DRI_PRIME", "1");
494 // Proprietary Nvidia Drivers
495 env.insert("__NV_PRIME_RENDER_OFFLOAD", "1");
496 env.insert("__VK_LAYER_NV_optimus", "NVIDIA_only");
497 env.insert("__GLX_VENDOR_LIBRARY_NAME", "nvidia");
498 }
499#endif
500
501 return env;
502}
503
504static QString replaceTokensIn(QString text, QMap<QString, QString> with)
505{

Callers 2

executeTaskMethod · 0.45
executeTaskMethod · 0.45

Calls 3

capabilitiesMethod · 0.80
insertMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected