Real-time fur over arbitrary surfaces
Symposium on Interactive 3D Graphics (I3D) 2001, 227-232.
Rendering of shells and fins over general meshes.
Abstract:
We introduce a method for real-time rendering of fur on surfaces of arbitrary topology. As a pre-process,
we simulate virtual hair with a particle system, and sample it into a volume texture. Next, we
parameterize the texture over a surface of arbitrary topology using "lapped textures" — an approach
for applying a sample texture to a surface by repeatedly pasting patches of the texture until the surface
is covered. The use of lapped textures permits specifying a global direction field for the fur over the
surface. At runtime, the patches of volume textures are rendered as a series of concentric shells of
semi-transparent medium. To improve the visual quality of the fur near silhouettes, we place "fins" normal
to the surface and render these using conventional 2D texture maps sampled from the volume texture in the
direction of hair growth. The method generates convincing imagery of fur at interactive rates for models
of moderate complexity. Furthermore, the scheme allows real-time modification of viewing and lighting
conditions, as well as local control over hair color, length, and direction.
Hindsights:
Don't you just feel like "shaking the bunny" to see its hair move?
It can be done by locally shearing the shells according to a
simple physical simulation (see
here).
The "fin" rendering introduced in this paper has become popular in games,
and has become more efficient with geometry shaders in DirectX 10.