Get ready to see frame generation everywhere as AMD finally releases its FSR 3 tools and source code into the wild

Screenshot from Avatar: Frontiers of Pandora.

AMD has announced that its FidelityFX Super Resolution 3 (FSR 3) development kit of upscaling and frame generation tools has been added to GPUOpen and GitHub, nearly nine months after the technology’s launch. This means that anyone can see the source code for the routines, try it out to see how it works and implement the features in their games and applications.

Some developers already had access to this, by working directly with AMD to add FSR 3 to their games. However, the actual number of new releases in 2023, AMD’s sports system: just Forspoken, Immortals of Aveum, and Avatar: Frontiers of Pandora, were very disappointing. This is not to say that many games haven’t used FSR, quite the opposite, it’s just that they have used the previous systems (eg FSR 2.2 going into Baldur’s Gate 3).

What makes FSR 3 a bit special is that there are four systems in the whole package: an upscaler, an optical flow technique, frame interpolation (aka frame generation), and a routine to manage the swapchain. The upscaler is something that many of us will already be familiar with: It uses a lot of smart algorithms, all processed through shaders, to increase the frame resolution and then clean up the image a bit.

That’s basically what FSR has been since the beginning, but now we’ve thrown in frame generation for good measure. AMD developed this as an alternative to Nvidia’s DLSS Frame Generation 3, a technique that uses a machine learning model to create a new frame, based on two normally rendered frames. This system is not only proprietary to Nvidia but is also limited to its GeForce RTX 40-series graphics cards.

Not only does FSR 3 work on any GPU that supports DirectX 12 and compute Shaders v6.2, but the code is completely open source. You can literally do whatever you want with it, including repackaging it and selling it as your ‘own’ piece of software, if you’re so immorally inclined.

Browsing through my usual chats, AMD’s announcement has been well received by the modding community and it seems to be expected that we will see a lot of FSR 3 frame generation mods appear for games that are not currently implemented (or were maybe not).

Diagram showing the data flow paths in AMD's FSR 3 algorithmsDiagram showing the data flow paths in AMD's FSR 3 algorithms

Diagram showing the data flow paths in AMD’s FSR 3 algorithms

I have no doubt that this will be the case, but I also doubt that many of these mods will look very bad or have serious image quality issues.

This is due to the way the frame interpolation algorithm works in FSR 3. The first thing it requires is the upscaler from FSR 2 to be present and in use, although a large number of games at any rate. Then, the game needs to create additional buffers, to share data between the different components of FSR 3. Without these, no frame generation mod will work.

Where things get complicated is the way the game manages the user interface (UI or HUD) phase of the rendering process. The user interface is what shows your health bar, what items you have, and so on, and it’s pretty much the last thing added to a frame before it’s flagged for presentation on the monitor.

For FSR 3 frame interpolation to work properly, the UI must be done in one of three ways: As a separate function that is called every time a frame (real or generated) is completed; gets rendered as a texture, and then applied to the frame at the end; or the game engine renders frames without the UI and uses these for the interpolation step.

Diagram showing one method of UI management using AMD's FSR 3 algorithmDiagram showing one method of UI management using AMD's FSR 3 algorithm

Diagram showing one method of UI management using AMD’s FSR 3 algorithm

Many games use the second method to generate the UI in a frame but because it is only created with each true frame, the content will never be updated or modified for the generated frames.

At high frame rates, the UI may appear glitchy or at the very least, a bit laggy. How a game creates and manages the UI is not a trivial task and I suspect that many FSR 3 frame generation mods will have some image quality issues.

The first method is the best to use but as to how many games he does this way, I could not honestly say. The third method was the worst to use, in terms of overall image quality, but I should imagine that few developers would consider making their games this way.

However, modders are inventive, and given the open source nature of FSR 3, we may have to come up with some very creative solutions that avoid all the problems.

Your next upgrade

Nvidia RTX 4070 and RTX 3080 Founders Edition graphics cardNvidia RTX 4070 and RTX 3080 Founders Edition graphics card

Nvidia RTX 4070 and RTX 3080 Founders Edition graphics card

Best CPU for games: The top chips from Intel and AMD.
The best gaming motherboard: The right boards.
Best graphics card: Your perfect pixel crusher is waiting.
Best SSD for gaming: Get into the game ahead of the rest.

At least there is no reason for a developer not to implement upscaling and frame generation in their game now, provided it uses DirectX 12. Support for Vulkan is still being developed but there is no hint as to when it will be ready .

AMD’s frame generation technology is very clever and it’s nice that it’s so widely supported, and it deserves to be used in more than three games, a bit average. We saw a suggestion on Reddit that it be done could coming to Call of Duty: Modern Warfare 3 and as a game series that traditionally runs very well on AMD GPUs, it would be an ideal platform to really kick off the adoption of FSR 3.

Until then, we will have to wait for the modders to step in, but do not expect any miracles, okay?

Leave a Reply

Your email address will not be published. Required fields are marked *