Skip to content

v0.6.0

Compare
Choose a tag to compare
@cdozdil cdozdil released this 29 May 07:58
· 451 commits to master since this release

OptiScaler v0.6.0

This release aims to improve the compatibility of the new in-game menu (especially when used with frame-gen) and add support for DLSS 3.7.

Added

  • Added spoofing support for DLSS 3.7, usage description is below
  • Added spoofing support when running as dxgi.dll (acts like d3d12-proxy).
  • Added support for loading custom nvapi64.dll file when not working as nvngx.dll (from dll folder or user defined folder).

Fixed

  • Tried to cover all frame-gen cases for the new in-game menu, hopefully it will be ok (There is a detection delay of about 170 frames, if the menu does not appear immediately after loading the game, please wait a bit after pressing the menu button)
  • Fixed setting wrong internal rendering resolution during create feature (thanks to Sub & DARKERthanDA)
  • Fixed when DLSS selected from ini was not applied when using DirectX 11 (thanks to ...Merlinch & wixuan)
  • Fixed Motion Sharpness issues (thanks to Od1sseas)
  • Increased the Motion Sharpness scale minimum to 0.1 to prevent division by zero problems (thanks to fakemichau).
  • Added extra checks for Output Scaling and Display Size MV (Thanks to DARKERthanDA)
  • Fixed reverting to initial upscaler on quality or resolution change when working with DLSS Enabler (thanks to fakemichau).
  • Auto disable RCAS and Output Scaling on shader compilation issues, for linux check notes are at bottom (thanks to fakemichau).
  • Fixed Output Scaling disabling conditions (Thanks to DARKERthanDA)
  • Fixed conflicting preset selection & quality ratio when using DLSS (thanks to ...Merlinch?)
  • Added yield() to /w Dx12 backend query wait spins, resulting in improved performance on Nvidia cards (thanks to DARKERthanDA)

Changed

  • The structure of nvngx.ini has changed a bit, if your old settings are not applied, please compare with the new structure.

DLSS 3.7

This is only needed if you want to use OptiScaler solo (without DLSS Enabler or Uniscaler).

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). With this release, OptiScaler supports loading by these filenames:

  • dxgi.dll (with Nvidia GPU spoofing)
  • winmm.dll
  • version.dll
  • wininet.dll
  • winhttp.dll
  • OptiScaler.asi (with an ASI loader)

If there is another mod that uses the same filename (for example version.dll), if you rename it with -original suffix (for example version-original.dll), OptiScaler will load this file instead of the original library.

Step-by-step installation:

  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 games exe folder to nvngx.dll.
  3. Rename OptiScaler's nvngx.dll to one of the supported filenames (I prefer dxgi.dll, it also eliminates the need for d3d12 proxy) and copy it to the games exe folder.

That's it, now you should be able to run DLSS 3.7 games.

Please don't rename the ini file, it should stay as nvngx.ini.

Shader Compiling and Linux

If you are using OptiScaler with Linux and you have problems with RCAS or Output Scaling, you will probably see this message in your logs.

CompileShader error compiling shader : <anonymous>:83:26: E5005: Function "rcp" is not defined.

To solve this problem you need to install d3dcompiler_47 with WineTricks or ProtonTricks. OptiScaler uses custom shaders for these features and depends on this compiler file to compile these shaders at runtime.

Thanks to fakemichau for pointing out this solution.

As always thanks to all DLSS2FSR members for their help & support