Wednesday, March 21st, 2018 Posted by Jim Thacker

Videos: See Microsoft’s new DirectX Raytracing in action

Remedy’s demo of DirectX Raytracing in its Northlight engine, running on Nvidia’s high-end Volta GPUs. Microsoft’s new extension of DirectX 12 should make similar effects possible on any DX12 hardware.

Microsoft has announced DirectX Raytracing (DXR), an extension of DirectX 12 that integrates ray tracing into the graphics API as an alternative to traditional rasterisation.

The technology, which will be supported in Unreal Engine and Unity, should make it possible to create more realistic real-time graphics on DX12-capable platforms: currently Windows 10 and Xbox One.

And as a taste of what will be possible, two major game developers have released demos of DXR running on their own engines: Remedy Entertainment’s Northlight (above) and EA’s experimental Halcyon engine.

The realism of ray tracing in real time
Although ray tracing generates more photorealistic output than rasterisation – hence its widespread adoption for offline visual effects work – it is also more computationally demanding.

As a result, real-time applications like games have largely stuck to rasterisation, plus an increasingly unwieldy bag of tricks designed to increase the realism of the output, as set out in this Microsoft blog post.

DirectX Raytracing should make such workarounds unnecessary, leading to more subtle, realistic real-time graphics – at least on hardware powerful enough to support it.

Works on any DirectX 12 hardware, but further GPU acceleration due in future
DXR introduces a range of new concepts into the DirectX 12 API, including a full 3D representation of the environment in a format optimal for traversal by the GPU; a new command list method that forms the starting point for tracing rays; and a set of HLSL shader types, including the ray generation shader itself.

What it doesn’t introduce is a new GPU engine: DXR is designed to run on DX12’s existing graphics and compute engines, so it should be supported on any current DX12 hardware, if only as a fallback.

Beyond that, it’s down to the individual manufacturers to provide hardware acceleration.

Nvidia was first out of the gate, announcing RTX, a new technology that will “power all ray tracing APIs supported by NVIDIA on Volta and future GPUs”.

At the minute, the Volta architecture is confined to high-end workstation and datacenter cards like the Quadro GV100 and Tesla V100 – the closest thing to a gaming card is the $3,000 Titan V.

However, that’s still more concrete than AMD, which has so far only announced that it is “collaborating with Microsoft to help define, refine and support the future of DirectX 12 and ray tracing”.

Pica Pica, a demo created by EA’s SEED research division, shows DirectX Raytracing on the experimental Halcyon engine. EA has announced that its widely used Frostbite engine will also support DXR.

Demos: see real-time ray traced reflectsions, AO, soft shadows, SSS and more
As a teaser for what DXR may mean for gamers, two major devs have released demos of the tech in action.

Remedy Entertainment’s demo (top of story) shows real-time ray tracing in its Northlight engine, used on Quantum Break, while EA’s (above) uses its experimental new Halcyon engine.

Both also use Nvidia’s RTX technology and Volta GPUs, so they’re strictly best-case scenarios.

However, they’re good-looking best-case scenarios, demonstrating a range of capabilities includig ray traced reflections, ambient occlusion, soft shadows, transparency, subsurface scattering and dynamic GI.

According to Nvidia, demos of RTX in use in Unity and Unreal Engine are also due later in the week, so we’ll update once they go online. Benchmarking firm Futuremark has its own DirectX Raytracing demo here.

Updated 22 March 2018: The Unreal Engine demo is now live, and it was worth waiting for.

Created in partnership with ILMxLAB, the 60-second comedy short shows two Star Wars Imperial troopers being sent on a very unfortunate posting, thanks to a bit of careless talk in an elevator.

So when will we see DirectX Raytracing in a commercial game?
As for what may trickle down to commercial titles, and when, AnandTech has an interesting article analysing how long it will be before DXR becomes the norm in games, concluding that while a full transition is “2+ years out”, we might see DXR-driven effects on existing DX12 hardware “as soon as late this year”.

Read more about how DirectX 12 Raytracing works on Microsoft’s developer blog

Read more about how RTX supports DXR on new Nvidia GPUs on NVidia’s developer blog