mirror of
https://github.com/optiscaler/OptiScaler.git
synced 2026-05-12 12:40:55 +00:00
Update README.md
This commit is contained in:
@@ -1,24 +1,29 @@
|
||||

|
||||
|
||||
OptiScaler is drop-in DLSS2 to XeSS/FSR2/FSR3/DLSS replacement for games.
|
||||
OptiScaler is a middleware that enables the use of various upscaling technologies in games that only support DLSS2. It primarily allows non-Nvidia users to use upscaling in DLSS-only games by interpreting DLSS2 inputs and applying them to XeSS, FSR2, or FSR3. Additionally, it provides extensive customization options for all users, including those with Nvidia GPUs using DLSS.
|
||||
|
||||
### Official Discord Server: [DLSS2FSR](https://discord.gg/2JDHx6kcXB)
|
||||
Key aspects of OptiScaler:
|
||||
- Enables XeSS, FSR2, and FSR3 in DLSS2-only games
|
||||
- Provides tuning options for DLSS users
|
||||
- Offers a wide range of tweaks and enhancements (RCAS & MAS, Output Scaling, DLSS Presets, Ratio & DRS Overrides etc.)
|
||||
- Allows users to fine-tune their upscaling experience
|
||||
|
||||
**Do not use this mod with online games, it might trigger anti-cheat software and cause bans!**
|
||||
## Official Discord Server: [DLSS2FSR](https://discord.gg/2JDHx6kcXB)
|
||||
|
||||
*This project is based on [PotatoOfDoom](https://github.com/PotatoOfDoom)'s excellent [CyberFSR2](https://github.com/PotatoOfDoom/CyberFSR2).*
|
||||
|
||||
## Installation
|
||||
> **Warning**: Do not use this mod with online games. It may trigger anti-cheat software and cause bans!
|
||||
|
||||
### Install as `non-nvngx`
|
||||
With DLSS 3.7 Nvidia disabled signature check override, this means `nvngx.dll` or `_nvngx.dll` must be signed by Nvidia. For this override I use a method developed by **Artur** (developer of [DLSS Enabler](https://www.nexusmods.com/site/mods/757?tab=description)).
|
||||
To overcome DLSS 3.7's signature check requirements, I implemented a method developed by **Artur** (creator of [DLSS Enabler](https://www.nexusmods.com/site/mods/757?tab=description)). Later, this method increased the compatibility of `OverlayMenu`, allowed OptiScaler to **spoof DXGI and Vulkan**, let users override the `nvapi64.dll` and even let users to force Anitsotropic Filtering and Mipmap Lod Bias. In short, this installation method allowed OptiScaler to provide more features to users.
|
||||
|
||||
This method increases the compatibility of `OverlayMenu`, allows OptiScaler to **spoof DXGI and Vulkan** and overriding `nvapi64.dll`. In short this installation method allows OptiScaler to work with all it's features.
|
||||
|
||||
Step-by-step installation (**Nvidia users please use step 3 only**):
|
||||
Step-by-step installation (**Nvidia users please skip to step 3**):
|
||||
1. We need an Nvidia signed dll file to bypass signature checks. All games that support DLSS come with `nvngx_dlss.dll`. Most of the time it's in the games exe folder. Some games and engines keep these third party dll's in different folders (like `plugins`). So we need to find the `nvngx_dlss.dll` file and copy it to the games exe folder. If it's already in the games exe folder, make a copy of it.
|
||||
2. Rename the copy of `nvngx_dlss.dll` in the games exe folder to `nvngx.dll`.
|
||||
3. Rename OptiScaler's `nvngx.dll` to one of the [supported filenames](#optiscaler-supports-these-filenames) (I prefer `dxgi.dll`, it also eliminates the need for the d3d12-proxy) and copy it to the games exe folder [1].
|
||||
4. If your GPU is not an Nvidia one, check [here](#spoofing-nvidia) for spoofing options.
|
||||
4. Copy the renamed OptiScaler file to your game's executable folder.
|
||||
5. If your GPU is not an Nvidia one, check [GPU spoofing options](Spoofing.md).
|
||||
|
||||
#### OptiScaler supports these filenames
|
||||
* dxgi.dll (with Nvidia GPU spoofing for non-Nvidia cards)
|
||||
@@ -45,7 +50,7 @@ Step-by-step installation (**Nvidia users, please skip step 4**):
|
||||
1. Download the latest relase from [releases](https://github.com/cdozdil/OptiScaler/releases).
|
||||
2. Extract the contents of the archive next to the game executable file in your games folder. [1]
|
||||
3. Run `EnableSignatureOverride.reg` from `DlssOverrides` folder and confirm merge. [2][3]
|
||||
4. If your GPU is not an Nvidia one, check [here](#spoofing-nvidia) for spoofing options.
|
||||
4. If your GPU is not an Nvidia one, check [GPU spoofing options](Spoofing.md).
|
||||
|
||||
*[1] This package contains latest version of `libxess.dll` and if game folder contains any older version of same library it would be overwritten. Consider backing up or renaming existing file.*
|
||||
|
||||
@@ -59,9 +64,6 @@ Step-by-step installation (**Nvidia users, please skip step 4**):
|
||||
|
||||
*If your game is not on Steam, it all boils down to opening regedit inside your game's prefix and importing the file.*
|
||||
|
||||
## Spoofing Nvidia
|
||||
Most games have checks for enabling DLSS options. To enable DLSS options in these games there are several methods which explained [here](https://github.com/cdozdil/OptiScaler/blob/master/Spoofing.md)
|
||||
|
||||
## Update OptiScaler version when using DLSS Enabler
|
||||
1. Delete/rename `dlss-enabler-upscaler.dll` in game folder
|
||||
2. Copy `nvngx.dll` file from OptiScaler 7zip file to game folder
|
||||
@@ -73,7 +75,7 @@ Most games have checks for enabling DLSS options. To enable DLSS options in thes
|
||||
* If there were a `libxess.dll` file and you have backed it up delete the new file and restore the backed up file. If you have overwrote old file **DO NOT** delete `libxess.dll` file. If there were no `libxess.dll` file it's safe to delete.
|
||||
|
||||
## How it works?
|
||||
OptiScaler implements all necessary API methods of DLSS2 & NVAPI to act as a man in the middle. So from games perspective it's using DLSS2 but actually using OptiScaler and calls are interpreted/redirected to XeSS & FSR2 or DLSS with OptiScaler's tweaks and enchancements.
|
||||
OptiScaler implements the necessary API methods of DLSS2 & NVAPI to act as a middleware. It interprets calls from the game and redirects them to the chosen upscaling backend, allowing games designed for one technology to use another.
|
||||
|
||||
## Features
|
||||
* Supports multiple upscaling backends (XeSS, FSR 2.1.2, FSR 2.2.1, FSR 3.1 and DLSS)
|
||||
@@ -105,27 +107,24 @@ Please check [this](Issues.md) document for known issues and possible solutions
|
||||
Currently OptiScaler can be used with DirectX 11, DirectX 12 and Vulkan but each API has different sets of upscaler options.
|
||||
|
||||
#### For DirectX 12
|
||||
* **XeSS 1.x.x** (Default upscaler)
|
||||
* **FSR2 2.1.2**
|
||||
* **FSR2 2.2.1**
|
||||
* **FSR3 3.1.0 & FSR2 2.3.2**
|
||||
* **DLSS**
|
||||
- XeSS 1.x.x (Default)
|
||||
- FSR2 2.1.2, 2.2.1
|
||||
- FSR3 3.1.0 & FSR2 2.3.2
|
||||
- DLSS
|
||||
|
||||
|
||||
#### For DirectX 11
|
||||
* **FSR2 2.2.1** native DirectX11 implementation (Default upscaler)
|
||||
* **XeSS 1.x.x** with background DirectX12 processing [*]
|
||||
* **FSR2 2.1.2** with background DirectX12 processing [*]
|
||||
* **FSR2 2.2.1** with background DirectX12 processing [*]
|
||||
* **FSR3 3.1.0 & FSR2 2.3.2** with background DirectX12 processing [*]
|
||||
* **DLSS** native DirectX11 implementation
|
||||
- FSR2 2.2.1 (Default, native DX11)
|
||||
- XeSS 1.x.x, FSR2 2.1.2, 2.2.1, FSR3 3.1.0 (via background DX12 processing) [*]
|
||||
- DLSS (native DX11)
|
||||
|
||||
[*] This implementations uses a background DirectX12 device to be able to use Dirext12 only upscalers. There is %10-15 performance penalty for this method but allows much more upscaler options. Also native DirectX11 implementation of FSR 2.2.1 is a backport from Unity renderer and has it's own problems which some of them avoided by OptiScaler. **These implementations does not support Linux** and will result black screen.
|
||||
|
||||
#### For Vulkan
|
||||
* **FSR2 2.1.2** (Default upscaler)
|
||||
* **FSR2 2.2.1**
|
||||
* **FSR3 3.1.0 & FSR2 2.3.2**
|
||||
* **DLSS**
|
||||
- FSR2 2.1.2 (Default)
|
||||
- FSR2 2.2.1
|
||||
- FSR3 3.1.0 & FSR2 2.3.2
|
||||
- DLSS
|
||||
|
||||
## Compilation
|
||||
|
||||
@@ -143,5 +142,5 @@ Currently OptiScaler can be used with DirectX 11, DirectX 12 and Vulkan but each
|
||||
* @LukeFZ & @Nukem for their great mods and sharing their knowledge
|
||||
* @FakeMichau for support, testing and feature creep
|
||||
* @QM for continous testing efforts and helping me to reach games
|
||||
* @Cryio, @krispy, @krisshietala, @Lordubuntu, @scz, @Veeqo for their hard work on compatibility matrix
|
||||
* @Cryio, @krispy, @krisshietala, @Lordubuntu, @scz, @Veeqo for their hard work on [compatibility matrix](https://docs.google.com/spreadsheets/d/1qsvM0uRW-RgAYsOVprDWK2sjCqHnd_1teYAx00_TwUY)
|
||||
* @RazzerBrazzer and DLSS2FSR community for all their support
|
||||
|
||||
Reference in New Issue
Block a user