NVIDIA RTX is a ray tracing technology that brings real-time, cinematic-quality rendering to content creators and game developers.
NVIDIA RTX is the product of 10 years of work in computer graphics algorithms and GPU architectures. It consists of a highly scalable ray tracing technology running on NVIDIA Volta architecture GPUs. Developers can access NVIDIA RTX technology through the NVIDIA OptiX application programming interface, through Microsoft’s new DirectX Raytracing API and, soon, Vulkan, the new generation, cross-platform graphics standard.
Conventional 3D rendering has used a process called rasterization since the 1990’s. Rasterization uses objects created from a mesh of triangles or polygons to represent a 3D model of an object. The rendering pipeline then converts each triangle of the 3D models into pixels on a 2D screen. These pixels may then be further processed or “shaded” before final display on the screen.
Ray tracing, which has long been used for non-real-time rendering, provides realistic lighting by simulating the physical behavior of light. Ray tracing calculates the color of pixels by tracing the path that light would take if it were to travel from the eye of the viewer through the virtual 3D scene. As it traverses the scene, the light may reflect from one object to another (causing reflections), be blocked by objects (causing shadows), or pass through transparent or semi-transparent objects (causing refractions). All of these interactions are combined to produce the final color of a pixel that then displayed on the screen.
While ray tracing has long been "the future" or holy grail of computer rendering, we are now seeing the advent of consumer GPUs which have enough compute capability to do interesting ray tracing workloads in real-time. It is expected that many use cases will employ hybrid renderers which combine rasterization and ray tracing, so tight integration with an existing rendering API is very important. For more information on this topic please see our blog on the left.
10 years ago OptiX introduced the programmable shader model for ray tracing (OptiX GPU Ray Tracing ACM paper). NVIDIA has continued to invest in hardware, software and algorithms to accelerate that programming model on our GPUs.
The OptiX API is an application framework that leverages RTX Technology to achieve optimal ray tracing performance on the GPU. It provides a simple, recursive, and flexible pipeline for accelerating ray tracing algorithms. Additionally the post processing API includes an AI-accelerated denoiser, which also leverages RTX Technology. The post processing API can be used independently from the ray tracing portion of the pipeline.
“With NVIDIA Quadro GV100 GPUs and RTX, we can now do real-time ray tracing. It’s just fantastic!”
Sébastien Guichou, CTO of Isotropix
Microsoft's DirectX Raytracing (DXR) API is a natural extension of DirectX 12. It fully integrates ray tracing into DirectX, and makes it a companion (as opposed to a replacement) to rasterization and compute. NVIDIA partnered closely with Microsoft to enable full RTX support for applications that use DXR.
If you just want to see what DirectX Raytracing can do for gaming, check out the videos from Epic, Futuremark and EA, SEED. To learn about the magic behind the curtain, keep reading. For the last thirty years, almost all games have used the same general technique—rasterization—to render images on screen...
“Ray tracing is the future, and it always will be!” has been the tongue-in-cheek phrase used by graphics developers for decades when asked whether real-time ray tracing will ever be feasible...
Read More: Introduction to NVIDIA RTX and DXR
NVIDIA also announced the GameWorks SDK will add a ray-tracing denoiser module. This suite of tools and resources for developers will dramatically increase realism and shorten product cycles in titles developed using the new Microsoft DXR API and NVIDIA RTX.Learn More about GameWorks Ray Tracing
“DirectX Raytracing is the latest example of Microsoft’s commitment towards enabling developers to create incredible experiences using cutting-edge graphics innovations. Our close partnership with NVIDIA on DirectX Raytracing and NVIDIA’s RTX technology brings real time ray tracing closer than ever for millions of gamers on Windows.”Max McMullen, development manager, Windows Graphics and AI at Microsoft
NVIDIA is developing a ray-tracing extension to the Vulkan cross-platform graphics and compute API. Available soon, this extension will enable Vulkan developers to access the full power of RTX. NVIDIA is also contributing the design of this extension to the Khronos Group as an input to potentially bringing a cross-vendor ray-tracing capability to the Vulkan standard.
More details on the NVIDIA Vulkan ray tracing solution are being covered at the GTC 2018 session: S8521 - NVIDIA RTX – Enabling Ray Tracing in Vulkan.