AMD’s Radeon Rays 4.0 Announced as Closed Source, Then Mostly Opened Again After Backlash

May 16, 2020

Mere days after the relaunch of the GPUOpen program featuring new tools and an expanded FidelityFX suite, AMD also launched the 4.0 version of Radeon Rays.

The ray intersection acceleration library (formerly known as FireRays) is part of the AMD ProRender software suite. However, it could previously only run on the CPU, which was quite the limitation. Now, with the first RDNA2 AMD GPUs already confirmed to introduce hardware support for ray tracing, Radeon Rays 4.0 finally introduces BVH optimization specifically for GPU access alongside requiring one of the major low-level APIs: Microsoft's DirectX 12, Khronos' Vulkan, and Apple's Metal. It also supports Heterogeneous-Compute Interface for Portability (HIP), which is AMD's C++ parallel computing platform (the equivalent of NVIDIA's CUDA).

AMD Navi 22 “Navy Flounder” RDNA 2 GPU With 40 CUs, 2560 Cores & 192-bit Memory Bus Spotted, Could Be Featured Under Radeon RX 6700 / RX 6800 Series

New features in Radeon Rays 4.0

Custom AABB

Guide the construction of the Bounding Volume Hierarch (BVH) by providing a custom AABB hierarchy for your scene.

GPU BVH Optimization

Optimizes the Bounding Volume Hierarchy (BVH) specifically for efficient GPU access.

New APIs

Select from several different API backends to make sure Radeon Rays 4.0 can integrate seamlessly with your existing application.

The new release does drop support for Open CL, though. Most importantly, the Radeon Rays 4.0 release was not open-source, unlike the previous ones.

Following the complaints of several users, AMD decided to partially reverse this decision. Here's what Brian Savery, Product Manager for ProRender, wrote the following message on the AMD subreddit:

We have reviewed this internally and will be making the following changes: AMD will make Radeon Rays 4.0 open source, however, specific AMD IP will be placed into libraries and have source code available for the community via SLA.

As u/scottherkleman mentioned in the thread about the (amazing looking) Unreal 5 demo, we are committed to providing common ray tracing libraries, not locked down to a single vendor. This is the entire point of Radeon Rays, and while offering common libraries with a permissive license is good, based on your feedback we can improve that offering with source code.

So please keep building awesome things with Radeon Rays, and if you are the type of developer who needs source code to edit immediately, please get in touch through the github page or GPUOpen. Also, the source for 2.0 is available here.

That's certainly good news for those looking to use Radeon Rays, especially as AMD ProRender is now available with an official and free plugin for the Unreal Engine.