Adaptive Grouping and Subdivision for Simulating Hair Dynamics
Kelly Ward Ming C. Lin
wardk@cs.unc.edu lin@cs.unc.edu
   
   
   

Abstract:

We present a novel approach for adaptively grouping and subdividing hair using discrete level-of-detail (LOD) representations. The set of discrete LODs include hair strands, clusters and strips. Their dynamic behavior is controlled by a base skeleton. The base skeletons are subdivided and grouped to form clustering hierarchies using a quad-tree data structure during the precomputation. At run time, our algorithm traverses the hierarchy to create continuous LODs on the fly and chooses both the appropriate discrete and continuous hair LOD representations based on the motion, the visibility, and the viewing distance of the hair from the viewer. Our collision detection for hair represented by the proposed LODs relies on a family of "swept sphere volumes" for fast and accurate intersection computations. We also use an implicit integration method to achieve simulation stability while allowing us to take large time steps. Together, these approaches for hair simulation and collision detection offer the flexibility to balance between the overall performance and visual quality of the animated hair. Furthermore, our approach is capable of modeling various styles, lengths, and motion of hair.
[ Publications | Videos ]

Publications
[1] Adaptive Grouping and Subdivision for Simulating Hair Dynamics.
Kelly Ward and Ming C. Lin. Proc. of Pacific Graphics, 2003. (PDF)

[2] Modeling Hair Using Level-of-Detail Representations.
Kelly Ward, Ming C. Lin, Joohi Lee, Susan Fisher, and Dean Macri. Proc. of Computer Animation and Social Agents, 2003.
Project Website (PDF)

Videos

Click on the images to view the videos.

Demonstrations

This video shows our adaptive hair grouping as wind blows through the hair. First we show the skeleton models adapting as a result of the wind force. Then, there is a side-by-side comparison of our adaptive grouping technique versus traditional high level hair clustering. Finally we show a final full head of hair with wind blowing through the hair using our adaptive grouping technique.

This video illustrates our hair-hair interaction system. The first simulation shows hair twisted together and when the hair is released the sections of hair unravel using our hair-hair collision detection scheme. We also show the results of the same simulation with no hair-hair collision detection and a side-by-side comparison of them both.

In this video we illustrate our hair-object collision detection system. A brush of hair interacts with a twisted torus. Note the stability of the system and how the hair rests on the torus.

This video shows the dynamic behavior of long straight hair as the avatar moves from side to side. This system uses our adaptive hair grouping and subdivision in order to attain individual strand detail.

This video shows the dynamic behavior of short hair as the avatar moves from side to side. This system uses our adaptive hair grouping and subdivision in order to attain individual strand detail.

In this video we show the behavior of short curly hair blowing in the wind as the camera remains stationary.
This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.
Copyright 2003.

wardk@cs.unc.edu