Designed especially for neurobiologists, FluoRender is an interactive tool for multi-channel fluorescence microscopy data visualization and analysis.
Large scale visualization on the Powerwall.
BrainStimulator is a set of networks that are used in SCIRun to perform simulations of brain stimulation such as transcranial direct current stimulation (tDCS) and magnetic transcranial stimulation (TMS).
Developing software tools for science has always been a central vision of the SCI Institute.
The SCI Institute is honored to host a new Center of Excellence for Interactive Ray-Tracing and Photo Realistic Visualization dedicated to the development of tools for interactively visualizing large-scale datasets on the fly with advanced lighting and material models that help users understand the subtle detail in high-fidelity datasets. The Center of Excellence program is funded by the state of Utah to accelerate the commercialization of promising technologies developed at the state's Universities.

Almost every modern computer comes with a graphics processing unit (GPU) that implements an object-based graphics algorithm for fast 3-D graphics. The object-based algorithm in these chips was developed at the University of Utah in the 1970s. While these chips are extremely effective for video games and the visualization of moderately sized models, they cannot interactively display many of the large models that arise in computer-aided design, film animation, and scientific visualization. Researchers at the University of Utah have demonstrated that image-based ray tracing algorithms are more suited for such large-scale applications. A substantial code base has been developed in the form of two ray tracing programs. The new Center aims to improve and integrate these programs to make them appropriate for commercial use.

boeing01

Interactive transparent rendering of a Boeing 777 generated with the Manta Interactive Ray Tracing system. Dataset provided by Boeing Corporation.

livingroom

A scene from an interactive animation using a predecessor to Manta. An animation product may allow the camera angles, lighting, character position, etc. to be interactively adjusted before final rendering. Final rendering could also be done in the same software system using the Galileo functionality.
A complex geometric model such as that describing a potential airplane design is composed of millions to billions of simple 3-D objects such as triangles or spline patches. Creating a 2-D image out of these 3-D objects is a process known as rendering. In standard algorithms for rendering, each of these primitives is projected to the screen, which (due the immense quantitity) can be slow even with modern GPUs. A ray tracing program reverses this process by taking each pixel and determining what object is seen through that pixel. For large geometric models this turns out to be faster for three reasons: 1) there are fewer pixels than objects, 2) the search for each pixel can be performed very quickly via divide-and-conquer techniques, 3) unlike GPU-based methods, ray tracing can be executed on massively parallel systems. With the exponentially increasing size of geometric models and the emergence of multicore chips from all major manufacturers, the technological trends will only make image-based ray tracing more and more attractive. We believe that there is likely to be a technological shift toward image-based ray tracers in the near future, and this shift will begin for high-end applications such as CAD and film animation.

The primary objective of the new Center is to create a series of licensable products based on the University of Utah's ray-tracing and photo-realistic rendering software. We are focusing on the development and commercialization of two primary software packages, The Manta Interactive Ray Tracing system and The Galileo High Quality Batch Rendering system. Manta focuses on creating interactivity for very-large datasets with high image quality. Galileo creates high-fidelity images such as would be required for virtual prototypes of new products or for final renderings of computer-generated motion pictures.

Manta Interactive Ray Tracer

In 2004, we began development of Manta, formalizing the architecture of the original real-time ray tracer and addressing some of the issues we discovered when trying to make it an interactive program. Manta is designed to be extensible and to accommodate many forms of interactive ray tracing. It is this source code base that we are commercializing in the new Center.

This work has been funded primarily by the Department of Energy funded Center for Simulation of Accidental Fires and Explosions (C-SAFE, PI: David Pershing, Academic Vice President, Co-PI: Steven Parker and others), which has used it extensively for visualization of mullti-gigabyte datasets involving millions of primitives that represent an explosive device in a fire. In addition, it has received funding through the Advanced Visualization Technology Center (AVTC, PI: Charles Hansen, Co-PI: Steven Parker and Claudio Silva), and two NSF grants, and is the focus of a number of submitted grants.


Galileo Batch Rendering System

Highly realistic rendering using ray tracing has its roots in neutron tracing developed for the Manhattan Project in the 1940s. For difficult geometric configurations where accuracy is needed, following individual neutrons through random interactions was found to be the only feasible solution. For predicting the light flow in complex environments, the same basic issues arise, and ray tracing has been the dominant technology for engineering applications. In the 1980s researchers at CalTech, Cornell, Utah, and Pixar developed ray tracing techniques for light transport in complex environments. In the 1990s these techniques were generalized for more difficult configurations where ray tracing was seen as the only feasible approach. In this decade advances have been made to add practical support for measured photometric data as well as geometry from CAD programs used for engineering design.

mountainscape

A computer visualization generated with the Galileo Photo Realistic Rendering software. This image was generated using GIS data from Hogum Crique in the Wasatch-Cache National Forest.

In the last ten years at the University of Utah, there has been a great effort on two problems important for making batch ray tracing practical for engineering design applications. First, we have developed Galileo, a robust infrastructure that allows parallel execution of light transport using path tracing. The design philosophy of this code is that clean operation for very complex models will take priority over efficiency for small models and datasets. In addition, Galileo is a physically-based program that stays faithful to the underlying physics and is thus ideal for predictive applications. A particular strength is that Galileo can use measured photometric properties as well as handle wavelength-based effects such as fluorescence and diffraction. As part of the Center we will add support for polarization, crucial for applications such as cockpit design where much of the light reaching the pilot is polarized, and the image seen through polarized sunglasses can be very different than that generated from an unpolarized simulation.

headlight

A visualization of an automotive headlamp generated with a predecessor to the Manta Intertactive Ray Tracing system. This computer model was generated using the native NURBS output directly from a Computer Aided Design system without the need to transform the model into triangles. This eliminates the time consuming step of translating data from CAD packages to object-based graphics packages and results in a higher quality rendering.

The following properties make these systems very attractive to potential commercial applications:

  • For a number of large datasets, Manta can be hundreds to thousands of times faster than the fastest available object-based GPU implementations.
  • Manta contains algorithms that won a best paper award in 1998 for the novelty of the approach. It was not until 6 years later that object-based GPU implementations achieved the same performance that we achieved in 1998. Since computer hardware has also increased in speed since 1998, the object-based implementation remains years behind for large datasets.
  • Ray tracing can provide a richer appearance than object-based GPU algorithms.
  • Ray tracing affords a drastically simpler mechanism for incorporating new object types and sophisticated lighting models. Despite recent advances in programmability of the GPU, many features may take a skilled programmer months or years to achieve are possible in a ray tracer in a matter of days to weeks.
  • Manta and Galileo are both developed by some of the top researchers in this field.
These two systems provide a powerful, complementary set of technologies. A hybrid combination of these two state-of-the-art systems will produce a system that offers high quality interactive visualization for the world's most challenging problems.