AMD FidelityFX Screen Space Reflections

High-fidelity reflections in your scene, without costing the earth. AMD FidelityFX™ Stochastic Screen Space Reflections (SSSR) uses your rendered frame to create brilliant reflections. 

Supports:

  • Direct3D®12.
  • Vulkan®.

Part of the AMD FidelityFX™ SDK

AMD FidelityFX SDK components

Download the latest version - v1.3

This release adds the following features:

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)

Features

State-of-the-art algorithm

Optimized for Shader Model 6.0+

Open source, MIT license

Details

AMD FidelityFX SSSR provides an open source library to easily integrate stochastic screen space reflections into your game.

The term “Screen Space Reflections” describes an effect that can create realistic looking reflections purely based on information already present in the rendered image. The underlying algorithm shoots reflection rays from a depth imprint of the rendered scene (a so-called “depth buffer”) and follows them in constant steps through the image until these rays intersect with the depth buffer again. Instead of taking constant-sized steps, AMD FidelityFX SSSR builds on an industry-leading algorithm that searches the rendered image in a hierarchical manner. This allows for larger and fewer steps on average, increasing performance of the search and quality of the final image.

To support glossy reflections, this AMD FidelityFX effect jitters the reflection rays to create the sense of surfaces with varying roughness. However, that approach inherently introduces noise. Thus, AMD FidelityFX SSSR comes with a high quality denoiser specifically optimized for the AMD RDNA™ architecture. The denoiser combines the results from multiple frames to create a noise-free image. Furthermore, it allows the ray count to decrease based on surface roughness, thus further speeding up screen space traversal. 

Library features

  • Hierarchical depth buffer traversal kernel.
  • Confidence based hit validation.
  • Support for Direct3D®12 API and Vulkan® API.
  • Shaders written in HLSL utilizing SM 6.0 wave-level operations.

Sample application

A sample application is provided for Direct3D®12 and Vulkan® showing the following features:

Shadow Denoiser

AMD FidelityFX™ Denoiser

AMD FidelityFX Denoiser is a set of denoising compute shaders which remove artefacts from reflection and shadow rendering.

Comparison

Chess pieces without SS reflections Chess pieces with SS reflections

How it works

Reflection result processed by AMD FidelityFX Denoiser:

Screen Space Reflections
Environment Lookup
Combined Result

Additional resources

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)
  • This is a small-yet-breaking update to our SSSR technique created to support our hybrid reflections sample, which shows you how to mix ray traced reflections and SSSR.

Vulkan® support.

  • Initial release

Useful information

FidelityFX Testimonials

Find out what developers are saying about AMD FidelityFX.

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.