Interactive Ray Tracing of Dynamic Scenes Using BVHs

Christian Lauterbach, Sung-Eui Yoon, David Tuft, and Dinesh Manocha
University of North Carolina at Chapel Hill

Princess #1 Princess #2 Princess #3 Princess #4

Four different images of a 220 step sequence from a dynamic cloth simulation consisting of 40K triangles. By computing and updating the AABB hierarchy of the deforming model, we are able to achieve 16 frames per second on dual Xeon processors.


We present an efficient approach for interactive ray tracing of deformable or animated models. Unlike many of the recent approaches for ray tracing static scenes, we use bounding volume hierarchies (BVHs) instead of kd-trees as the underlying acceleration structure. Our algorithm makes no assumptions about the simulation or the motion of objects in the scene and dynamically updates or recomputes the BVHs. We also describe a method to detect BVH quality degradation during the simulation in order to determine when the hierarchy needs to be rebuilt. Furthermore, we show that the ray coherence techniques introduced for kd-trees can be naturally extended to BVHs and yield similar improvements. Finally, we compare BVHs to spatial kd-trees, which have been used recently as a replacement for AABB hierarchies. Our algorithm has been applied to different scenarios arising in animation and simulation and consisting of tens of thousands to a million triangles. In practice, our system can ray trace these models at 3-13 frames a second on a desktop PC including secondary rays.

Paper (in 2006 IEEE Symposium on Interactive Ray Tracing) (PDF, 1 MB)


Video (QuickTime Movie, 20 MB)

Click on any of the following images to enlarge:

Bunny Blowing Up #1
Bunny Blowing Up #2

Bunny Blowing Up: Two images show frames from a 113 step animation of a deforming Stanford bunny. We achieve 8 frames per second on average during ray tracing this deforming model with shadow and reflection rays.

Cloth on Bunny Simulation #1
Cloth on Bunny Simulation #2

Cloth on Bunny Simulation: Two shots of a 315 step dynamic simulation of cloth dropping on the Stanford bunny. We achieve 19 frames per second on average during ray tracing of this deforming model.

BART Randomly Moving Triangles #1
BART Randomly Moving Triangles #2

BART Randomly Moving Triangles: Two image shots from 170 steps of a randomly deforming model from the BART deforming data benchmark. We are able to achieve 12 frames per second on average during ray tracing this model with shadow rays.

Geometric Algorithms for Modeling, Motion, and Animation