Ray tracing is an advanced computer graphics technique that creates an image by essentially duplicating how light strikes objects, with all of the refractions and reflections that result and that give life and depth to a scene. The technique has been used in computer-generated imagery (CGI) in movies and TV using very powerful rendering systems but has been beyond the capabilities of PC graphics — but that’s changing.
Microsoft announced, in conjunction with the Games Developer Conference (GDC), that DirectX 12 will be receiving ray tracing capabilities via a new DirectX Raytracing (DXR) application programming interface (API). In addition, according to Anandtech, Nvidia will be supporting ray tracing in its Volta GPUs and later, enabling DXR support in their latest hardware.
This is an important development due to its potential impact on how well PCs can create realistic lighting, shadowing, and reflections, which has been limited by the technology in current use. Primarily, that technology involves rasterization, which maps 3D images over 2D spaces and using various tricks to emulate a scene. As the technology has progressed, techniques are being used that are pushing rasterization beyond its limits. That is where ray tracking comes in.
As Microsoft puts it, “Today, we are introducing a feature to DirectX 12 that will bridge the gap between the rasterization techniques employed by games today, and the full 3D effects of tomorrow. This feature is DirectX Raytracing. By allowing traversal of a full 3D representation of the game world, DirectX Raytracing allows current rendering techniques such as SSR to naturally and efficiently fill the gaps left by rasterization, and opens the door to an entirely new class of techniques that have never been achieved in a real-time game.”
Nvidia’s support for DXR on Volta and later means that the hardware will work hand-in-hand with DirectX 12 to make ray tracing a realistic proposition for the PC. The details are quite technical, and you can read about them at the Microsoft blog, but the result is that PC graphics could take on some of the realism that we see in CGI productions. Rasterization will continue to be used where it provides a good experience and ray tracing techniques can be used to supplement it.
A few game engines are already planning to utilize DXR, including Electronic Arts’ Frostbite and SEED, Epic Games’ Unreal Engine, Futuremark’s 3DMark, and Unity Technologies’ Unity Engine. So far, Nvidia has announced its support and we imagine that AMD will not be too far behind, ensuring that the hardware will keep up with the software in making gaming ever more realistic.