#define HEADERSTYLE style="background-color: rgb(125,164,239);"
Ingo Wald - Current Research Interests
Realtime Ray Tracing
I am interested in all aspects of realtime ray tracing. Though my main focus is
on developing (Interactive) Software Ray Tracers like OpenRT
or DynRT (see below), I have also been involved in the SaarCOR project, and are also currently
involved in another hardware ray tracing project at the University of Utah.
Ray Tracing Dynamic Scenes
In Software-based ray tracing, I'm mostly interested in designing ray tracers
to be faster than their predecessors, often with parallel and distributed
execution in mind. While OpenRT was designed with an emphasis on
flexibility, stability, and usability for day-to-day applications in
Visualization and Virtual Reality (it's the main "workhorse"), I've recenly
concentrated in highly optimized packet-/frustum-based ray tracers that are
designed to provide higher performance than OpenRT, but which are obviously
less flexible. The eventual goal of this is to enable the scenario of "realtime
ray tracing on everybody's desktop", in particular the use of realtime ray
tracing for the next-generation of computer games, and - in the long run - to
make realtime ray tracing be a standard technique in computer graphics and
visualization. Part of that research included
- Ray-tracing animated scenes using Dynamic Bounding Volume
Hierarchies, a system that uses BVHs to achieve ray tracing performance
that is competitive with the fastest kd-tree or grid based systems.
- Coherent Grid Traversal, in particular for ray tracing
dynamic scenes at frame rates competitive with the fastest known ray
tracers. This reserach also included a new algorithm for scalable parallel grid
building, as well as applying CGT to visualizing large, time-varying MPM
datasets and volume/isosurface datasets.
Using Realtime Ray Tracing for Visualization and VR Applications
In addition to these more basic research issues, we're also using realtime ray
tracing to solve severeal real-world research and visualization problems (see
below).
In particular, we've enabled ray tracing to be used to deliver real-time ray
tracing based Virtual Reality that can equip typical VR applications with ray
traced (and often physically correct) effects.
For example, we've worked on
- Ray-tracing for Virtual Reality Applications, in particular,
simulating accurate reflections and shadows, complex glass bodies (headlights),
car paint, and supporting freeform surfaces.
- Measuring and Rendering of real-world car paint
[some images]
[web site]
- High-quality precomputed global illumination, including support
for caustics, bidirectional texture functions, highly complex geometry,
etc. (only available as a Technical Report).
[some images]
- Ray-tracing for Visualizing massively complex engineering
datasets, including ray tracing for everyday, real-world use in several of
the car industry's VR centers (usually used for photorealistic VR of 10-20
million triangle cars), and for visualizing the 350 million triangle Boeing 777
model.
Photorealistic Image Synthesis and Physically-correct Lighting
Simulation
Before I did my PhD, I did worked with
Alexander Keller
at the University of Kaiserslautern (where I did my masters thesis on Photorealistic Rendering
using the Photon Map, and where I helped out in adding some features to
Alex's renderer.
I am still working also on offline lighting simulation, but today concentrate
mostly on techniques that
allow for interactive frame rates (usually involving some of our interactive
ray tracers, and potentially parallel rendering on clusters).
Interactive Global Illumination
In the coarse of my PhD, I've worked mostly on interactive lighting simulation,
for which we realized several projects (all based on OpenRT)
- Instant Global Illumination,
with extensions to instant global
illumination in highly complex scenes, and including design of an even faster,
particularly packet tracing-based
variant of this method.
- Realtime Photon Mapping, which Johannes Guenther realized (under my
supervision) in the coarse of his masters thesis, and of which we also made a
rendering symposium paper.
- High-quality precomputed global illumination, including support
for caustics, bidirectional texture functions, highly complex geometry,
etc. (only available as a Technical Report).
[some images]
Parallel and Distributed Computing (in particular on PC
clusters)
Though ray tracing becomes faster by the day, for high-quality ray tracing or global
illumination at interactive rates a single PC usually still is not sufficient,
yet.
Though we currently focus mostly on achieving high performance on mid-range
multi-core SMP machines,
some applications demand the aggregate compute power of dozens of (multi-core) CPU.
To this end, we've developed OpenRT such that it can run transparently on a
cluster of PCs. Using sophisticated and highly optimized communication,
distribution, and load balancing methods, this usually works transparently to
the application.
Virtually all of our OpenRT-based projects can be run in parallel cluster mode,
including the Realtime Photon Mapping, Instant Global Illumination, and
precomputed global illumination methods. OpenRT's parallelization
infrastructure is also being used to provide interactive frame rates on
high-resolution PowerWalls, in particular in "Photorealistic Virtual Reality"
applications in the car, engineering, and aerospace industry.
Multiresolution methods (in particular for point-based and
volume/isosurface data)
Though ray tracing can well handle even highly complex scenes, massively
complex (and/or time-varying) models still require huge amounts of memory,
often lead to quality problems (aliasing, flickering) if the full-resolution
models are being ray cast, and are problematic for coherence-based packet- and
frustum-based ray tracers. Multiresolution methods provide an elegant solution
to all of these problems, and are particularly powerful for ray tracing, which
can chose the appropriate resolution on a per-ray basis.
I'm particularly interested in multiresolution methods for huge point-based
models, as well as for large time-varying volume- and isosurface data sets.
Interactive Visualization of Massively Complex (and/or
time-varying) data sets)
One of the biggest advantages of ray tracing is its logarithmic dependence on
model complexity, which makes it highly useful for masssively complex scenes.
In particular, we've worked on
- Interactive Visualization of the 350 million triangle Boeing 777 model
- Ray Tracing based Virtual Reality for complex NURBS models
- High-Quality (precomputed) Global Illumination in highly complex engineering models
- Interactive Global Illumination in Highly Complex Environments
- Ray tracing of huge isosurface data sets
- Interactive Rendering of massively complex outdoor scenes
- Ray tracing of large, time-varying data sets
- Ray tracing of large, time-varying MPM (mass-point-method) datasets
Hierarchical Index Structures and Efficient Traversal Algorithms
To achieve realtime performance, ray tracing must use the most efficient and
most
advanced acceleration data structures that can be devised.
I am interested in all kinds of data structures, traversal algorithms, and
intersection methods for different primitives (including triangles, implicit
surfaces, bilinear patches, point-based surfaces, freeform surfaces etc) that
can help in accelerating ray tracing. I am particularly interested in
developing new, packet- and frustum based data structures and algorithms.