Yesterday, Nvidia announced the newest generation server-class Quadro graphics processors, the Quadro RTX family, which can handle ray tracing in real time. Nvidia will tell you that ray tracing is the holy grail of graphics rendering technology, but what, exactly, is it? And why is it so important?
To put it simply, ray-tracing is a rendering technique that produces photorealistic graphics with true-to-life lighting and shadow formations. The process accounts for the physical properties of rendered objects and their material composition to accurately simulate how light interacts with them, including the level of light reflection, refraction or absorption.
How it Works
The ray-tracing rendering engine maps the trajectory of the light rays that reach the viewport (read: your eye) by working backwards and casting rays—one for each pixel of your display-- in a straight line from the viewport and capturing the point where the rays intersect with a digital surface. The material properties of the object’s surface, such as the color, reflectiveness, and opacity, inform the color of the object and how it interacts with light rays. Because the rays propagate from your viewport, the lighting and shadows interact naturally when you change the viewing angle.
Ray tracing calculates how light rays would bounce off surfaces. It also determines where shadows would form, and whether light would reflect from another direction to illuminate that space. As a result, ray-traced graphics can produce shadows with soft, smooth edges—especially when there’s more than one light source in the scene.
Ray tracing also has the distinct advantage of being able to simulate transparent materials such as glass or water, and how light refracts when it passes through such objects.
No Rasterization, No Shaders
Traditional computer graphics rely on a technique called rasterization, which converts 3D rendering into a 2D output for your monitor. Raterized graphics then rely on complex shaders to give the scene a sence of depth. With ray-traced graphics, the depth is an integral part of the scene and you don’t need a shader to bring it to life.
Ray tracing technology isn’t new, and we can almost guarantee that you’ve encountered ray-traced graphics before. Hollywood uses ray tracing in movies to blend digital special effects seamlessly with live-action film. However, ray tracing is extremely computationally intensive, and it can take days or even weeks to process those scenes with a traditional render farm, which is why ray-traced graphics for games exist only in pre-rendered cut-scenes.
Nvidia has been pushing ray-tracing technology for at least a decade. In 2008, it acquired a ray-tracing company called RayScale, and two years later at Siggraph 2010, it showed the first interactive ray-tracing demo running on Fermi-based Quadro cards. After witnessing the demo first-hand, we surmised that we would see real-time ray-tracing capability “in a few GPU generations.”
A few generations turned into six generations, but Nvidia finally achieved real-time ray tracing with the new Quadro RTX lineup. When the company releases gaming-class GPUs that support real-time ray tracing, which could happen as soon as next week, we should see a big improvement in graphics fidelity in future video games. Real-time ray tracing is a foundational step towards game graphics that are indistinguishable from the real world around us.