DirectX 12 DXR and Nvidia RTX bring real-time ray-tracing to 3D engines

Real-time ray tracing has been the elusive Holy Grail of computer graphics as long as there have been computer graphics. Ray tracing has long been used in films and other places where it's okay to take a few hours or more to render a single frame, but historically the technology's just been too demanding to use in games. That said, computers have gotten awfully fast in the past couple decades. Microsoft and Nvidia both announced new software at GDC that could help bring real-time ray tracing to upcoming games: DirectX 12 DXR and Nvidia RTX.

This is not a photograph.

If you're not familiar with ray tracing, you can pore over this article from Nvidia that explains the difference between ray tracing and common rasterization methods used in games. The short version is that rather than approximating or outright faking environment lighting and shadowing, ray tracing calculates lighting, reflections and refractions in a scene by drawing virtual rays that realistically simulate the way light interacts with objects. The technology is hardly new—we used POV-Ray as a CPU benchmark in some of our oldest CPU tests, and we still use Corona as a useful test today.

Microsoft's new technology is DirectX 12 DXR, a suite of functions that can be used to accelerate ray tracing on modern GPUs. The company says that DXR is supported on all current hardware, so you don't need specialized gear to enjoy the benefits. Microsoft also notes that DirectX handles the ray-tracing work like a compute workload. Because of that characteristic, it's possible and even expected that developers will use ray tracing only for some elements in a scene while the rest of it is rasterized normally.

Along similar lines, Nvidia announced RTX. The company doesn't go into too much detail on what RTX specifically entails, but does say it's meant to accelerate ray tracing on Volta GPUs. The only such chip in the wild today sits atop the Nvidia Titan V, so it's not impossible that this announcement is subtle foreshadowing for a forthcoming series of GeForce cards based on Volta. RTX is compatible with Microsoft's DXR, so apps that use DXR on a compatible system will automatically make use of RTX if the appropriate Nvidia hardware is in place.

The demo above is from Remedy Entertainment's Northlight engine, and you might notice some noise in the video. Ray tracing can be implemented in multiple ways, but typical "path-tracing" implementations like Brigade have heavy noise in their output due to the limited number of rays that they can cast in a single real-time frame. Last year, Nvidia showed off an AI-based ray-tracing denoiser that showed very promising results. The company says that GameWorks now includes such a denoiser—possibly the same one in the linked demo. Nvidia also goes on to say that the next version of GameWorks will include further enhancements for ray-traced rendering.

Both companies say that a few big names in the games industry are working with the new ray-tracing technologies. Alongside Remedy, the list includes 4A Games, EA Games, Epic Games, and Unity. That means that before long, game developers using the Unreal, Unity, or Frostbite engines should be able to experiment with DXR and RTX themselves. 

Tip: You can use the A/Z keys to walk threads.
View options