Document 362119

Simulating and Rendering Wet Hair
Wei-Chin Lin, Wei-Kai Liao, Chao-Hua Lee
Problem
Our Approach
Hair and Water
Simulating hair dynamics is one of the most
challenging tasks in computer animation
due to its complexity and required realism.
Especially when hair is influenced by visual
effect elements such as water and fire.
We propose a physically-based model
to capture the characteristics of wet hair.
Wet hair changes its parameters
such as weight and stiffness
dynamically.
We model a hair strand with a series of rigid bodies
connected by joints, and represent the water by a
group of particles with variant radius.
Hair Water
Collision
Previous Works
A fast cohesion process and a
diffusion process are then applied
to wet hair at each time step to
achieve realistic clumping effects.
Cohesion &
Diffusion
Dual-skeleton system
[Ward and Lin 2004]
[Ward et al 2007]
We also introduce a shading
model that produces convincing
appearance for wet hair.
Physically-based rendering
[Gupta and Magnenat-Thalmann 2007]
Shading
The hair model
Particles with randomized radius
Dynamics of Wet Hair
Hair-Water Collision
Wwet
Absorbing Water
wcurrent
= Wdry *(1 +
) *C
wmax
Force of Particles
F = V particle * Fatten
F : force applied to the segment
Wwet : segment weight with water
V particle : the velocity of the colliding particle
Fatten : force attenuation
Wdry : segment weight without water
wcurrent : current wetness
wmax : max wetness
C
Gravity
: pre-defined constant
When a hair segment collides with water particles,
the wetness and the weight of the segment increase.
The segment becomes heavier and its
stiffness changes after absorbing water.
Water-to-hair force F is applied to the segment,
which moves toward the direction of the colliding particle.
Cohesion
Sparse Set of Hair
The Cohesion Process
Vclump = ( Pcenter - Porg ) * w
Vclump : clumping vector
Pcenter : the center of the clump
Porg : the original position before clumping
w : the wetness on the segment
Only a subset of hair is selected to perform the cohesion process
that simulates the clumping effects.
Virtual Sphere for Clumping
A virtual sphere with variable
radius controlled by the
wetness is placed at each
joint to represent the affecting
space of the clumping force.
The radius of the virtual sphere
on each joint increases when
absorbing water.
The clumping force brings
the affected joints together
when the virtual spheres
make collide.
As the wetness increases,
the virtual spheres become
larger and collide with other
spheres.
The simulation result after
cohesion and diffusion
processes.
Shading
Diffusion
The Diffusion Process
The wetness on each hair segment is used to modify primary highlight, secondary
highlight and transmission of the hair shader.
Additional parameters are provided to artists for further controlling the degree of
wetness.
The vertices moved toward the
center of the clump after applying
the cohesion process.
Cdiff
Move the neighboring joints on
each strand.
Apply the process toward next
neighbor joints on each strand.
D
= 1 - smoothstep (
)
Rdiff
Vdiff = ( Pcenter - Porg ) * Cdiff
Cdiff : diffusion amount
D : distance from the main joint (0~1)
Rdiff : pre-defined diffusion range (0~1)
Vdiff : diffusion vector
Wetness factor = 0.0
Porg : the original position before clumping
Wetness factor = 0.3
Wetness factor = 1.0
Pcenter : the center of the clump
Without diffusion
With diffusion
Results
Future Works
Long Hair
Short Hair
Frame 42
Frame 107
Physically accurate wet hair
rendering
Improvements on clumping for
different types of hair
Interaction with other substances
Frame 75
Frame 42
Gel
Frame 47
Frame 66
Mud
Fire