Kitware Brings Ray Tracing to the Visualization Toolkit

New capability aims to offer more insight into complex data.

Kitware introduced a new capability to the Visualization Toolkit (VTK) to offer scalable, high-fidelity rendering functionality to next-generation high-performance computing platforms.

The capability uses the OSPRay open-source library to interactively ray trace polygonal data sets within VTK to produce images. Similar to a light source that sends out photons, VTK provides visible geometry and color information to the OSPRay ray tracer. The ray tracer then recursively shoots rays into a scene to compute the color of each pixel in the scene.

Ray Tracing with OSPRay in ParaView

Implicit stream tubes show air flow in a visualization made with OSPRay in ParaView.

Kitware developed the ray-tracing capability under the Intel Software Defined Visualization initiative and in close collaboration with Intel and fellow Intel Parallel Computing Center member the Texas Advanced Computing Center (TACC). The new capability complements functionality that already exists in VTK to rasterize images. Accordingly, the VTK development team tightly coupled the processes of ray tracing and rasterizing images in the toolkit.

“This new work improves upon earlier ray-tracing integration efforts like Manta from Los Alamos National Laboratory and pvOSPRay ParaView plugins from TACC,” said David DeMarle, a lead developer of VTK at Kitware. “A significant feature of the new work is that it is hot swappable; users can switch back and forth between ray tracing and rasterizing images at run time.”

The VTK development team tested the new ray-tracing capability in VTK on the Lucy model from Stanford University. The test drew the 28 million triangles of the model to a 720p window. The initial render time of the test on a four-core 2.7 gigahertz i7 processor amounted to 22 seconds, and subsequent render times came in at seven-hundredths of a second. In comparison, when the team rasterized the Lucy model on the same machine, the initial render time with a GeForce GT 650m graphics card amounted to four seconds, and subsequent render times came in at eight-hundredths of a second. Consequent swapping between ray tracing and rasterizing the model did not result in any measurable overhead.

Several high-performance computing platforms will benefit from the new ray-tracing capability in VTK including Trinity. Trinity is a next-generation supercomputer that is in production at Los Alamos National Laboratory. Other examples include commercial as well as research and development applications such as ParaView, 3D Slicer, VisIt, VisTrails, MayaVi, and OsiriX.

The new ray-tracing capability is currently available in master branches of VTK and ParaView. It will soon appear in VTK 7.1 and ParaView 5.1. Also to come, the development team will enable VTK to interactively render volumetric data sets through OSPRay.

“At Los Alamos, we are very excited that OSPRay is integrated with ParaView, and we look forward to applying it to our scientific problems of interest on Trinity,” said James Ahrens, Ph.D, the data science at scale team leader at Los Alamos National Laboratory.

VTK is an open-source, freely available software system for generating three-dimensional computer graphics, modeling, processing images, rendering volumes, and creating scientific and information visualizations. VTK originated as part of the textbook “The Visualization Toolkit: An Object-Oriented Approach to 3D Graphics.” Today, the toolkit employs a quality software process that uses CMake to produce robust code. For more details on VTK and its capabilities, please visit http://www.vtk.org.

Kitware provides support for VTK through custom consulting, training, and documentation resources. To learn how to leverage VTK and expertise in high-performance computing and visualization at Kitware, please contact kitware(at)kitware(dot)com.

Questions or comments are always welcome!