A Practical Model for Hair Interaction

A Practical Model for
Hair Interaction
Introduction
¡
¡
l
l
Outline
¡
¡
¡
l
l
¡
¡
¡
!
Hair modeling
¡
¡
" !
#
$
¡
!
l
l
%
$
Hair modeling
¡
$
Single hair strand dynamics
¡
¡
&
&
'
!
¡
¡
"
l
l
!
(
$
)
*
+
,
Strand-Object collision
$
¡
'
$
¡
$
'
¡
!
'
Strand-Object collision
¡
$ $
l
$
l
p2 ' = p1 '+v'
.)
.
(./
/
.
v' = L21
v
v
/
&
!
Hair-Hair interaction
¡
l
"
l
$
$
l
l
l
l
(
(
#
0
0
!
1
Static Links
Dynamic interactions
¡
%!
'
2
3
¡
!
'
¡
3
!
3
Dynamic interactions
2
¡
$
3
!
¡
!
3
¡
"
2
3"
$
3
Dynamic interactions
¡
l
4
!
l
l
%
!
!
$
Dynamic interactions
"6
"0
" 0" 7
"/
5
"
".
7+ 3
5,8
9
9
59
9
Dynamic interactions
¡
"
2
F fric = − µFN
v rel, in plane
v rel, in plane
!
¡
3
2
¡
%
:
1
3
Fs = kd a,b (1 − Ta ⋅ Tb )
%
$
:
$
33
3
Dynamic interactions
¡
¡
"
$
:
;
2
<
2
-
(
3
1
<
Hair interpolation
¡
#
¡
&
$
Hair interpolation
!
¡
+ :=.,
+ =.:=.,
P ( x + dx, y + dy ) =
+ =
+ :,
:=
(1 − dx)(1 − dy ) P ( x, y + 1)
+ (1 − dx)dyP( x, y + 1)
+ dx(1 − dy ) P ( x, y + 1)
+ dxdyP( x, y + 1)
,
+ =.:,
Hair interpolation
¡
l
l
;
$
.>
.?
$
p(t ) = ( 2t 3 − 3t 2 + 1) p0 + (t 3 − 2t 2 + t )m0 + (−2t 3 + 3t 2 ) p1 + (t 3 − t 2 )m1
>
.
Hair interpolation
¡
l
l
;
$
.>
.?
$
p(t ) = ( 2t 3 − 3t 2 + 1) p0 + (t 3 − 2t 2 + t )m0 + (−2t 3 + 3t 2 ) p1 + (t 3 − t 2 )m1
.
>
Hair interpolation
¡
l
l
;
$
.>
.?
$
p(t ) = ( 2t 3 − 3t 2 + 1) p0 + (t 3 − 2t 2 + t )m0 + (−2t 3 + 3t 2 ) p1 + (t 3 − t 2 )m1