AMD FidelityFX Super Resolution 3
Avatar: Frontiers of Pandora splash image with a flying creature complete with rider, flying through a lush landscape.

AMD FidelityFX™ Super Resolution 3.1.1 (AMD FSR 3) technology uses a combination of super resolution temporal upscaling technology and frame generation to deliver a massive increase in framerates in supported games.

AMD FSR 3 technology extends upon AMD FSR 2’s upscaling by adding Frame Generation – the ability to generate entirely new game frames and present those to the user to improve FPS. FSR 3 does this by adding two new technologies – Frame Interpolation and Optical Flow enhanced from AMD Fluid Motion Frames. AMD FSR 3.1 further expands upon this technology with quality improvements and the ability to use AMD FSR Frame Generation with any upscaling technology.

Discover which game developers are already using, or are planning on using, AMD FSR 3 in their titles further down this page.

Supports:

  • DirectX® 12.
  • Vulkan®
  • Unreal Engine 5.

Part of the AMD FidelityFX™ SDK

AMD FidelityFX SDK components

Download the latest version as part of the AMD FidelityFX SDK 1.1.1 - AMD FSR v3.1.1

FSR 3.1.1 minor update (as part of the AMD FidelityFX SDK 1.1.1 release):
  • AMD FidelityFX Frame Interpolation Swapchain 1.1.0
    • Add support for AMD Anti-Lag 2.
  • FSR 3.1.1 includes a number of fixes for issues discovered with FSR 3.1.0.
  • FSR 3.1.1 has been tested and optimized for Microsoft GDK for Xbox Series X/S.
FSR 3.1 (as part of the larger AMD FidelityFX SDK 1.1 release):
  • AMD FidelityFX API integration.
  • API documentation including quick start checklist.
    • We strongly recommend you consult this checklist to ensure the best upscaling quality!
  • Separation of upscaling and frame generation.
  • Upscaling quality improvements and new features.
  • Vulkan implementation.
  • Full C++ and HLSL source provided via a library.
  • AMD FSR 3 DirectX 12 and Vulkan sample.
  • Learn more in our AMD FSR 3.1 blog post.

Unreal Engine 

  • More info and links for our Unreal Engine 5 plugin further down

Features

Frame Generation

  • Insert interpolated frames for smoother results.
  • Works in both GPU and CPU-limited situations.
Upscale resolution

Resolution upscaling

  • Image quality similar or better than native rendering. 
  • Support for any area scale factor between 1x and 9x (including Dynamic Rate Scaling/DRS).

Latency reduction

  • Keeps latency down as much as possible.
  • Frame pacing for regular frame rates with and without VRR.

Ease of integration

  • FidelityFX API.
  • DirectX® 12, Vulkan, and Unreal Engine 5 support.

Highly optimized

  • Hand-optimized for great performance across mid to high-range GPUs.
  • Frame Generation works in both GPU and CPU-limited situations.
Antialiasing

Anti-aliasing

  • Includes high-quality anti-aliasing.
  • FSR 3 replaces any TAA within the game frame.
  • New FSR 3 “Native AA” mode.

Cross platform

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

Open source

  • Available here on GPUOpen under the MIT license.

Integration

General overview

AMD FidelityFX Super Resolution 3.1 technology includes both upscaling and frame generation. AMD FSR 2 is therefore superseded by FSR 3. Developers only need to integrate FSR 3.1 to benefit from upscaling and frame generation. 

Frame generation in FSR 3.1 is optional – it can be disabled if only upscaling is desired. This will effectively revert behavior to be equivalent to FSR 2.

  • If a game already supports FSR 2 then replace it with FSR 3.1.1 using the FidelityFX API for the simpler upgrade path.
  • If a game does not already support FSR 2 then integrate FSR 3 directly.

FSR 3.1 Frame Generation is compatible with third-party upscalers, as long as render-resolution motion vectors and depth, in supported formats, is provided to the API.

Signed AMD FidelityFX API DLL integration is strongly recommended for debug and future compatibility purposes.

We also have documentation to support migration to the AMD FidelityFX API.

Important notes for integrating AMD FSR 3

Minimum frame rate

FSR 3 Frame Generation runs best when interpolating from a minimum of 60 fps pre-interpolation (e.g. after upscale). Whilst FSR 3 can roughly double any input frame rate, going below 60 is not recommended. This is due to interpolation visual artifacts being more prominent at lower frame rates. Sub 30fps frame rate pre-interpolation should be absolutely avoided.

Upscaling quality pre Frame Generation

Ensure your game has a high-quality FSR 3 upscale-only implementation first (see FSR 2 documentation here) as a sub-optimal integration of the upscale component will carry over any upscaling artifacts to interpolated frames!

Altering FSR 3 behaviour based on sub-60 fps detection is not recommended. We recommend educating players about this and letting them adjust their own graphics settings as needed.

User interface considerations

There are multiple methods for UI composition. Make sure you read our detailed documentation to choose the optimal solution for your game.

Follow our recommendations for UI requirements.

We also now provide localization strings for all three versions of FidelityFX Super Resolution for use where you refer to FSR in your game. You can find these on our AMD FidelityFX Naming Guidelines page.

Variable Refresh Rate (VRR) considerations

FreeSync, G-Sync, and Adaptive Sync are all forms of Variable Refresh Rate technologies. With VRR, refresh rate is dictated by frames sent by the GPU to the monitor.

It is highly recommended that games implement a frame limiter to provide options to players who want a steady frame rate.

FSR 3 Frame Generation behaves according to the following table:

VRR OFF VRR ON
V-Sync OFF Tearing will be seen at all frame rates. Recommended setting if frame times are highly variable
Some tearing may appear in some circumstances (e.g. fps close to or above monitor’s max refresh).
Hardware Accelerated GPU Scheduling disabled may result in more tearing.
V-Sync ON Tearing-free experience at all frame rates.
FPS limited to integer multiple of max refresh when fps is under max refresh. This may cause “judder” due to uneven sync intervals.
Recommended setting if frame times are stable (e.g. via limiter)
Tearing-free experience at all FPS Frame rate will be capped at monitor’s maximum refresh rate.
Render rate is implicitly limited to half of the monitor’s max refresh rate.

Debug view

FSR 3 has debug views for integration testing of Upscaling, Frame Generation, and screen tearing. Read more in our FSR 3 blog.

Sharpening

FSR 3 comes with its own optional sharpening pass. It is strongly recommended that the game exposes a sharpening slider – this is also a common request from players.

Compatibility with third-party software or code

AMD FSR 3 requires unencumbered access to the swap chain for best frame pacing results. Software libraries that intercept DXGI calls may cause frame pacing issues with FSR 3.

Third-party software that intercept DXGI calls to display an on-screen overlay may be incompatible with FSR 3 Frame Generation. It is recommended to disable those for best frame pacing FSR 3 results.

  • AMD OCAT has been validated to work correctly with FSR 3 Frame Generation.

There are more substantial notes expanding on everything here in our deck/main documentation pages.

How it works

AMD FSR 3 data flow

AMD FSR 3.1 architecture

The four basic steps to integrate AMD FSR 3 technology into your game

Step 1: FSR 3 upscaling

  • For upscaling, FSR 3 integration should be similar to FSR 2. Integration should be easy, via the intuitive, flexible AMD FidelityFX API.  See our API documentation for more details.
  • You’ll find an easier integration for FSR 3 upscaling into games that already have a temporal upscaling rendering path. If FSR 2 is already supported, you can simply replace FSR 2 upscale with FSR 3 upscale.

Step 2: Swapchain

  • Replace or create your swap chain using the AMD FidelityFX API DX12 or Vulkan Frame Generation Swapchains.

Step 3 – Frame Generation

  • FSR 3 Frame Generation requires some additional input on setup and dispatch, and swapchain handling.
    • Start off with Async disabled to validate integration quality.
  • Call the Frame Generation Prepare Dispatch API at upscale/TAA time in the graphics pipeline.

Step 4 – UI handling

  • There are three different UI composition options: (Note: this step is REQUIRED for integration)
    1. Composite UI stored in another RT on top of generated frames.
    2. Call back into the engine and have you render UI on top of the generated frames.
    3. Identify UI by comparing the game frame without UI to the game frame with UI.

FSR 3 Optical Flow and Frame Generation workloads

The Optical Flow and Frame Generation workloads can be either run on the presentation queue provided by the game, or an async queue provided by the FrameInterpolationSwapchain .

More information on this and the asynchronous compute pipeline in our documentation.

FSR 3 present queue, upscaling, frame generation pipeline

AMD FSR 3 quality modes

FSR 3 adds a new quality mode, Native AA,  to the four modes from earlier FSR implementations – 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. 

The new Native AA quality mode is a pure anti-aliasing option, no upscaling takes place. If you enable it together with “Frame Generation” this provides frame generation without upscaling. 

Note: Native AA quality mode has the largest performance overhead. It still requires reactive, and transparency + composition masks to work correctly! 

FSR 3 quality mode Description Scale factor Input resolution Output resolution
Native AA Native AA mode provides an image quality superior to native rendering with a modest performance cost. 1.0x per dimension
(1.0x area scale)
(100% screen resolution)
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160
Quality Quality mode provides an image quality equal or superior to native rendering with a significant performance gain. 1.5x per dimension
(2.25x area scale)
(67% screen resolution)
1280 x  720
1706 x  960
2293 x  960
2560 x 1440
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160
Balanced Balanced mode offers an ideal compromise between image quality and performance gains. 1.7x per dimension
(2.89x area scale)
(59% screen resolution)
1129 x  635
1506 x  847
2024 x  847
2259 x 1270
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160
Performance Performance mode provides an image quality similar to native rendering with a major performance gain. 2.0x per dimension
(4x area scale)
(50% screen resolution)
 960 x  540
1280 x  720
1720 x  720
1920 x 1080
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160
Ultra Performance* Ultra Performance mode provides the highest performance gain while still maintaining an image quality representative of native rendering. 3.0x per dimension
(9x area scale)
(33% screen resolution)
 640 x  360
 854 x  480
1147 x  480
1280 x  720
1920 x 1080
2560 x 1440
3440 x 1440
3840 x 2160

* Optional

AMD FSR 3 performance overhead

The performance data below has been taken from the FidelityFX SDK sample and Microsoft® PIX and rounded up, and should be taken as an estimate of runtime.

  • Sharpening disabled.
  • Async compute disabled.

Integrating FSR 3 with async compute can help reduce the cost of frame generation by having it scheduled asynchronously.

FSR 3.1 target resolution Quality mode Enthusiast GPUs
(AMD RADEON™ RX 7900 XTX)
Performance GPUs
(AMD RADEON™ RX 6800 XT)
Mainstream GPUs
(AMD RADEON™ RX 5700 XT)
Upscale
(ms)
Frame Generation
(ms, up to)
Upscale
(ms)
Frame Generation
(ms, up to)
Upscale
(ms)
Frame Generation
(ms, up to)
4K Native AA 1.7 2.4 2.9 3.8 6.5 7.3
Quality 1.0 1.7 1.8 2.4 4.4 5.0
Performance 0.8 1.5 1.5 2.1 3.7 4.5
1440p Native AA 0.8 1.0 1.2 1.6 3.0 3.3
Quality 0.5 0.9 0.9 1.3 2.0 2.4
Performance 0.4 0.7 0.7 1.0 1.7 2.1
1080p Native AA 0.5 0.7 0.7 1.0 1.7 2.1
Quality 0.3 0.6 0.5 0.9 1.2 1.6
Performance 0.3 0.5 0.4 0.7 1.0 1.4
System used for performance testing

Asrock X670E Steel Legend

AMD Ryzen™ 9 7950X @ 4.2 Ghz 

System RAM: 64GB G.Skill DDR5-6000

Windows® 10 Pro 64-bit

AMD Software: Adrenaline Edition 24.3.1

Documentation

Blogs

Don’t miss our blogs, where our engineers explain the latest developments with AMD FSR 3 in detail. 

Technical documentation here on GPUOpen for developers

AMD FSR 3 technology is available in titles now

See the very latest list over on amd.com

Avatar: Frontiers of Pandora is the largest and most technologically advanced game we have shipped on our Snowdrop engine so far.

During its development, we caught our eyes on AMD's FidelityFX Super Resolution tech pretty early on and it quickly became the default option for anti-aliasing and upscaling in Snowdrop.

The compute-based algorithm allowed us to opt to use FSR for all our platforms and give us a consistent high quality and performant solution across the board, something we definitely value a lot.

With high quality temporal upscaling and frame generation we can ensure that players experience the game for what it truly is.

Hampus Siversson, Associate Lead Engine Programmer

Massive Entertainment – A Ubisoft studio

We'd love for you to join our AMD FSR 3 partner list!

Game developers using AMD FSR 3

Version history

FSR 3.1.1 minor update (as part of the AMD FidelityFX SDK 1.1.1 release):
  • AMD FidelityFX Frame Interpolation Swapchain 1.1.0
    • Add support for AMD Anti-Lag 2.
  • FSR 3.1.1 includes a number of fixes for issues discovered with FSR 3.1.0.
  • FSR 3.1.1 has been tested and optimized for Microsoft GDK for Xbox Series X/S.

Part of the AMD FidelityFX SDK 1.1 release

  • AMD FidelityFX API integration.
  • API documentation including quick start checklist.
    • We strongly recommend you consult this checklist to ensure the best upscaling quality!
  • Separation of upscaling and frame generation.
  • Upscaling quality improvements and new features.
  • Vulkan implementation.
  • Full C++ and HLSL source provided via a library.
  • AMD FSR 3 DirectX 12 and Vulkan sample.
  • Learn more in our AMD FSR 3.1 blog post.
  • Fixing a rare crash that could occur with fast camera motion on all GPUs.
  • Initial release as part of AMD FidelityFX SDK

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.

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

Avatar: Frontiers of Pandora™ © 2023 20th Century Studios. Game Software excluding 20th Century Studios elements: © 2023 Ubisoft Entertainment. All Rights Reserved. Avatar: Frontiers of Pandora™ and the 20th Century Studios logo are trademarks of 20th Century Studios. Licensed to Ubisoft Entertainment by 20th Century Studios. Ubisoft and the Ubisoft logo are registered or unregistered trademarks of Ubisoft Entertainment in the U.S. and/or other countries.

 

FORSPOKEN © 2023 SQUARE ENIX CO., LTD. All Rights Reserved.

 

Immortals of Aveum © 2023 Electronic Arts Inc.

Like a Dragon Gaiden: The Man Who Erased His Name and Like a Dragon: Infinite Wealth © SEGA. All rights reserved. SEGA is registered in the U.S. Patent and Trademark Office. SEGA, the SEGA logo, Yakuza and LIKE A DRAGON are registered trademarks or trademarks of SEGA CORPORATION or its affiliates. All other trademarks, logos and copyrights are property of their respective owners.