Thursday, August 1st, 2019 Posted by Jim Thacker

Modo, KeyShot and Blender to support RTX-based rendering

Rendering in KeyShot. Luxion’s intutive renderer for product visualisation, also used as an external render engine for ZBrush, is due to support hardware-accelerated ray tracing on Nvidia RTX GPUs later this year.

Modo, KeyShot and Blender have become the latest DCC applications to announce support hardware-accelerated ray tracing on Nvidia’s new RTX GPUs.

The new path tracing render engines coming up in KeyShot 9 and an unspecified future version of Modo are both on show at Siggraph 2019, while early source code for the Blender implementation is already available.

What is RTX, and which other applications have supported it?
Nvidia’s current-gen RTX GPUs – the GeForce RTX consumer cards, Quadro RTX workstation cards, and the can’t-quite-make-up-its-mind Titan RTX – have dedicated hardware cores for ray tracing calculations.

Software access to those cores is provided via OptiX, Nvidia’s ray tracing framework, which the firm made free for commercial use in 2017, or via alternative graphics APIs DXR and Vulkan.

Render engines now supporting the RTX platform include Clarisse iFX, which uses it for viewport previews.

For final-quality output, there are alpha or beta implentations in Arnold GPU, OctaneRender, Redshift, and Unreal Engine – the latter primarily as a hybrid rasterisation/ray tracing renderer.

RTX ray tracing is also used for texture baking in both Substance Painter and Substance Designer.

KeyShot: due in version 9 this fall as an alternative to pure CPU rendering
To that list, we can now add Luxion’s KeyShot, used both for product visualisation and as the primary external renderer for ZBrush. RTX support will be available in KeyShot 9, due in “fall 2019”.

According to Luxion chief scientist Henrik Wann Jensen – a sci-tech Academy Award winner for his work on subsurface scattering – the firm had “evaluated GPU rendering for several years”.

“With NVIDIA’s RTX technology [plus] GPUs with over 8GB of memory, and the free OptiX SDK, now is the time to do it,” he said.

KeyShot’s implementation gets around the chief drawback of RTX – that it only works with Nvidia GPUs – by making RTX rendering an either/or choice.

If the software detects a compatible GPU in the user’s system, a new button appears on the KeyShot Ribbon interface to enable GPU rendering; otherwise, the scene renders on the CPU as normal.

Updated 12 November 2019: KeyShot 9 has now shipped. As well as RTX cards, the new GPU ray tracing system works with older Nvidia GPUs. Find more details here.

Modo: a successor to the original CPU-based REYES renderer?
In Modo, the situation is more complex, in that Foundry’s 3D software already has a GPU render engine, in the shape of AMD’s Radeon ProRender, which Foundry began integrating in Modo 13.0 earlier this year.

In its current form, ProRender mainly gets used as an interactive preview during asset development, with Modo’s original CPU renderer used for final-quality output.

Foundry’s new RTX-based path tracing renderer seems to be an alternative to, or replacement for, that REYES-based CPU renderer.

This LinkedIn article posted by Foundry senior product manager Shane Griffith, includes a Q&A with Allen Hastings, the firm’s head of rendering, discussing the differences between the two.

Foundry hasn’t specified in which version of Modo the new RTX render engine will become available, though an early-access release to subscription users is planned “in the coming months”.

Updated 12 November 2019: Foundry has released the new path tracer as part of Modo 13.2.

Again, although the renderer, now named mPath, has “significant gains on RTX hardware”, it doesn’t actually require an RTX graphics card for GPU ray tracing. You can find more details here.

Blender: supported in Cycles as alternative to CUDA or OpenCL
Blender also has two render engines, although they’re already both GPU-accelerated.

Here, the RTX integration is for the older Cycles engine, which already uses Nvidia’s CUDA API for GPU rendering – both the hardware-agnostic OpenCL and CPU rendering are supported for users without Nvidia cards – rather than the new OpenGL-based Eevee engine introduced in Blender 2.80.

As with KeyShot, RTX support is toggleable: users can select OptiX, CUDA or OpenCL, or pure CPU rendering via checkboxes in Blender’s preferences.

In the benchmark tests posted on the Blender Developers Blog, Cycles renders resolve roughly twice as fast when running under OptiX than when running under CUDA on the same Nvidia GPU.

The source code for the new implementation is publicly available, but given that Blender 2.80 only shipped this week, it may be a while before it makes it into an official build.

Read more about RTX ray tracing and denoising in KeyShot 9 on Luxion’s blog

Read more about the upcoming path tracing Modo renderer in Shane Griffith’s Linkedin post

Read more about the upcoming support for RTX-based ray tracing in Cycles on the Blender dev blog