Home » Blogs » AMD Capsaicin Framework release

Introducing AMD Capsaicin Framework - our ARR Research Framework which includes our GI-1.0 sample

Matthew Oliver
Matthew Oliver

Matthew Oliver is a Senior Software Engineer with AMD’s Advanced Rendering Research group working on next generation graphics architectures and techniques. His research areas include development and analysis of high-quality rendering algorithms for both real-time and offline graphics workloads.

We are releasing our Direct3D12-based research framework called AMD Capsaicin Framework!

AMD Capsaicin Framework is our internal research framework for real-time graphics which we have been using to develop and test new and upcoming rendering algorithms. The first of which is our real-time Global Illumination solution GI-1.0 that is also being releasing as part of this announcement – more on this later!

What is AMD Capsaicin Framework?

AMD Capsaicin Framework is our new rendering research framework which is easy-to-use, flexible, and designed for fast prototyping and development of real-time rendering research. It is built around creating simple abstractions over complex low-level hardware implementation details to allow developers to focus on writing algorithms instead of dealing with complex API specifics. The framework makes efforts to ensure these abstractions are performant, but the priority is rapid developer iteration and debugging. AMD Capsaicin Framework is therefore not intended to be a high-performance product development tool.

A key concept within AMD Capsaicin Framework is the ability to support multiple different research implementations and multiple concurrent developers independently working within the code base. To enable this, the framework uses a modular design that allows for different components to be independently developed and then combined/reused in different ways. This flexibility allowed us to quickly iterate over various rendering pipelines, which was key to the development of the GI-1.0 algorithm.

Out of the box, the framework includes many useful HLSL functions for material sampling and evaluation, common math functions, light sampling and evaluation, spherical harmonics, random number generation, and more. Each of these can be used to quickly create new rendering algorithms and techniques. Speaking of techniques, the framework exposes pre-built techniques than can be mixed and matched as needed to create new render chains. Some of the stock components include Visibility Buffer generation, Temporal Anti-Aliasing (TAA), Screen-Space Global Illumination (SSGI), Light Sampling, Ray Tracing Acceleration structure building, Tone Mapping, glTF scene loading and more.

AMD Capsaicin Framework is still in its infancy and many areas are still very much ‘Work in Progress’ so expect more releases in the future as we continue to improve the framework and release some of our new algorithms and techniques – watch this space for more!

GI-1.0 – Global Illumination

Also, included in this AMD Capsaicin Framework release is an implementation of the GI-1.0 technique from our research paper.

Real-time global illumination is a key enabler of more dynamic and physically realistic worlds in games or any other applications with real-time constraints. The GI-1.0 technique takes advantage of hardware-accelerated ray tracing in modern GPUs but intelligently uses additional lighting structures to reduce the number of required rays and enable evaluation of indirect lighting entirely at runtime on current hardware.

This technique is what we use to estimate indirect lighting in real-time within the framework. It is based on a two-level radiance caching structure that allows you to reduce the sampling rate for increased performance while making the most of every ray through better sampling efficiency.

Check out the paper for more details or see the corresponding GDC presentation (YouTube link) for more.

Path Tracer

AMD Capsaicin Framework allows you to swap between renderers at runtime so, in addition to the real-time GI-1.0 renderer, we also include a renderer implementation for a GPU-accelerated reference Path Tracer.

Path Tracer1

Path Tracer2

Getting AMD Capsaicin Framework and GI-1.0

If you are interested in seeing the GI-1.0 algorithm at work or wanted to play with the new Capsaicin framework, you can get it from the product page. More details about the framework architecture as well as build instructions are included inside the README file.

Matthew Oliver
Matthew Oliver

Matthew Oliver is a Senior Software Engineer with AMD’s Advanced Rendering Research group working on next generation graphics architectures and techniques. His research areas include development and analysis of high-quality rendering algorithms for both real-time and offline graphics workloads.

Enjoy this blog post? If you found it useful, why not share it with other game developers?

You may also like...

Getting started: AMD GPUOpen software

New or fairly new to AMD’s tools, libraries, and effects? This is the best place to get started on GPUOpen!

AMD GPUOpen Getting Started Development and Performance

Looking for tips on getting started with developing and/or optimizing your game, whether on AMD hardware or generally? We’ve got you covered!

GPUOpen Manuals

Don’t miss our manual documentation! And if slide decks are what you’re after, you’ll find 100+ of our finest presentations here.

AMD GPUOpen Technical blogs

Browse our technical blogs, and find valuable advice on developing with AMD hardware, ray tracing, Vulkan®, DirectX®, Unreal Engine, and lots more.

AMD GPUOpen videos

Words not enough? How about pictures? How about moving pictures? We have some amazing videos to share with you!

AMD GPUOpen Performance Guides

The home of great performance and optimization advice for AMD RDNA™ 2 GPUs, AMD Ryzen™ CPUs, and so much more.

AMD GPUOpen software blogs

Our handy software release blogs will help you make good use of our tools, SDKs, and effects, as well as sharing the latest features with new releases.

AMD GPUOpen publications

Discover our published publications.