During GDC 2022, Arkane Studios held a presentation titled A Guided Tour of Blackreef: Rendering Technologies in Deathloop to showcase the engine advancements featured in the game; the final section delivered some interesting information on the upcoming implementation of FSR 2.0.
Deathloop will be the first game to support AMD’s new version of FidelityFX Super Resolution, which moves from a spatial upscaling solution to a temporal upscaling solution to greatly improve image quality.
Indeed, AMD Developer Technology Engineer Lou Kramer began her talk by pointing out with a screenshot comparison that the edges of the wooden pattern are very well reconstructed in the FSR 2.0 image (Quality Mode, from 1440p to 4K), to the point where they even look better than the native 4K image with TAA and Sharpener enabled.
Kramer then discussed the input sources of FSR 2.0 in Deathloop, such as color buffer, depth buffer, and motion vectors. The input color buffer is in Linear Color Space, and the image format is R11G11B10_FLOAT. To improve the precision in the target image format, the values are multiplied with a pre-exposure value. Since FSR 2.0 needs to do this too, the pre-exposure value is passed down to it as a per-frame parameter. Deathloop also provides the exposure texture for input, though this is not required as FSR 2.0 can compute one of its own.
When it comes to output, Kramer said Deathloop’s presentation is very soft even when rendered natively, so there is a sharpener available in the graphics menu. However, FSR 2.0 has its built-in sharpener, RCAS (Robust Contrast Adaptive Sharpener); once FSR 2.0 is enabled, Deathloop’s own is disabled to avoid excessive sharpening.
Deathloop is set to support all of FSR 2.0’s modes (from Quality to Ultra Performance) and even Dynamic Resolution Scaling.
The most interesting part of the presentation came in last when we got a first look at the performance improvements FSR 2.0 is set to deliver in Deathloop.
It’s worth noting the numbers were registered on beta versions, so they might be different in the final version. That said, compared to native 4K with TAA, Sharpening and Raytracing enabled, FSR 2.0 can boost up performance by up to 50% in Quality Mode (reconstructed from 1440p), by up to 69% in Balanced Mode (1270p), by up to 90% in Performance mode (1080p), and by up to 147% in Ultra Performance mode (720p). That is on an AMD Radeon RX 6900 XT graphics card.
In another GDC 2022 talk dedicated entirely to FidelityFX Super Resolution 2.0, AMD engineer Thomas Arcila revealed the upsampling part of FSR 2.0 to be handled through Lanczos, the famous high-quality interpolation filter. Ringing artifacts are avoided through clamping.
While the new version of FidelityFX Super Resolution will be cross-platform, AMD did spend some time optimizing processes for RDNA 2 architectures. For example, optimizing the Lanczos calculations includes storing precomputed Lanczos lookup tables in a texture and then sampling them at runtime. According to AMD engineer Colin Riley, this is faster on some RDNA 2 architectures.
Additionally, AMD found that running some FSR 2.0 shader workloads in Wave64 instead of Wave32 can improve runtime by up to 12% on a Radeon RX 6800XT. However, some of these RDNA 2 optimizations would run slower on non-RDNA 2 GPUs, including both previous Radeon graphics cards and competitor products.
In these cases, the optimizations are marked and have a fallback implementation present so that they are disabled for certain GPUs. For example, the aforementioned WaveSize optimization is only active where performance would get an improvement.
Finally, AMD provided timeframe estimates for FSR 2.0 integration. Games that already support NVIDIA DLSS 2.0 are the quickest (less than three days), whereas games without support for decoupled display/render resolution or motion vectors can take up to four weeks or even longer.
The first AMD FSR 2.0 games are expected to be available in Q2 2022. Stay tuned for more on FidelityFX Super Resolution 2.0 in the lead-up to its launch.