AMD FidelityFX Super Resolution 2

AMD FidelityFX™ Super Resolution 2 (FSR 2) technology is our brand-new open source temporal upscaling solution. FSR 2 uses cutting-edge temporal algorithms to reconstruct fine geometric and texture detail, producing anti-aliased output from aliased input.

FSR 2 technology has been developed from the ground up, and is the result of years of research from AMD. It has been designed to provide higher image quality compared to FSR 1, our original open source spatial upscaling solution launched in June 2021.

Note that FSR 1 can still be exposed as its own upscaling option in addition to FSR 2 in game titles. Both technologies have different characteristics which may be suitable for a wider range of platforms and user preferences. For example, our FSR 2 partner title DEATHLOOP exposes both!

Supports:

  • DirectX® 12.
  • Vulkan®. 
  • Unreal Engine 4.26/4.27 and Unreal Engine 5 as a plugin from the Unreal Marketplace.

Download the latest version - v2.2.1

  • FSR 2.2 API for integration.
  • API documentation including quick start checklist – it is strongly recommended to consult this to ensure the best upscaling quality!
  • Full C++ and HLSL source provided via a library.
  • Samples provided for DirectX 12, and Vulkan. 

Download the latest version - v2.2.2

  • AMD FSR 3 supersedes AMD FSR 2 as it includes both upscaling and frame generation.
  • FSR 2.2 API for integration.
  • API documentation including quick start checklist – it is strongly recommended to consult this to ensure the best upscaling quality!
  • Full C++ and HLSL source provided via a library.
  • Samples provided for DirectX 12, and Vulkan.

For 2.2.2

  • Now part of AMD FidelityFX SDK.
  • Combined FSR 1 and FSR 2 samples into one sample for the AMD FidelityFX SDK.

For 2.2.1

  • Documentation inconsistency in the fsr2.h comments.
  • A luma internal resource was too large at creation.
  • A resource needed to be cleared on first use to resolve corruption on some platforms.
  • Potential for flashing lights to introduce corruption (fixed with a small change to the luma instability logic).
  • Unreal Engine plugin updates include:
    • Support for Unreal Engine 5.2.
    • Added debug API checking/logging for Debug and Development builds.
    • Fixed frameTimeDelta conversion.
    • Fixed camera plane settings.
    • Fixed an issue where a resource transition prevented resource cleanup in Unreal Engine 5.1.
Unreal Engine

Unreal Engine developer?

Don’t miss our guides below, which explain how get the most out of our Unreal Engine FSR 2 plugin

xbox

Xbox developer?

An example use of AMD FidelityFX Super Resolution 2.1 exists within the Xbox Game Development Kit samples.

Features

Temporal

Anti-aliasing

High image quality

No machine learning

Cross-platform

Open source

Temporal

  • Delivers similar or better than native image quality using temporal data.

Anti-aliasing

  • Includes high-quality anti-aliasing.
    • FSR 2 replaces any TAA within the game frame.

High image quality

  • Higher image quality than FSR 1 technology at all quality presets/resolutions.
    • Different quality modes available.
    • Dynamic Resolution Scaling supported.

No machine learning

  • Does not require dedicated Machine Learning (ML) hardware.
    • More platforms can benefit.
    • Gives more control to cater to a range of different scenarios.
    • Better ability to optimize.

Cross-platform

  • Boosts framerates in supported games.
    • Wide range of products and platforms, both AMD and select competitors.

Open source

  • Available here on GPUOpen under an MIT license.

How it works

General integration

As with FSR 1, FSR 2 is open source, via the MIT license. Integration should be easy, via the intuitive, flexible API. FSR 2 requires three buffers (depth, color, and velocity) be provided at render resolution, with optional reactive mask and exposure required for the best possible quality.

Bonus tip: You’ll find an easier integration for FSR 2 technology into games that already have a temporal upscaling rendering path.

Render resolution

Presentation resolution

FSR2 Buffer IO

Where to integrate AMD FidelityFX Super Resolution 2 in a frame

Compared to FSR 1, FSR 2 is earlier in the frame pipeline.

  • As it replaces TAA, any post processing that requires anti-aliased input will need to be post-upscale.
  • Any post-processing effect that requires the depth buffer will need to be pre-upscale.

Render resolution

Presentation resolution

FSR 2 Where in frame

No machine learning?

Machine Learning (ML) is not a prerequisite to achieving good quality image upscaling. Often, ML-based real-time temporal upscalers use the model learned solely to decide how to combine previous history samples to generate the upscaled image: there is typically no actual generation of new features from recognizing shapes or objects in the scene. AMD engineers leveraged their world-class expertise to research, develop and optimize a set of advanced hand-coded algorithms that map such relationships from the source and its historical data to upscaled resolution.

The FidelityFX Super Resolution 2 analytical approach can provide advantages compared to ML solutions, such as more control to cater to a range of different scenarios, and a better ability to optimize. Above all, not requiring dedicated ML hardware means that more platforms can benefit, and more gamers will be able to experience FSR 2.

How long to integrate?

Integration time will vary from title to title.

FSR 2 timeline

FSR 2 quality modes

There are four different quality modes: Quality, Balanced, Performance, with Ultra Performance as an optional mode. These vary the amount of scaling to apply to the source image, depending on the quality/performance ratio desired. 

There’s also:

  • Support for Dynamic Resolution Scaling, whereby source resolution is determined by a fixed performance budget to achieve a minimum frame rate.
  • Optional configurable RCAS sharpening to help emphasize pixel detail.
    • We encourage developers to provide a sharpness slider to allow end users to set the sharpening amount according to their preferences.
FSR2 Quality Modes Table

* Optional

FSR 2 performance

AMD FidelityFX Super Resolution 2 is designed to boost framerates in supported games. As an advanced temporal upscaling solution, it will be more demanding on graphics cards than a spatial upscaling solution like FSR 1. Gaming experience may vary, depending on specific system specifications, the requirements of individual games that support FSR 2, and the target resolution. Nevertheless, gamers may be able to have a good upscaling experience on lower performing or older GPUs.

The table below lists the upper bound of performance overhead of FSR 2 in quality and performance modes for different classes of AMD GPUs and target resolutions.

Quality mode

  • Includes auto-exposure, no sharpening.
FSR 2 TARGET RESOLUTION AMD RADEON™ RX 6800XT AMD RADEON™ RX 6700XT AMD RADEON™ RX 5700XT
4K
< 1.3ms
< 1.9ms
< 2.4ms
1440p
< 0.6ms
< 0.8ms
< 1.1ms
1080p
< 0.3ms
< 0.5ms
< 0.6ms

Performance mode

  • Includes auto-exposure, no sharpening.
FSR 2 TARGET RESOLUTION AMD RADEON™ RX 6800XT AMD RADEON™ RX 6700XT AMD RADEON™ RX 5700XT
4K
< 1.1ms
< 1.6ms
< 2.0ms
1440p
< 0.5ms
< 0.7ms
< 0.9ms
1080p
< 0.3ms
< 0.4ms
< 0.5ms

For both quality and performance mode tables:

  • AMD Ryzen™ 9 5900X @ 3.70GHz.
  • AMD Radeon™ Adrenalin 22.5.2.
  • GPU as described in tables.
  • Windows 11 Pro 64-bit V21H2
  • DirectX 12
    • Direct3D version 9.14.10.01521

Comparison images

The comparison image below (FSR 2.0) uses a 1280 x 600px 1:1 crop (zoom in if needed) of a 4K frame from the new Sponza scene from Intel®.

Note: All the embedded images shown below are JPEGs saved with minimal compression so this web page loads much faster. If you would like to view the original PNGs (including other quality modes) these are available under every image, along with links to other scenes not shown on this page. You can also download every image linked to below in this one big ZIP:

[All images ZIP ~340MB]

4K comparison

  • Sharpening applied to FSR 2 image
Native FidelityFX Super Resolution 2.0 Quality Mode
  • 4K all qualities from scene shown above [ZIP ~53MB]
  • 4K all qualities alternate scene 1 – DEATHLOOP [ZIP ~80MB]
  • 4K all qualities alternate scene 2 – DEATHLOOP [ZIP ~80MB]

1440p comparison

Our engineers have been working closely with engineers at Arkane Lyon to bring FSR 2 to DEATHLOOP™. We’re excited to bring you these lower resolution  comparison screenshots. You can read more about these images on a recent AMD blog.

The two sets of comparison images¹ below are 1280 x 600px 1:1 crops (zoom in if needed) of different resolution frames taken from a development build of DEATHLOOP. 

Please note: At low resolutions (under 720p), DEATHLOOP can sometimes not render certain small objects at far distances, such as the light bulbs shown in the 1080p comparison images. When targeting 1080p output, the FSR 2 internal render resolution is 1280 x 720 or below, which results in the missing objects shown here — this issue is therefore not related to FSR 2.

Native FidelityFX Super Resolution 2.0 Quality Mode
  • 1440p all qualities from scene shown above [ZIP ~40MB]
  • 1440p all qualities alternate scene [ZIP ~40MB]

1080p comparison

Native FidelityFX Super Resolution 2.0 Quality Mode
  • 1080p all qualities from scene shown above [ZIP ~20MB]
  • Scene 1 – 1080p Native [as above, PNG ~5MB]
  • Scene 1 – 1080p Quality [as above, PNG ~5MB]
  • Scene 1 – 1080p Balanced [PNG ~5MB]
  • Scene 1 – 1080p Performance [PNG ~5MB]
  • 1080p all qualities alternate scene [ZIP ~20MB]

Take a look at our latest video (September 2022) to see FSR 2.1 in action! 

Farming Simulator 2022
(View on YouTube in new window)

Find out more on our YouTube channel

 

FidelityFX Super Resolution 2

AMD FidelityFX Super Resolution 2 is AMD’s next generation upscaling technology, delivering similar or better than native image quality using temporal data.

In this talk, our engineers will first discuss how this new technology is able to significantly increase image quality, diving into some of the algorithmic aspects which enable FSR 2 to reconstruct upscaled fine details from low-resolution input images. Then, multiple optimizations implemented during development will be presented, including how FSR 2 manages cross-platform performance. 

Lastly, game developers will learn valuable insight on how to integrate FSR 2 to allow for the highest visual quality upscaling at optimal performance.

Temporal upscaling: Past, present, and future

This presentation provides a deep dive into temporal upscaling, describing how different parts of the algorithm work together to generate the final image and what techniques are used in FSR to mitigate various common artifacts.

The presentation will also cover lessons learned from integrating temporal upscaling into various AAA games and will suggest best practices for integration, from quickly getting a working prototype to full integration into your engine using all bells and whistles.

Finally, this presentation will discuss the evolution of FSR 2 since initial release, as several internal features required a significant redesign due to special requirements of various titles.

Developers with games which support FSR 2 now or in the future

[Full list of titles here]

ACME
Arkane Lyon
Asobo Studio
CCP
Gearbox
Giants Software
IOI
Luminous Productions
Luoxigu
Obsidian Entertainment
Overborder
Perfect World Games
rct.ai
Reflector Bandai Namco
Respawn Entertainment
Santa Monica Studios
Softstar
Net Marble Souleve
Striking Distance
Tag Studios
Thunder Fire
Ubisoft Snowdrop
Vaki Games
Wonder People

Watch our 1 Year of AMD FidelityFX Super Resolution video

1 year of FSR
(View on YouTube in new window)

Related GPUOpen content

All part of the FidelityFX SDK!

AMD FidelityFX SDK

AMD FidelityFX™ SDK

The AMD FidelityFX SDK is our easy-to-integrate solution for developers looking to include FidelityFX features into their games.

Don't miss our other effects

An image of a toy train blurring into the background

AMD FidelityFX™ Blur

AMD FidelityFX Blur is an AMD RDNA™ architecture optimized collection of blur kernels from 3×3 up to 21×21.

Shadow Denoiser

AMD FidelityFX™ Denoiser

AMD FidelityFX Denoiser is a set of denoising compute shaders which remove artefacts from reflection and shadow rendering.

FidelityFX Lens - bar room

AMD FidelityFX™ Lens

AMD FidelityFX Lens is an AMD RDNA™ architecture optimized implementation of some of gaming’s most used post-processing effects.

AMD FidelityFX Parallel Sort

AMD FidelityFX™ Parallel Sort

AMD FidelityFX Parallel Sort makes sorting data on the GPU quicker, and easier. Use our SM6.0 compute shaders to get your data in order.

Radeon™ Cauldron Framework

Radeon Cauldron is our open-source experimentation framework for DirectX®12 and Vulkan®, provided in the AMD FidelityFX SDK.

TressFX

The TressFX library is AMD’s hair/fur rendering and simulation technology. TressFX is designed to use the GPU to simulate and render high-quality, realistic hair and fur.

Disclaimers and attributions

1.DEATHLOOP screenshot game settings: “Ultra” graphics preset, DirectX® 12. AMD Radeon™ RX 6900 XT with AMD Smart Access Memory™ and FSR 2.0 “Quality”, “Balanced”, and “Performance” modes enabled (driver: AMD Radeon™ Software Adrenalin 22.2.1), AMD Ryzen™ Threadripper 3970X, 128GB DDR4 RAM, and Windows® 10 Pro Results may vary. 

 

 

Deathloop © 2022 ZeniMax Media Inc. Developed in association with Arkane Studios. Deathloop, Arkane, Bethesda, Bethesda Softworks, ZeniMax and related logos are registered trademarks or trademarks of ZeniMax Media Inc. in the U.S. and/or other countries. All Rights Reserved.

Trailer: DEATHLOOP game settings: “Ultra” graphics preset with raytracing, DirectX® 12. AMD Radeon™ RX 6900 XT with AMD Smart Access Memory™ and FSR 2.0 “Quality” and “Performance” modes enabled (driver: AMD Radeon™ Software Adrenalin 21.50-220210a), AMD Ryzen™ 9 5900X, 16GB DDR4-3200 RAM, Qogir AM4 motherboard, and Windows® 10 Pro May 2020 update (19041.508). Results may vary.

© 2022 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD Arrow logo, FidelityFX, Radeon, Ryzen, and combinations thereof are trademarks of Advanced Micro Devices, Inc. Other product names used in this publication are for identification purposes only and may be trademarks of their respective owners.