We have shown that our system provides efficient simulation of
curly hair while being able to realize our artistic goals. This was
achieved through several key contributions. Our novel smoothed
bending formulation produces visually pleasing bends and twists
while removing unwanted twist discontinuities present in physical
rods. Our nonlinear core spring force resists unwinding and maintains
curl shape, without making the hair unnecessarily stiff, even
during extreme motion. The hair-hair contact pruning allows us to
efficiently parallelize the simulation by reducing the interprocessor
communications while still achieving plausible dynamics. Our simulator
is in use on a full-length feature film on a range of characters
and hair styles and has proven to be an efficient and indispensable
part of our production process.
The main limitation of our work is due to our hair-hair contact pruning,
we may actually miss contacts between the hairs. In all but a
few extreme cases (such as when a character flips all of the hair
from one side of their head to another), we have not seen any artifacts
from this as the effect of this contact is usually handled by one
of the contact pairs that have not been pruned. In the cases where
pruning will cause a problem (such as the aforementioned hair flip),
we use our pruning controls to reduce the amount of pruning, trading
speed for accuracy.
Although our simulator is quite efficient, we hope to find ways to
improve its performance. In future work, we plan to look at other
schemes for processor assignment from the contact graph. This
may be even more important as we also plan to examine the effects
of implementing our system in a heterogeneous environment
(across several CPUs, GPUs, etc.) as the communication costs between
those devices will vary.