Render Pipeline Shaders SDK

A comprehensive and extensible Render Graph toolkit.

The Render Pipeline Shaders (RPS) SDK provides a framework for graphics engines to use Render Graphs with explicit APIs (e.g. DirectX® 12 or Vulkan®), with a generally optimal resource barrier and memory aliasing scheduler. Its compiler-like architecture is designed to be both controllable and extensible.

Download the latest version - v1.1

This release adds the following features:

  • Linux support for the base library and the RPSL compiler.
  • Support for dynamically loading Vulkan functions.
  • Support for latest stable Agility SDK 1.608.3.
  • Automatic marking of the discard flags to accesses.
  • Bug fixes.

Benefits

  • Enables full-frame scheduling and pipelining optimizations.
  • Handles resource barrier generation and batching.
  • Manages transient resources with optional, automatic memory scheduling and aliasing.
  • Allows constructing render graphs implicitly from a high-level description of the frame. Automatically generates and embeds debug info such as resource and pass names.
  • Compiler-like architecture with extensible frontend, backend and graph-processing pipeline.
    • The frontend API allows users to create custom render graph programming interfaces.
    • Provides reference backend implementations for DirectX® 12 and Vulkan®. (A DirectX® 11 backend is also provided for backward compatibility and demonstration purpose).
    • The backend allows partial customization via a set of runtime callback APIs.
    • Users can also build new runtime backends targeting custom API / RHI layers.
  • Tools for visualizing and debugging resource properties, heap layout, and the graph.
    • Exhaustive and optional debug printing.
    • The visualizer can be integrated into applications as a GUI overlay.

 

Find out more in our blogs

RPS SDK Tutorial

This tutorial demonstrates key RPS SDK API usage, provides an informal introduction to RPSL, and explains how the RPS Render Graph is built.

Requirements

Development system requirements:

  • Windows® 10 21H2 64bit or newer.
  • Building the SDK requires CMake 3.12.1 or newer and a C++11 compliant compiler.
  • Using only the C-API requires a C99 compliant compiler.

Version history

Our other SDKs

AMD Capsaicin Framework

AMD Capsaicin Framework

AMD Capsaicin Framework is a Direct3D12 framework for graphics research which implements the GI-1.0 technique and a reference path-tracer.

AMD Device Library eXtra (ADLX)

AMD Device Library eXtra (ADLX) SDK

ADLX is a modern library designed to access features and functionality of AMD systems such as Display, 3D graphics, Performance Monitoring, GPU Tuning, and more.

Brotli-G SDK

Brotli-G SDK

Brotli-G is an open-source compression/decompression standard for digital assets (based on Brotli) that is compatible with GPU hardware.

HIP RT

HIP Ray Tracing

HIP RT is a ray tracing library for HIP, making it easy to write ray tracing applications in HIP.

Orochi

Orochi

Orochi is a library which loads HIP and CUDA® APIs dynamically, allowing the user to switch APIs at runtime.

Radeon™ ProRender Suite

AMD Radeon™ ProRender is our fast, easy, and incredible physically-based rendering engine built on industry standards that enables accelerated rendering on virtually any GPU, any CPU, and any OS in over a dozen leading digital content creation and CAD applications.

Radeon™ ML

Radeon™ Machine Learning (Radeon™ ML or RML) is an AMD SDK for high-performance deep learning inference on GPUs.

Radeon™ Image Filtering Library

Harness the power of machine learning to enhance images with denoising, enabling your application to produce high quality images in a fraction of the time traditional denoising filters take.

Advanced Media Framework

Advanced Media Framework

The Advanced Media Framework SDK provides developers with optimal access to AMD GPUs for multimedia processing.

D3D12 Memory Allocator

The D3D12 Memory Allocator (D3D12MA) is a C++ library that provides a simple and easy-to-integrate API to help you allocate memory for DirectX®12 buffers and textures.

AMD Display (ADL) Library

The AMD Display Library (ADL) SDK is designed to access display driver functionality for AMD Radeon™ and AMD FirePro™ graphics cards.

AMD GPU Services (AGS) Library

The AMD GPU Services (AGS) library provides software developers with the ability to query AMD GPU software and hardware state information that is not normally available through standard operating systems or graphics APIs.

Vulkan® Memory Allocator

VMA is our single-header, MIT-licensed, C++ library for easily and efficiently managing memory allocation for your Vulkan® games and applications.

TrueAudio Next

AMD TrueAudio Next is a software development kit for GPU accelerated and multi-core high-performance audio signal processing.

Radeon ProRender

Radeon™ ProRender

AMD Radeon™ ProRender is a powerful physically-based path traced rendering engine that enables creative professionals to produce stunningly photorealistic images.

Radeon™ Rays

The lightweight accelerated ray intersection library for DirectX®12 and Vulkan®.

GPUPerfAPI

GPUPerfAPI provides access to GPU Performance Counters. It analyzes performance and execution characteristics of applications using a Radeon™ GPU.

Compressonator

Compressonator is a set of tools to allow artists and developers to more easily work with compressed assets and easily visualize the quality impact of various compression technologies.

LiquidVR™

LiquidVR™ provides a Direct3D 11 based interface for applications to get access to the following GPU features regardless of whether a VR device is installed on a system.