diff --git a/docs/Configuration.md b/docs/Configuration.md index a265f73..2354a96 100644 --- a/docs/Configuration.md +++ b/docs/Configuration.md @@ -10,7 +10,7 @@ Regardless of the method you choose, the concept of profiles remains the same. ### All Configuration Options Below is a list of all available **global** configuration options: -- **Path to Lossless Scaling / `dll`**: By default, lsfg-vk will search certain directories for Lossless Scaling. If you have Lossless Scaling installed in a custom location, you can specify the full path to the "Lossless.dll" file inside of Lossless Scaling here. +- **Path to Lossless Scaling / `dll`**: By default, lsfg-vk will search certain directories for Lossless Scaling. If you have Lossless Scaling installed in a custom location, you can specify the full path to the "lsfg-vk.dll" file inside of Lossless Scaling here. - **Allow half-precision / `allow_fp16`**: If enabled, this will allow lsfg-vk to take advantage of half-precision shader operations if supported by the GPU. This has a giant performance uplift on AMD GPUs, but does not affect NVIDIA GPUs (GTX 1000-series or older cards will actually see a big performance **decrease**). This option **does not** influence quality. (Default: `true`) Next is a list of all available **profile** configuration options: @@ -18,12 +18,12 @@ Next is a list of all available **profile** configuration options: - **Active In / `active_in`**: A list of 1) linux binary names, such as `mpv`, 2) windows executables, such as `GenshinImpact.exe` and 3) process names, such as `GameThread`. It is also possible to specify the last part of a path (e.g. `Ghostrunner2/Binaries/Win64/Ghostrunner2-Win64-Shipping.exe`). When a process matching one of these rules is detected, this profile will be activated. - **Multiplier / `multiplier`**: The frame generation multiplier. A value of 3 means that for every frame rendered by the application, lsfg-vk will generate 2 additional frames. (Default: `2`) - **Flow Scale / `flow_scale`**: The resolution scale at which the motion vectors are calculated. A lower value means better performance, but worse quality. (Default: `1.0`) -- **Performance Mode / `performance_mode`**: When enabled, a significantly lighter frame generation model is used. This has a minor quality impact, but greatly improves performance. +- **Performance Mode / `performance_mode`**: When enabled, a significantly lighter frame generation model is used. This has a minor quality impact, but greatly improves performance. (Default: `false`) - **Pacing Mode / `pacing`**: This option is explained in greater detail below. Supported values are **None / `none`**. - **GPU / `gpu`**: The GPU to use for frame generation. This MUST be the **same GPU** as the one being used by the application. **Dual GPU is NOT supported**. You can identify a GPU through its name (e.g. `NVIDIA GeForce RTX 3080`), uppercase-only ID (e.g. `0x10DE:0x2C02`) or PCI bus ID (e.g. `3:0.0`). If not specified, the primary GPU will be used, which may lead to issues. -The "Multiplier", "Flow Scale" and "Performance Mode" options can be **hot-reloaded**, meaning that changes to these options will take effect immediately without needing to restart the application. Options such as "Pacing Mode" or removal of the profile require a swapchain recreation, which usually means resizing or restarting the application. Any other change requires an application restart. +The "Multiplier", "Flow Scale" and "Performance Mode" options can be **hot-reloaded**, meaning that changes to these options will take effect immediately without needing to restart the application. Options such as "Pacing Mode" or removal of the profile require a swapchain recreation, which usually means resizing or restarting the application. Any other change requires an application restart. ### Pacing Modes @@ -45,7 +45,7 @@ The following environment variables affect lsfg-vk: - `LSFGVK_PROFILE`: Name of the profile to use. If set, this will override automatic profile detection. If you do not wish to use a configuration file, you can also set configuration options through environment variables. To do this, set `LSFGVK_ENV=1` and then any of the following variables: -- `LSFGVK_DLL_PATH`: Path to Lossless Scaling DLL. +- `LSFGVK_DLL_PATH`: Path to lsfg-vk DLL. - `LSFGVK_NO_FP16`: If set to `1`, half-precision will be disabled. - `LSFGVK_MULTIPLIER`: Frame generation multiplier. - `LSFGVK_FLOW_SCALE`: Flow scale value. diff --git a/lsfg-vk-cli/src/main.cpp b/lsfg-vk-cli/src/main.cpp index 446ca8f..e88e23a 100644 --- a/lsfg-vk-cli/src/main.cpp +++ b/lsfg-vk-cli/src/main.cpp @@ -37,7 +37,7 @@ SUBCOMMAND OPTIONS: -c, --config Optional path to the configuration file benchmark & debug - -d, --dll Path to Lossless.dll + -d, --dll Path to lsfg-vk.dll -a, --allow-fp16 Allow FP16 acceleration -w, --width Width of the input frames -h, --height Height of the input frames diff --git a/lsfg-vk-common/include/lsfg-vk-common/helpers/paths.hpp b/lsfg-vk-common/include/lsfg-vk-common/helpers/paths.hpp index d51225e..4731d33 100644 --- a/lsfg-vk-common/include/lsfg-vk-common/helpers/paths.hpp +++ b/lsfg-vk-common/include/lsfg-vk-common/helpers/paths.hpp @@ -6,7 +6,7 @@ namespace ls { - /// find the location of the Lossless.dll + /// find the location of the lsfg-vk.dll /// @returns the path to the DLL /// @throws ls::error if the DLL could not be found std::filesystem::path findShaderDll(); diff --git a/lsfg-vk-common/src/configuration/config.cpp b/lsfg-vk-common/src/configuration/config.cpp index cee5861..1163e1b 100644 --- a/lsfg-vk-common/src/configuration/config.cpp +++ b/lsfg-vk-common/src/configuration/config.cpp @@ -30,7 +30,7 @@ void ConfigFile::createDefaultConfigFile(const std::filesystem::path& path) { ofs << R"(version = 2 [global] -# dll = '/media/games/Lossless Scaling/Lossless.dll' # if you don't have LS in the default location +# dll = '/media/games/Lossless Scaling/lsfg-vk.dll' # if you don't have LS in the default location allow_fp16 = true # this will improve give a MASSIVE performance boost on AMD, but be super slow on older (!) NVIDIA GPUs [[profile]] diff --git a/lsfg-vk-common/src/helpers/paths.cpp b/lsfg-vk-common/src/helpers/paths.cpp index c9ac7ec..bcc92ec 100644 --- a/lsfg-vk-common/src/helpers/paths.cpp +++ b/lsfg-vk-common/src/helpers/paths.cpp @@ -22,7 +22,7 @@ std::filesystem::path ls::findShaderDll() { auto base = std::filesystem::path(xdgPath); for (const auto& frag : FRAGMENTS) { - auto full = base / frag / "Lossless Scaling" / "Lossless.dll"; + auto full = base / frag / "Lossless Scaling" / "lsfg-vk.dll"; if (std::filesystem::exists(full)) return full; } @@ -34,16 +34,16 @@ std::filesystem::path ls::findShaderDll() { auto base = std::filesystem::path(homePath); for (const auto& frag : FRAGMENTS) { - auto full = base / frag / "Lossless Scaling" / "Lossless.dll"; + auto full = base / frag / "Lossless Scaling" / "lsfg-vk.dll"; if (std::filesystem::exists(full)) return full; } } // fallback to same directory - auto local = std::filesystem::current_path() / "Lossless.dll"; + auto local = std::filesystem::current_path() / "lsfg-vk.dll"; if (std::filesystem::exists(local)) return local; - throw ls::error("unable to locate Lossless.dll, please set the path in the configuration"); + throw ls::error("unable to locate lsfg-vk.dll, please set the path in the configuration"); } diff --git a/lsfg-vk-ui/rsc/UI.qml b/lsfg-vk-ui/rsc/UI.qml index 5c5a96c..aa79ff9 100644 --- a/lsfg-vk-ui/rsc/UI.qml +++ b/lsfg-vk-ui/rsc/UI.qml @@ -145,12 +145,12 @@ ApplicationWindow { GroupEntry { title: "Path to Lossless Scaling" - description: "Change the location of Lossless.dll" + description: "Change the location of lsfg-vk.dll" FileEdit { Layout.fillWidth: true - title: "Select Lossless.dll" + title: "Select lsfg-vk.dll" filter: "Dynamic Link Library Files (*.dll)" text: backend.dll