This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Upscaling with DLSS and FSR

Warning
The feature is still EXPERIMENTAL.

UNIGINE provides support for two advanced upscaling technologies: NVIDIA DLSS (Deep Learning Super Sampling) and AMD FSR 2 (FidelityFX Super Resolution 2). These technologies enable upscaling on a wide range of devices from different manufacturers.

Notice
UNIGINE provides support for DLSS 3 and FSR 2.2.

These upscaling technologies are used to render high-resolution images based on the lower resolution source. If both upscalers are available, you can choose between them, or you can turn off upscaling at all. We suggest using the DLSS technology as it produces high-quality results with fewer visual artifacts.

Notice
DLSS is not available out-of-the-box and requires additional configuration of your UNIGINE project.

Notice
The TAA effect is automatically disabled for the final image rendering when the DLSS or FSR 2 upscaling is applied.

Requirements and Restrictions
#

The DLSS and FSR 2 upscalers have specific requirements and compatibility restrictions determining whether the application supports these features.

The upscalers are initialized on render initialization. To verify whether they are supported and initialized after application startup, you can do one of the following:

  • Check the Render section of the console output.
  • Run the dlss_info and/or fsr_info console commands.

For example, the Render section may provide the following information:

Source code
---- Render ----
DLSS is supported
DLSS Streamline version: 2.4.0
DLSS NGX version: 3.7.0
FSR is supported
FSR Version: 2.2.2
FSR Max Contexts: 8
FSR RAM Scratch Size: 10 MB

If the upscaler is not supported, a corresponding message will be displayed in the console.

DLSS
#

For proper work, DLSS must meet the following requirements:

  • Platforms: Windows
  • Graphic API: DirectX 12
  • Hardware: any GeForce RTX GPU and RTX 40 Series GPU.
  • Driver: 522.25 version or newer.

For example, if you run the application with a GPU that is not listed, you will receive the following message in the console:

Source code
DLSS is not supported
Not an Nvidia GPU
Notice
In addition, you can receive messages on missing libraries, as DLSS requires additional configuration of your UNIGINE project.

FSR 2
#

FSR 2 must meet the following requirements:

  • Platforms: Windows
  • Graphic API: DirectX 12
  • Hardware: any GPUs supporting Shader Model 6.2.
  • Driver: no special requirements.

For example, if you run the application with a graphic API other than DirectX 12, you will receive the following messages in the console:

Source code
FSR is not implemented, FSR is currently available only for DX12

Using DLSS
#

For DLSS technology to work properly with UNIGINE, additional environment configuration is required.

  1. Follow this link to download the NVIDIA Streamline SDK, which serves as a wrapper for DLSS and all its features.
  2. Click Access Github.

  3. On the page that opens, click the green Code button and select Download ZIP from the drop-down list.

  4. Navigate to the folder containing the downloaded Streamline-main.zip archive. This is typically the Downloads folder.
  5. Extract the ZIP archive. By default, it is extracted to the Streamline-main folder. However, you can rename it if necessary.
  6. Open the Streamline-main/bin/x64 folder and find the following files:

    Notice
    You don't need to install the Streamline SDK. Simply navigate to the folder.
    • nvngx_dlss.dll
    • sl.common.dll
    • sl.dlss.dll
    • sl.interposer.dll
  7. Copy these files to the bin folder of your UNIGINE project:

    1. Find your project in the UNIGINE SDK Browser and select Other Actions -> Open folder.

    2. In the directory that opens, find and open the bin folder.
    3. Copy the 4 files listed above.
  8. The changes will be applied at the next application start-up. So, if you have UnigineEditor opened, restart it to apply changes.
  9. In UnigineEditor, open the console and check that DLSS is available. The corresponding information is provided in the Render section:

    Notice
    If DLSS is not available, the corresponding message will be shown in the console.

To use DLSS for the scene, enable it in one of the following ways and specify settings:

  • Via the UnigineEditor interface:

  • Using the render_upscale_mode console command:

    Source code
    render_upscale_mode 2

Using FSR2
#

Before applying FSR 2 upscaling, you should check if it is available. In UnigineEditor, open the console and check the information provided in the Render section:

Notice
If FSR 2 is not available, the corresponding message will be shown in the console.

To use FSR 2 for the scene, enable it in one of the following ways and specify settings:

  • Via the UnigineEditor interface:

  • Using the render_upscale_mode console command:

    Source code
    render_upscale_mode 1

Settings of Upscalers
#

Depending on the current upscale mode, the set of settings differs. Please refer to the Upscalers article.

When to Apply Upscaling
#

By default, upscaling is applied before all post-processing effects are rendered. However, you can choose to apply upscaling after rendering the post-process effects.

It can be done via the console using the render_upscale_post command or in UnigineEditor by toggling the Upscale After Post Effects parameter.

FSR Contexts
#

A context is a single call per upscaling operation. The number of contexts that can be upscaled with FSR 2 is limited and can defined by the fsr_max_contexts console command. The recommended number of contexts is 8. Specifying the number of contexts is necessary when rendering into multiple viewports: the number of the viewports must correspond to the number of contexts.

Last update: 2024-04-26
Build: ()