Home » Blogs » Radeon™ ProRender SDK 3.1.0 introduces bevel shader support, light linking, and much more

Radeon™ ProRender SDK 3.1.0 introduces bevel shader support, light linking, and much more

Picture of Atsushi Yoshimura
Atsushi Yoshimura

Atsushi Yoshimura is a developer and a researcher for advanced rendering techniques for AMD software suites such as Radeon™ ProRender.

We are happy to announce Radeon™ ProRender SDK 3.1.0 is finally available, so let’s introduce the updates and improvements.

New features in Final Renderer (Northstar)

HIP transition

HIP (The Heterogeneous Interface for Portability) has been in development since 2016. HIP provides greater flexibility and capability, such as offline compilation and dynamic linking, meaning HIP applications are able to offer more value on AMD platforms. We first released ProRender with HIP support in Feburary 2022. Since then, we have been polishing the implementation and now the day has come to transition to HIP. In this release, the backend of ProRender switches to HIP from OpenCL™ which is used as a backend in Windows/Linux. Our implementation uses Orochi to load HIP and CUDA APIs dynamically.

Pre-Compiled Kernel

The biggest user benefit from this Orochi (or HIP) backend is that all the kernels used for rendering are all pre-compiled. ProRender does not compile at runtime any more as the ProRender SDK contains pre-compiled binaries. The rendering will start immediately on the GPU which improves usability a lot!

Bevel shader support

Almost all edges of the “Real” shape have some amount roundness. So, we added the functionality of applying roundness as a shader node to the edge of geometry to add more realism without extra polygons. You will see a lot of highlights on the voxel edges in the following image. These are not produced without the bevel shader.

Volume and SSS AOVs

We support several AOVs such as normal, opacity, direct illumination, indirect illumination, etc. In this release we have added two AOVs to capture only volume objects, which users can use for compositing and denoising. The AOVs are “Volume AOV” and “SSS AOV”, which capture heterogeneous volume and subsurface scattering respectively. Note that we also support a metacharacter for volume on LPE (Light Path Expressions) .

Here’s an example use of “Volume AOV”:

Volume AOV

Composited images via Volume AOV:

Volume Composite

Light Linking

Reflecting on feedback from some customers that use non-photorealistic rendering (NPR), we have added transparency and material blending support for toon materials to provide further flexibility. One of the major updates related to NPR is “Light Linking”.

Shading controllability is often preferred over correctness in NPR. Light Linking makes an explicit pair of geometry and light where the light illuminates against only the paired geometry.

The following image demonstrates Light Linking. The five directional lights illuminate the spheres but each light only illuminates a sphere that is linked to the light. It gives users full control of the shading individually for each geometry.

New features in Viewport Renderer (Hybrid Pro)

Faster convergence in a many light scene

As you put more and more lights in your scene, the convergence gets slower and slower. We have added an improved light sampling strategy to accelerate the viewport rendering in Hybrid Pro. Our light sampling strategy (based on a tree data structure) significantly reduces rendering noise. You may worry about the data structure building, but you do not need to wait much to see the first frame after pushing the render button because our build algorithm runs on the GPU.

Here is a comparison of before and after:

We further improved the convergence of viewport rendering using Hybrid Pro with our implementation of Spatiotemporal Reservoir Resampling (ReSTIR) and Spatiotemporal Variance-Guided Filtering (SVGF) techniques.

Here we created a comparison of the methods. Note that all these images are rendered with just 1 spp!

Displacement without tessellation

We have finally added displacement mapping feature in Hybrid Pro too. The approach we took here is different from what’s implemented in Northstar. Our implementation does not do tessellation when you start the rendering, although we can make a highly detailed geometry on the fly as you are going to see soon. This means that there are no time-consuming pre-tessellation steps that are usually required before rendering the displaced geometry. Furthermore, the memory footprint for displacement geometry is negligible.

Displaced geometry can be procedurally generated. We support all material nodes used in RPR materials for our displacement, which lets us interactively create animated displaced geometry to apply displacement to a shape – no need for special settings. You just need to use the rprShapeSetDisplacementMaterial as usual.

Support older GPUs

We also added support for older GPU architectures which do not support hardware ray tracing. Hybrid Pro can now be used with Navi1x, Vega, Polaris, and more!

Feedback

Any feedback? Please feel free to open a conversation here!

Find out more about Radeon ProRender here on GPUOpen.

Picture of Atsushi Yoshimura
Atsushi Yoshimura

Atsushi Yoshimura is a developer and a researcher for advanced rendering techniques for AMD software suites such as Radeon™ ProRender.

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.