AMD FidelityFX Variable Shading

AMD FidelityFX™ Variable Shading (VS) provides an open source header implementation to easily integrate Variable Rate Shading into your game. The effect works by analyzing luminance variance in the previous frame and uses motion vectors to generate a shading rate image.

Supports: 

  • DirectX®12 Ultimate.
  • Vulkan®.

Part of the AMD FidelityFX™ SDK

AMD FidelityFX SDK components

Download the latest version as part of FidelityFX SDK v1.1

Updated as part of AMD FidelityFX SDK v1.1:

  • AMD FidelityFX backend updates, including buffer allocator overrides
  • Updated documentation and release of reference documentation for SDK + Framework
  • Native Microsoft® GDK® backend implementation library (requires developer access to GDK® program)

Xbox developer?

An example use of AMD FidelityFX Variable Shading exists within the Xbox Game Development Kit samples.

xbox

Features

State-of-the-art algorithm

Optimized for Shader Model 6.0+

Open source, MIT license

Details

Features of the implementation: 

  • AMD RDNA™ 2-optimized algorithm.
  • Support for Direct3D®12 API.
  • Shaders written in HLSL utilizing SM 6.0 wave-level operations.

A sample application is provided for Direct3D®12.

Comparison

Full Shading Rate 2×1 or 1×2 Shading Rate 2×2 Shading Rate

See AMD FidelityFX Variable Shading in action with DIRT® 5

Dirt5
Watch "Radeon RX 6000 Partner Showcase: Dirt 5 and Codemasters" on YouTube in a new window

Additional resources

Engineer Stephan Hodes provides a short description how VRS works, and how AMD’s FidelityFX Variable Shading technique can assist with integrating VRS into your engine.

FidelityFX Testimonials

Find out what developers are saying about AMD FidelityFX.

Version history

Updated as part of AMD FidelityFX SDK v1.1:

  • AMD FidelityFX backend updates, including buffer allocator overrides
  • Updated documentation and release of reference documentation for SDK + Framework
  • Native Microsoft® GDK® backend implementation library (requires developer access to GDK® program)

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.