As promised last month, AMD FSR open source has been made available today on the GPUOpen under an MIT license. You get access to a selection, while the entire source code is available on GitHub. This bodes well not only for game developers but also for modders, because some have already managed to add FSR to Grand Theft Auto V without even having access to the source code. Such mods and hacks should be even easier now.
AMD also shared a lot of documentation on how the FidelityFX Super Resolution works. Some of it is included in the GPUOpen page, while the rest is available in a separate document dedicated to integration.
FidelityFX Super Resolution is a spatial upscaling: it works by taking the current anti-aliasing frame and upscaling it to display resolution without relying on other data such as frame history or motion vectors.
At the heart of FSR is a groundbreaking algorithm that detects and recreates high-resolution edges from the source image. These high-resolution edges are an important element required to make the current frame a “super-resolution” image.
FSR provides consistent upscaling quality regardless of whether the frame is in motion, which can provide quality benefits compared to other types of upscaling.
FSR consists of two main passes:
- An upscaling card called EASU (Edge-Adaptive Spatial Upsampling) which also performs edge reconstruction. In this pass, the input frame is analyzed, and the main part of the algorithm detects gradient reversals – mainly looking at how neighboring gradients differ – from a set of input pixels. The intensity of the setbacks defines the weights to be applied to the reconstructed pixels at screen resolution.
- A grinding pass called RCAS (Robust contrast-adaptive sharpness) that extracts pixel details in the scaled-up image.
FSR also comes with color space conversion, dithering and tone mapping help functions to help you integrate it into standard rendering pipelines used with today’s games.
According to AMD, developers need to keep three important aspects in mind when considering FidelityFX Super Resolution:
- the image should be well anti-alias with techniques such as TAA or MSAA;
- the image should be generated with negative MIP skew to increase the texture details
- the image should be noise-free.
The performance cost of 4K resolution is between 0.40ms or less (RX 6800 XT, RTX 3080), 0.60ms or less (RX 6700 XT, RTX 3060Ti) or 1.0ms or less at worst with standard GPUs like RX 5700 XT and RTX 2060 SUPER.
AMD also confirmed that FSR will come to four games in the near future. Especially Arcadegeddon and Necromunda: Hired Gun will be updated with it from tomorrow, while FidelityFX Super Resolution support for Resident Evil Village and Edge of Eternity will come in the next two weeks. Necromunda: Hired Gun and Edge of Eternity already has NVIDIA DLSS support, which gives us the very first shot at a direct comparison between the two technologies.
Last but not least, FSR is now available in a special beta preview of the Unity 2021.2 HDRP, just days after the NVIDIA DLSS was also added to the Unity 2021.2 HDRP beta.